/** Shopify CDN: Minification failed

Line 229:10 Expected identifier but found "{"
Line 229:11 Unexpected "{"
Line 229:20 Expected ":"

**/
/* header-css */
.template-suffix-waitlist page-header, .template-suffix-waitlist div#pagefooter, .template-suffix-sleep-of-mind-sales page-header, .template-suffix-sleep-of-mind-sales div#pagefooter, .template-suffix-waitlist .section-announcement-bar, .template-suffix-sleep-of-mind-sales .section-announcement-bar {
    display: none;
}

.template-suffix-sleep-of-mind-sales .custom-header.page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}
.custom-header-wrapper{
    background:var(--bg-color);
    border-bottom:1px solid var(--border-color);
    width:100%;
}

.custom-header{
    max-width:var(--container-width);
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:var(--padding-v) var(--padding-h);
}

.header-logo{
    display:flex;
    align-items:center;
}

.header-logo img{
    width:var(--logo-width);
    display:block;
    height:auto;
}

.header-logo h2{
    margin:0;
    font-size:26px;
}

.header-right{
    display:flex;
    align-items:center;
}

.header-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background:var(--button-bg);
    color:var(--button-color);
    padding:var(--button-padding-v) var(--button-padding-h);
    border-radius:var(--button-radius);
    font-size:.86rem;
    font-weight:600;
    transition:.3s;
    line-height:1;
}

.header-btn:hover{
    opacity:.9;
}

@media screen and (max-width:768px){

.custom-header{
    /* flex-direction:column; */
    gap:16px;
    text-align:center;
    padding:20px;
}

.header-logo img{
    width:var(--mobile-logo-width);
}

.header-btn{
    width:100%;
}
}


/* Footer-css */

.custom-footer{
    background:var(--bg-color);
    padding:var(--padding-top) 20px var(--padding-bottom);
}

.footer-container{
    max-width:var(--container-width);
    margin:auto;
    text-align:center;
}

.footer-awards{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    gap:10px;
    font-size:14px;
    line-height:1.6;
    color:var(--text-color);
}

.footer-awards span{
    color:var(--text-color);
}

.footer-awards .dot{
    opacity:.5;
}

.footer-disclaimer{
    margin-top:28px;
    max-width:640px;
    margin-left:auto;
    margin-right:auto;
    color:var(--disclaimer-color);
    font-size:.8rem;
    line-height:1.65;
}

@media (max-width:768px){

.footer-awards{
    font-size:13px;
    gap:8px;
}

.footer-disclaimer{
    font-size:14px;
    line-height:1.7;
}

}


/* ==========================================
   Limited Edition Banner
========================================== */
section.limited-edition-banner {
    background: radial-gradient(120% 90% at 70% 8%,#FFFEFC,#FCF3EC 48%,#F8E9E1)!important;
}
.sales-hero-grid .cta-wrap {
    justify-content: left;
}
.limited-edition-banner .page-width {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px;
}
.limited-edition-banner{
    padding:60px 0;
    overflow:hidden;
}

.limited-edition-grid{
    display:grid;
    grid-template-columns:1fr 520px;
    gap:100px;
    align-items:center;
}

.limited-content{
    max-width:700px;
}

.limited-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 22px;
    border: 1px solid #E6D6C9;
    border-radius: 40px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #C09568;
    margin-bottom: 22px;
    text-transform: uppercase;
}

.limited-top-text {
    font-size: 1.04rem;
    line-height: 1.5;
    color: #a98a55;
    font-style: italic;
    font-family: 'Fraunces';
    margin-bottom: 25px;
    width: 400px;
}

.limited-title{
    margin:0 0 25px;
}

h1.limited-title {
    margin: 0;
    font-size: 3rem;
    line-height: 1.05;
    font-family: 'Fraunces';
    font-weight: 500;
    color: var(--heading-color);
    color: var(--text-color);
    width: 600px;
}
.limited-title p {
    margin-bottom: 30px;
}
.limited-description{
    margin-bottom:22px;
}

.limited-description p{
    margin:0;
    color:{{ section.settings.text_color }};
    font-size:18px;
    line-height:1.6;
}

.limited-highlight {
    font-size: 15px;
    line-height: 1.6;
    color: #2e2a48;
    font-style: italic;
    font-weight: 600;
    margin-bottom: 35px;
}

.limited-contact-form{
    width:70%;
}

.limited-form-row{
    display:flex;
    gap:16px;
    margin-bottom:18px;
}

.limited-input{
    flex:1;
    height:58px;
    border:1px solid #E7DDD4;
    border-radius:16px;
    background:#fff;
    padding:0 18px;
    font-size:18px;
    color:#36304f;
    outline:none;
    transition:.3s;
    box-sizing:border-box;
}

.limited-input::placeholder{
    color:#A7A1B4;
}

.limited-input:focus{
    border-color:#2F294B;
}

.limited-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 55px;
    padding: 0 30px;
    border: none;
    border-radius: 40px;
    background: #2F294B;
    color: #fbf5ef;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: .3s;
}
input.limited-input {
    border-radius: 13px;
    padding: 10px;
    height: 50px;
}
.limited-button:hover{
    opacity:.9;
}

.limited-form-success{
    margin-bottom:20px;
    color:#2e7d32;
    font-weight:600;
}

.limited-giveaway {
    margin-top: 22px;
    margin-bottom: 40px;
    color: #A98A55;
    font-size: 15px;
    font-weight: 700;
}

.countdown{
    display:flex;
    gap:15px;
    margin-bottom:35px;
}

.count-box {
    width: 78px;
    height: 88px;
    background: #fcf7f1;
    border: 1px solid #ede3d8;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 25px rgba(0,0,0,.04);
}

.count-value {
    font-size: 2rem;
    line-height: 1;
    color: #2e2a48;
    font-weight: 600;
}

.count-label {
    margin-top: 10px;
    font-size: .68rem;
    font-weight: 600;
    color: #8b8499;
    letter-spacing: .12em;
}

.limited-bottom-title {
    font-size: 1.05rem;
    color: #2e2a48;
    font-weight: 600;
    margin-bottom: 14px;
}

.limited-bottom-description {
    color: #8b8499;
    line-height: 1.8;
    font-size: .86rem;
    max-width: 480px;
}

.limited-image-wrapper{
    position:relative;
}

.limited-image{
    width:100%;
    display:block;
    border-radius:36px;
    background:#F8F3F0;
    box-shadow:
    0 18px 60px rgba(0,0,0,.08);
}

.limited-image-wrapper svg{
    width:100%;
    height:700px;
    border-radius:36px;
    background:#F8F3F0;
    border:1px solid #EFE4DC;
}

/*=============================
Responsive
==============================*/

@media(max-width:1000px){
.limited-edition-grid {
    display: block;
}
.limited-image-wrapper {
    margin-top: 40px;
}
.limited-edition-banner .page-width {
    padding-left: 20px;
    padding-right: 20px;
}
.limited-content {
    max-width: 100%!important;
}   
}



/* ==========================================
   Hero Banner
========================================== */

.sales-hero{
    background: radial-gradient(
        110% 80% at 68% 14%,
        var(--hero-bg-start) 0%,
        var(--hero-bg-middle) 46%,
        var(--hero-bg-end) 100%
    );
    padding:72px 0 122px;
    overflow:hidden;
}

.sales-hero .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}

.sales-hero-grid{
    display:grid;
    grid-template-columns:0.8fr 1fr;
    gap:70px;
    align-items:center;
}

.sales-hero h1 {
    margin: 8px 0 16px;
    font-size: 3rem;
    font-family: 'Fraunces';
    line-height: 1.16;
    font-weight: 500;
    color: var(--heading-color);
    text-wrap: balance;
}

.sales-hero h1 .accent{
    color:var(--accent-color);
}
.reassure {
    margin: 0 0 26px;
    color: #2e2a48!important;
    font-size: .96rem;
    font-weight: 700;
    letter-spacing: .02em;
}

.lead-strong {
    font-family: 'Fraunces';
    font-size: 1.18rem;
    color: #2e2a48;
    display: block;
    margin-bottom: 12px;
    line-height: 1.4;
}

.lead{
    margin-bottom:35px;
}

.lead p {
    margin: 0;
    font-size: 1.02rem;
    line-height: 1.7;
    color: var(--muted-color);
    margin-bottom: 38px;
    max-width: 40ch;
}

.rating{
    display:flex;
    align-items:center;
    gap:11px;
    margin:2px 0 24px;
}

.stars{
    display:flex;
    gap:2px;
}

.stars svg{
    width:18px;
    height:18px;
    fill:#c2a06e;
}

.rtext{
    font-size:16px;
    color:var(--text-color);
}

.rtext strong{
    font-weight:700;
}

.sales-hero-grid .cta-wrap {
    display: GRID;
    align-items: center;
    flex-wrap: wrap;
}

.sales-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 62px;
    padding: 16px 34px;
    background: var(--button-bg);
    color: var(--button-color);
    border-radius: 60px;
    text-decoration: none;
    font-size: .98rem;
    font-weight: 700;
    COLOR: #fbf5ef;
    WIDTH: FIT-CONTENT;
    transition: .3s;
    box-shadow: 0 10px 24px -18px rgba(46, 42, 72, .4);
}

.sales-btn:hover{
    transform:translateY(-2px);
    opacity:.9;
}

.cta-note {
    color: #8b8499!important;
    font-size: .82rem!important;
    line-height: 1.6!important;
    margin-top: 14px;
}

.hero-frames{
    position:relative;
    max-width:640px;
    margin-left:auto;
}

.glow{
    position:absolute;
    left:-12%;
    top:-10%;
    right:-12%;
    bottom:-10%;
    border-radius:80px;
    background:radial-gradient(circle,
        rgba(255,237,214,.9),
        rgba(247,224,210,.4),
        transparent 70%);
    filter:blur(40px);
    z-index:0;
}

.frame{
    position:relative;
    z-index:2;
}

.frame img{
    width:100%;
    display:block;
}

.sales-main {
    border-radius: 38px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 52px 92px -52px rgba(120,92,72,.42);
    border: 1px solid #ede3d8;
}

.sales-main img{
    aspect-ratio:4/5;
    object-fit:cover;
}

.sales-main .cap{
    display:block;
    padding:24px;
    background:#fff;
    color:var(--muted-color);
    font-size:15px;
    line-height:1.6;
}

.mini {
    position: absolute;
    left: -46px;
    bottom: -36px;
    width: 46%;
    border-radius: 26px;
    overflow: hidden;
    background: #fff;
    border: 8px solid #fff;
    box-shadow: 0 36px 62px -28px rgba(80,60,60,.5);
}

.mini img{
    aspect-ratio:1/1;
    object-fit:cover;
}

.mini .cap{
    display:block;
    padding:16px;
    font-size:14px;
    line-height:1.5;
    color:var(--muted-color);
    background:#fff;
}

.frame svg{
    width:100%;
    display:block;
    background:#f5f5f5;
}
.mini svg {
    height: 180px;
}

/* trust-bar-section */

.sales-trust-bar{
    background:var(--trust-bg);
    border-top:1px solid var(--trust-border);
    border-bottom:1px solid var(--trust-border);
    overflow:hidden;
    padding:18px 0;
}

.sales-trust-marquee{
    overflow:hidden;
    width:100%;
    mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}

.sales-trust-track{
    display:flex;
    align-items:center;
    gap:50px;
    width:max-content;
    animation:salesTrustScroll var(--scroll-speed) linear infinite;
}

.sales-trust-bar:hover .sales-trust-track{
    animation-play-state:paused;
}

.sales-trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
    color: var(--trust-text);
    font-size: .9rem;
    font-weight: 400;
}

.sales-trust-icon{
    display:flex;
    align-items:center;
}

.sales-trust-icon svg {
    width: 18px;
    height: 18px;
    fill: #fff!important;
    stroke: #a98a55;
}

@keyframes salesTrustScroll{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}



/*=============================
  Sales Night Section
=============================*/

.sales-night-section {
    background: radial-gradient(120% 110% at 82% 8%, #443e72 0%, #2c2849 45% 100%);
    padding: 120px 0;
    overflow: hidden;
}

.sales-night-section .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}

.sales-night-heading{
    max-width: 780px;
    margin-bottom: 50px;
}

.sales-night-heading h2 {
    margin: 0;
    color: var(--sales-night-heading);
    font-size: 2.6rem;
    line-height: 1.2;
    font-weight: 500;
    font-family: 'Fraunces';
}

.sales-night-accent{
    color:var(--sales-night-accent);
}

.sales-night-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:70px;
    align-items:center;
}

.sales-night-content{
    color:var(--sales-night-text);
}

.sales-night-beat{
    margin-bottom:30px;
}

.sales-night-beat h3 {
    margin: 0 0 18px;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #fff;
    font-weight: 400;
}

.sales-night-beat p {
    margin: 3px 0;
    font-size: 1.15rem;
    line-height: 1.8;
    color: #E7E4F0;
    font-family: 'Fraunces';
}

.sales-night-description{
    margin-top:22px;
}

.sales-night-description p {
    margin: 0;
    color: #C7C4D9;
    font-size: 17.5px;
    line-height: 1.8;
}

.sales-night-image{
    position:relative;
    border-radius:32px;
    overflow:hidden;
    background:#1d1938;
}

.sales-night-image img {
    width: 100%;
    display: block;
    aspect-ratio: 4/3;
    object-fit: cover;
    box-shadow: 0 0 60px -20px rgba(255,210,160,.18);
    border: 1px solid rgb(255 255 255 / 6%);
}

.sales-night-image svg{
    width:100%;
    height:600px;
    display:block;
}

.sales-night-caption{
    padding:24px;
    background:#201B3F;
    color:#D8D5E2;
    font-size:15px;
    line-height:1.6;
}

.sales-night-card {
    margin: 54px auto 0;
    max-width: 700px;
    text-align: center;
    background: #F8E9E1;
    border: 1px solid var(--sales-night-card-border);
    border-radius: 30px;
    padding: 44px 46px;
    box-shadow: 0 20px 60px rgba(0,0,0,.08);
}

.sales-night-wave{
    margin-bottom:18px;
}

.sales-night-wave svg{
    width:46px;
    height:24px;
}

.sales-night-wave path{
    stroke:var(--sales-night-accent);
    stroke-width:2;
    fill:none;
    stroke-linecap:round;
}

.sales-night-card h3 {
    margin: 0 0 18px;
    color: #2F2A4F;
    font-size: 1.3rem;
    line-height: 1.35;
    font-weight: 500;
    font-style: italic;
    font-family: 'Fraunces';
}

.sales-night-card-text{
    
    margin:0 auto 25px;
}

.sales-night-card-text p {
    margin: 0;
    color: #574f66;
    font-size: 17.5px;
    line-height: 1.8;
}

.sales-night-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:300px;
    min-height:64px;
    padding:0 42px;
    background:var(--sales-night-button-bg);
    color:var(--sales-night-button-color);
    text-decoration:none;
    border-radius:50px;
    font-size:18px;
    font-weight:600;
    transition:.3s;
}

.sales-night-button:hover{
    transform:translateY(-3px);
    opacity:.9;
}

/*==================================================
YOU ASKED SECTION
==================================================*/

.ya {
    background: linear-gradient(180deg,#FAEEE7,#FCF5EF);
    padding: 110px 0;
}

.ya .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}

.sec-head.center{
    text-align:center;
}

.you-asked-section .sec-head.center .kicker {
    font-family: 'Fraunces'!important;
    font-style: italic!important;
    font-weight: 400!important;
    font-size: 1.02rem;
    color: #a98a55!important;
    display: block!important;
    margin-bottom: 10px!important;
    text-transform: math-auto;
    letter-spacing: normal;
}

.sec-head.center h2{
    margin:0;
    
}
.ya-grid{
    display:grid;
    grid-template-columns:1.12fr .88fr;
    gap:60px;
    align-items:start;
    margin-top:55px;
}

.ya-letter {
    background: linear-gradient(168deg,#FFFDFB,#FBEFE7);
    border: 1px solid #f0d6ca;
    border-radius: 26px;
    padding: 42px 46px 38px;
    box-shadow: 0 26px 56px -40px rgba(120,90,75,.28);
}

.ya-tag{
    display:inline-flex;
    align-items:center;
    padding:7px 13px;
    border-radius:6px;
    background:#F8F3EF;
    border:1px solid var(--ya-border);
    color:var(--ya-accent);
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.13em;
    font-weight:700;
    margin-bottom:20px;
}

.ya-letter p {
    color: #574f66;
    font-size: 1.02rem;
    line-height: 1.85;
    margin: 0 0 16px;
}

.ya-letter .strong {
    color: #2e2a48;
    font-size: 1.08rem;
    line-height: 1.85;
    /* font-weight: 600; */
    font-family: 'Fraunces';
}

.slips{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin:30px 0;
}

.slip {
    display: inline-block;
    width: fit-content;
    max-width: 90%;
    background: #fcf7f1;
    border: 1px solid #e8d9cf;
    border-left: 2px solid #e2b5a4;
    border-radius: 4px 13px 13px 4px;
    padding: 11px 18px;
    color: #2e2a48;
    font-size: 1.06rem;
    font-style: italic;
    font-family: 'Fraunces';
}

.slip:nth-child(2){
    margin-left:30px;
}

.slip:nth-child(3){
    margin-left:15px;
}

.sig{
    margin-top:22px;
    color:var(--ya-accent);
    font-size: 1.06rem;
    font-style: italic;
    font-family: 'Fraunces';
}

.ya-video{
    display:flex;
    flex-direction:column;
    align-items:center;
}

.vlabel-top{
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--ya-accent);
    font-size:13px;
    font-weight:700;
    margin-bottom:16px;
}

.phone {
    position: relative;
    width: 286px;
    aspect-ratio: 9/16;
    overflow: hidden;
    border-radius: 34px;
    border: 8px solid #F8F3EF;
    box-shadow: 0 44px 76px -38px rgba(80,60,60,.45);
}

.phone img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.phone svg{
    width:100%;
    height:100%;
}

.play{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:74px;
    height:74px;
    background:rgba(255,255,255,.92);
    border-radius:50%;
}

.play:after{
    content:"";
    position:absolute;
    left:31px;
    top:24px;
    border-left:20px solid var(--ya-accent);
    border-top:13px solid transparent;
    border-bottom:13px solid transparent;
}

.phone .cap{
    position:absolute;
    left:20px;
    right:20px;
    bottom:18px;
    text-align:center;
    color:#fff;
    font-size:15px;
}

.vcap{
    text-align:center;
    margin-top:22px;
   
}

.vcap b {
    display: block;
    color: var(--ya-heading);
    font-size: 17px;
    margin-bottom: 10px;
    font-family: 'Fraunces';
    font-weight: 600;
}

.vcap span {
    font-size: .86rem;
    color: #8b8499;
}

.ya-callout {
    max-width: 660px;
    margin: 54px auto 0;
    padding: 28px 36px;
    background: linear-gradient(170deg,#fff,#FBEFE7);
    border: 1px solid #f0d6ca;
    border-radius: 22px;
    text-align: center;
    color: var(--ya-heading);
    font-size: 1.28rem;
    font-family: 'Fraunces';
    line-height: 1.5;
    /* box-shadow: 0 15px 40px rgba(0,0,0,.05); */
    font-style: italic;
}

.video-wrapper{
    position:relative;
}

.phone-video{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:26px;
}

.phone-video::-webkit-media-controls{
    opacity:0;
}

.video-wrapper video{
    width:100%;
    display:block;
}

.phone-video-play{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:72px;
    height:72px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.92);
    cursor:pointer;
    z-index:5;
}

.phone-video-play::after{
    content:"";
    position:absolute;
    left:30px;
    top:24px;
    border-left:20px solid #C79A63;
    border-top:12px solid transparent;
    border-bottom:12px solid transparent;
}
.video-wrapper{
    position:relative;
    width:100%;
    height:100%;
}

.video-thumb{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.shopify-video{
    width:100%;
    height:100%;
}

.shopify-video video{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.phone-video-play{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:5;
}
h2 {
    font-size: 2.9rem;
    line-height: 1.2;
    font-weight: 500;
    font-family: 'Fraunces';
    letter-spacing: -.008em;
    margin: 6px 0 16px;
}



/*=========================================
PARENT MOMENTS SECTION
=========================================*/

.bg-blush {
    background: linear-gradient(180deg,#FBEDE6);
    padding: 110px 0;
}

.bg-blush .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}

.who-head{
    display:grid;
    grid-template-columns:1.14fr .86fr;
    gap:54px;
    align-items:center;
    margin-bottom:60px;
}

.who-head .sec-head{
    max-width:720px;
}

.who-head .kicker{
    display:inline-block;
    margin-bottom:18px;
    color:var(--pm-accent);
    text-transform:uppercase;
    letter-spacing:.14em;
    font-size:13px;
    font-weight:700;
}

.who-head h2{
    margin:0 0 22px;
    color:var(--pm-heading);
}

.who-head h2 .accent{
    color:var(--pm-accent);
}

.who-head p{
    margin:0;
    color:var(--pm-text);
    font-size:17.5px;
    line-height:1.8;
}
.who-img{
    position:relative;
    max-width:430px;
    width:100%;
    margin-left:auto;
    border-radius:28px;
    overflow:hidden;
    background:#f5f5f5;
    box-shadow:0 24px 60px rgba(0,0,0,.08);
}

.who-img img{
    width:100%;
    display:block;
    aspect-ratio:4/5;
    object-fit:cover;
}

.who-img svg{
    width:100%;
    height:100%;
}

.who-img .cap{
    display:block;
    padding:24px;
    font-size:14px;
    line-height:1.6;
    color:#777;
    background:#fff;
}

.moments{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
}

.moment{
    display:flex;
    align-items:flex-start;
    gap:18px;
    background:var(--pm-card-bg);
    border:1px solid var(--pm-border);
    border-radius:24px;
    padding:24px 26px;
    transition:.3s;
}

.moment:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(0,0,0,.08);
}

.mi {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8e9e1;
    border-radius: 14px;
}

.mi img,
.mi svg{
    width:24px;
    height:24px;
    display:block;
}

.mi svg {
    fill: none;
    stroke: #2e2a48;
    stroke-width: 2px;
}

.ml {
    display: block;
    margin-bottom: 4px;
    color: var(--pm-heading);
    font-size: 1.06rem;
    line-height: 1.35;
    font-weight: 500;
    font-family: 'Fraunces';
}

.moment p {
    font-size: .92rem;
    color: #574f66;
    margin: 0;
    line-height: 1.6;
}

.moments-close{
        max-width: 580px;
    margin: 50px auto 0;
    text-align:center;
    background:var(--pm-card-bg);
    border:1px solid var(--pm-border);
    border-radius:28px;
    padding:38px 40px;
}
.benefits-slider-section span.accent {
    color: #a98a55;
}
.moments-close img{
    width:34px;
    height:34px;
    display:block;
    margin:0 auto 18px;
}

.moments-close p {
    font-family: 'Fraunces';
    font-size: 1.42rem;
    color: #2e2a48;
    margin: 0;
}

@media(max-width:1100px){

.who-head{
    gap:40px;
}

.who-head h2{
    font-size:44px;
}

}


/*==================================================
Benefits Section
==================================================*/

.bg-lav{
    background:var(--benefits-bg);
    padding:110px 0;
    overflow:hidden;
}

.bg-lav .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}


.sec-head.center{
    max-width:900px;
    margin:0 auto;
    text-align:center;
}

.sec-head.center .kicker{
    display:inline-block;
    margin-bottom:16px;
    color:var(--benefits-accent);
    font-size:13px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.sec-head.center h2 {
    margin: 0;
    /* color: var(--benefits-heading); */
    width: 700px;
    margin:auto;

}

.benefits-description{
    margin-top:18px;
}

.benefits-description p{
    color:var(--benefits-text);
    font-size:18px;
    line-height:1.8;
}

.bcarousel{
    position:relative;
    margin-top:60px;
}

.bslider{
    display:flex;
    gap:24px;
    overflow-x:auto;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding:8px 2px 20px;
}

.bslider::-webkit-scrollbar{
    display:none;
}

.bslider .bcard{
    flex:0 0 calc((100% - 48px)/3);
    scroll-snap-align:start;
}

.bnav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:52px;
    height:52px;
    border:none;
    border-radius:50%;
    background:#fff;
    color:#2E2A53;
    font-size:28px;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    transition:.3s;
    z-index:5;
}

.bnav:hover{
    transform:translateY(-50%) scale(1.05);
}

.bnav.prev{
    left:-24px;
}

.bnav.next{
    right:-24px;
}

.bcard{
    background:var(--benefits-card-bg);
    border:1px solid var(--benefits-card-border);
    border-radius:26px;
    padding:38px 32px;
    transition:.3s;
    min-height:320px;
}

.bcard:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,.08);
}

.icbox {
    width: 50px;
    height: 50px;
    border-radius: 15px;
    background: #F6E8E2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
}

.bcard:nth-child(3n+2) .icbox{
    background:#F4F1F8;
}

.bcard:nth-child(3n) .icbox{
    background:#F8F3EC;
}

.icbox img,
.icbox svg{
    width:26px;
    height:26px;
    display:block;
}

.icbox svg {
    stroke: #2e2a48;
    fill: none;
    stroke-width: 1.6;
}

.bcard h3 {
    margin: 0 0 14px;
    color: var(--benefits-heading);
    font-size: 1.15rem;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: -.008em;
}
.benefits-slider-section .cta-wrap {
    text-align: center;
    margin-top: 56px;
}
.bcard .promise{
    margin:0;
    color:var(--benefits-heading);
    font-size:1.04rem;
    line-height:1.4;
        font-family: 'Fraunces';
}

.bcard .supp{
    margin-top:16px;
}

.bcard .supp p{
    margin:0;
    color:var(--benefits-text);
    font-size:15px;
    line-height:1.8;
}

.benefits-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 64px;
    padding: 16px 34px;
    border-radius: 50px;
    background: #2e2a48;
    color: #fbf5ef;
    text-decoration: none;
    font-size: .98rem;
    font-weight: 700;
    transition: .3s;
    text-transform: capitalize;
}

.benefits-btn:hover{
    transform:translateY(-3px);
    opacity:.95;
}



@media(max-width:480px){

.bslider .bcard{
    flex:0 0 100%;
}

}


/*====================================================
PHYSICIAN SECTION
====================================================*/

.physician-section{
    background:linear-gradient(180deg, #f5f2f8, #f0ecf4);
    padding:110px 0;
    overflow:hidden;
}

.physician-section .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0px 32px;
}

.physician-section .sec-head{
    max-width:760px;
    margin:0 auto;
    text-align:center;
}

.physician-section .kicker{
    display:inline-block;
    margin-bottom:18px;
    color:var(--physician-accent);
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:13px;
    font-weight:700;
}
.physician-section h2 {
    color: #2e2a53!important;
}
.physician-description{
    margin-top:18px;
}

.physician-description p{
    margin:0;
    color:var(--physician-text);
    font-size: 17.5px;
    line-height: 1.8;
    max-width: 50ch;
    margin: auto;
}

.docs {
    display: flex;
    gap: 32px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 44px;
}

.doc {
    text-align: center;
    width: 300px;
}

.frame.video.wide{
    position:relative;
    aspect-ratio:3/4;
    width:100%;
    background:var(--physician-card);
    border:6px solid var(--physician-border);
    border-radius:34px;
    overflow:hidden;
    box-shadow:0 25px 60px rgba(0,0,0,.08);
}

.doctor-video-wrapper{
    position:relative;
    width:100%;
    height:100%;
}

.doctor-thumb{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:1;
}

.doctor-video{
    position:absolute;
    inset:0;
    z-index:3;
}

.doctor-video video{
    width:100%;
    height:100%;
    object-fit:cover;
}

/*========================
Play Button
========================*/

.doctor-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 72px;
    height: 72px;
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 50%;
    background: rgba(255,255,255,.18);
    backdrop-filter: blur(10px);
    cursor: pointer;
    z-index: 5;
    transition: .3s;
}

.doctor-video-play:hover{
    transform:translate(-50%,-50%) scale(1.08);
}

.doctor-video-play::before{
    content:"";
    position:absolute;
    left:30px;
    top:23px;
    border-left:18px solid #fff;
    border-top:12px solid transparent;
    border-bottom:12px solid transparent;
}

.frame.video .cap{
    position:absolute;
    left:0;
    right:0;
    bottom:24px;
    z-index:6;
    text-align:center;
    color:#fff;
    font-size:16px;
    font-style:italic;
    pointer-events:none;
}
.vcap{
    margin-top:24px;
}

.vcap b {
    display: block;
    color: #2e2a48;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 10px;
}

.vcap span {
    display: block;
    color: #8b8499;
    font-size: .86rem;
    line-height: 1.6;
}

.physician-section span.accent {
    color: #a98a55!important;
}


/*==========================================================
PRODUCT DETAILS GALLERY
PART 4A
==========================================================*/

.product-details-gallery{
    background:var(--pd-bg);
    padding:110px 0;
    overflow:hidden;
}

.product-details-gallery .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}

.product-details-gallery .sec-head{
    max-width:900px;
    margin:0 auto;
    text-align:center;
}

.product-details-gallery .kicker{
    display:inline-block;
    margin-bottom:16px;
    color:var(--pd-accent);
    font-size:13px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.product-details-gallery h2{
    margin:0;
    color:var(--pd-heading);
}

.product-details-gallery h2 .accent{
    color:var(--pd-accent);
}

.product-gallery-description{
    max-width:760px;
    margin:22px auto 0;
}

.product-gallery-description p {
    margin: 0;
    color: #574f66;
    font-size: 17.5px;
    line-height: 1.8;
    max-width: 52ch;
    margin: auto;
}

.gallery {
    display: grid;
    grid-template-columns: 1.45fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 18px;
    margin: 44px 0 12px;
}

.gallery .g-hero{
    grid-column:1;
    grid-row:1 / span 2;
    min-height:440px;
}

.gallery .g-2{
    grid-column:2;
    grid-row:1;
}

.gallery .g-3{
    grid-column:3;
    grid-row:1;
}

.gallery .g-4{
    grid-column:2 / span 2;
    grid-row:2;
}


.gframe{
    position:relative;
    overflow:hidden;
    border-radius:28px;
    background:var(--pd-card-bg);
    border:1px solid var(--pd-border);
    box-shadow:0 15px 40px rgba(0,0,0,.06);
    min-height:210px;
}

.gframe img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:1;
}

.gframe svg{
    width:100%;
    height:100%;
}

.gtag {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 5px;
    background: #fcf7f1;
    color: var(--pd-heading);
    font-size: .72rem;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(0,0,0,.08);
    border: 1px solid rgba(226,181,164,.55);
}


.gcap{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:3;
    color:#fff;
    font-size:15px;
    line-height:1.6;
    text-shadow:0 2px 8px rgba(0,0,0,.45);
}


.gframe::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.58),
        rgba(0,0,0,.18) 35%,
        transparent 65%
    );
    z-index:2;
}

.product-feature-wrapper{
    max-width:980px;
    margin:50px auto 0;
}

.group-sub {
    margin: 14px 0 2px;
    text-align: center;
    color: #a98a55;
    font-size: 1.08rem;
    font-weight: 500;
    font-style: italic;
    line-height: 1.4;
    font-family: 'Fraunces';
}


.feat2 {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 4px 48px;
}

.drow{
    display:flex;
    align-items:flex-start;
    gap:18px;
    padding:22px 0;
    border-bottom:1px dashed rgba(0,0,0,.12);
}

.drow:last-child{
    border-bottom:none;
}

.drow .di {
    width: 42px;
    height: 42px;
    flex: 0 0 46px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8e9e1;
}


.feat2 .drow:nth-child(even) .di{
    background:#F5F1F8;
}

.drow .di img{
    width:22px;
    height:22px;
    object-fit:contain;
    display:block;
}

.drow .di svg{
    width:22px;
    height:22px;
    display:block;
}

.drow .di svg * {
    stroke: #2e2a48;
    fill: none;
    stroke-width: 2px;
}

.drow .di svg path{
    fill:none;
}

.drow b {
    font-family: 'Fraunces';
    font-weight: 500;
    color: #2e2a48!important;
    font-size: 1.08rem;
    display: block;
    margin-bottom: 4px;
}

.drow span {
    display: block;
    color: #8b8499;
    font-size: .93rem;
    line-height: 1.8;
}

.drow{
    transition:.3s;
}

.drow:hover{
    transform:translateX(6px);
}

.drow:hover .di{
    transform:scale(1.06);
}

.drow .di{
    transition:.3s;
}


/*==================================================
HOW TO USE SECTION
==================================================*/

.howto-section {
    background: #F5F2F8;
    padding: 110px 0;
}

.howto-section .page-width{
    max-width:1140px;
    margin:0 auto;
    padding:0 32px;
}

.howto-wrapper{
    max-width:1100px;
    margin:0 auto;
}

.howto-heading{
    text-align:center;
    max-width:760px;
    margin:0 auto 60px;
}

.howto-heading .accent{
    color:var(--howto-accent);
}

.howto-description {
    
    max-width: 63ch;
    margin: auto;
}

.howto-description p {
    margin: 0;
    color: #574f66;
    font-size: 17.5px;
    line-height: 1.8;
}


.howto-steps {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 28px;
    margin: 50px 0 40px;
}

.howto-step{
    background:#fcf7f1;
    border:1px solid var(--howto-border);
    border-radius:26px;
    padding:38px 32px;
    text-align:center;
    transition:.35s;
}

.howto-step:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 40px rgba(0,0,0,.08);
}


.howto-icon{
    width: 56px;
    height: 56px;
    margin: 0 auto 20px;
    border-radius:15px;
    background:#fff;
    border:1px solid var(--howto-border);
    display:flex;
    align-items:center;
    justify-content:center;
}

.howto-icon img{
    width:28px;
    height:28px;
    object-fit:contain;
}

.howto-icon svg{
    width:28px;
    height:28px;
}

.howto-icon svg * {
    stroke: #2e2a53;
    fill: none;
    stroke-width: 2px;
}

.howto-number{
    color:var(--howto-accent);
    font-size:18px;
    font-style:italic;
    font-weight:600;
    margin-bottom: 12px;
    font-family: 'launcher_icons_v2';
}


.howto-step h3{
    margin:0 0 8px;
    color:var(--howto-heading);
    font-size:1.2rem;
    line-height:1.2;
}


.howto-step p{
    margin:0 auto;
    max-width:280px;
    color:var(--howto-text);
    font-size: .96rem;
    line-height: 1.6;
}


.howto-button-wrap{
    text-align:center;
}

.howto-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:280px;
    min-height:60px;
    padding:16px 34px;
    border-radius:999px;
    background:var(--howto-button-bg);
    color:var(--howto-button-color);
    text-decoration:none;
    border:1.5px solid var(--howto-heading);
    font-weight:600;
    transition:.3s;
}

.howto-button:hover{
    transform:translateY(-3px);
    opacity:.95;
}


/*==================================================
FAQ + HOW TO
PART 3A
==================================================*/

section.faq-howto-section {
    background: #fcf7f1;
    padding: 60px 0px;
}

.faq-howto-section .page-width {
    max-width: 840px;
    margin: 0 auto;
    padding: 0 32px;
}

.faq-howto-wrapper{
    max-width:840px;
    margin:0 auto;
}

/*====================================
Quick Start Card
====================================*/

.howto-cta{
    background:linear-gradient(180deg, #FFFFFF 0%, #F0ECF4 100%);
    border:1px solid var(--faq-border);
    border-radius:26px;
    padding:34px 36px 38px;
    text-align:center;
    margin-bottom:44px;
    box-shadow:0 12px 40px rgba(0,0,0,.05);
}

.howto-cta .tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 11px;
    border-radius: 5px;
    background: #fcf7f1;
    color: #2e2a48;
    font-size: .73rem;
    font-weight: 700;
    letter-spacing: .015em;
    /* text-transform: uppercase; */
    margin-bottom: 18px;
    border: 1px solid rgba(226,181,164,.55);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.5);
}

.howto-cta h3{
    margin:0;
    color:var(--faq-heading);
   font-size: 1.5rem;
    line-height: 1.25;
    font-weight: 500;
    margin-bottom: 10px;
    font-family: 'Fraunces', Georgia, serif;
}

.quick-description{
    margin:18px auto 32px;
    max-width:700px;
}

.quick-description p{
    margin:0;
    color:var(--faq-text);
    font-size:17px;
    line-height:1.8;
}


.howto-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
    margin-bottom:28px;
}

.hstep{
    margin:0;
}

.hstep figcaption{
    margin-top:14px;
    color:var(--faq-heading);
    font-size:17px;
    font-weight:600;
}


.hstep .ill{
    position:relative;
    overflow:hidden;
    aspect-ratio:3/4;
    border-radius:16px;
    background:#fcf7f1;
    border:1px solid var(--faq-border);
    cursor:pointer;
}

.hstep .ill img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:10px;
    transition:.35s;
}

.hstep:hover img{
    transform:scale(1.05);
}

.hstep .ph-cap{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:100%;
    padding:20px;
    text-align:center;
    color:#8b8b8b;
    font-size:15px;
}

.hstep .ill::after{
    content:"⌕ Click to enlarge";
    position:absolute;
    left:50%;
    bottom:10px;
    transform:translateX(-50%);
    background:rgba(0,0,0,.72);
    color:#fff;
    padding:6px 14px;
    border-radius:999px;
    font-size:12px;
    opacity:0;
    transition:.3s;
    white-space:nowrap;
}

.hstep:hover .ill::after{
    opacity:1;
}

.faq-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:240px;
    min-height:56px;
    padding:0 34px;
    border-radius:999px;
    background:var(--faq-button-bg);
    color:var(--faq-button-color);
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.faq-btn:hover{
    transform:translateY(-3px);
}

.faq-btn-soft{
    background:#f8e9e1;
    color:var(--faq-heading);
    border:1.5px solid #2e2a48;
}

.faq-heading{
    text-align:left;
    margin-bottom:24px;
}

.faq-heading .accent{
    color:var(--faq-accent);
}


.faq-lightbox{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.85);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:999;
    padding:30px;
}

.faq-lightbox.open{
    display:flex;
}

.faq-lightbox img{
    max-width:90vw;
    max-height:90vh;
    border-radius:14px;
    background:#fff;
}

.lb-close{
    position:absolute;
    right:25px;
    top:25px;
    width:48px;
    height:48px;
    border:none;
    border-radius:50%;
    background:#fff;
    cursor:pointer;
    font-size:28px;
    line-height:1;
}

/*====================================
FAQ Accordion
====================================*/

.acc{
    border-bottom:1px solid var(--faq-border);
}

.acc:last-child{
    border-bottom:0;
}

.acc button,
.faq-toggle{
    width:100%;
    background:none;
    border:0;
    outline:0;
    cursor:pointer;
    position:relative;
    text-align:left;
    padding:28px 40px 28px 0;
    color:var(--faq-heading);
    font-size:1.16rem;
    
    line-height:1.4;
    transition:.3s;
    font-family: 'Fraunces';
}

.acc button:hover,
.faq-toggle:hover{
    color:var(--faq-accent);
}

/* Plus Icon */

.acc button::after,
.faq-toggle::after{
    content:"+";
    position:absolute;
    right:6px;
    top:50%;
    transform:translateY(-50%);
    font-size:34px;
    font-weight:300;
    color:var(--faq-accent);
    transition:.35s ease;
}

.acc.open button::after,
.acc.open .faq-toggle::after{
    transform:translateY(-50%) rotate(45deg);
}

.acc .a{
    max-height:0;
    overflow:hidden;
    transition:max-height .35s ease;
}

.faq-answer{
    padding:0 0 28px;
}

.faq-answer p{
    margin:0;
    color:var(--faq-text);
    font-size:17px;
    line-height:1.85;
}

.faq-answer p + p{
    margin-top:16px;
}

.faq-answer a{
    color:var(--faq-accent);
    font-weight:600;
    text-decoration:none;
}

.faq-answer a:hover{
    text-decoration:underline;
}

/*====================================
Bottom CTA
====================================*/

.faq-bottom{
    margin-top:25px;
}

.cta-note{
    color:var(--faq-text);
    font-size:15px;
    line-height:1.6;
}

/*==================================================
Testimonials Masonry
Part 3A
==================================================*/

.tm-section {
    background: linear-gradient(180deg,#FBEDE6)!important;
    padding: 110px 0;
}

.tm-section .page-width {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 32px;
}

.tm-wrapper{
    max-width:1440px;
    margin:0 auto;
}

/*==========================
Heading
==========================*/

.tm-heading {
    max-width: 660px;
    margin-bottom: 42px;
}

.tm-heading h2{
    margin:0;
    color:var(--tm-heading);
    font-size: 2.7rem;
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: -.008em;
}

.tm-heading .accent{
    color:var(--tm-accent);
}

.tm-description{
    margin-top:18px;
}

.tm-description p{
    margin:0;
    color:var(--tm-text);
    font-size:17.5px;
    line-height:1.85;
}

/*==========================
Grid
==========================*/

.tm-grid {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    gap: 24px;
    align-items: start;
}

.tm-grid .featured{
    grid-row:span 2;
    min-height:430px;
}

/*==========================
Card
==========================*/

.tm-card{
    background:#fcf7f1;
    border:1px solid var(--tm-border);
    border-radius:8px 22px 22px 22px;
    padding:30px 30px;
    box-shadow:0 10px 35px rgba(0,0,0,.04);
    transition:.3s;
    display:flex;
    flex-direction:column;
    height:100%;
}

.tm-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 40px rgba(0,0,0,.08);
}

/*==========================
Quote
==========================*/

.tm-quote {
    color: #e5b7a3;
    font-size: 1.2rem!important;
    line-height: 0;
    margin-bottom: 12px;
    font-family: Georgia, serif;
}

/*==========================
Stars
==========================*/

.tm-stars{
    display:flex;
    gap:4px;
    margin-bottom:18px;
}

.tm-stars span{
    color:var(--tm-star);
    font-size:14px;
    line-height:1;
}


.tm-review p{
    margin: 0;
    font-size: 1.06rem;
    line-height: 1.52;
    color:var(--tm-heading);
    font-style:italic;
    font-family: 'Fraunces';
}

.tm-card.featured .tm-review p {
    font-size: 1.3rem;
    line-height: 1.44;
    font-family: 'Fraunces';
}

/*==========================
Customer Name
==========================*/

.tm-name {
    margin-top: 14px;
    color: #a98a55!important;
    font-size: 15px;
    font-weight: 700;
}
/*==================================================
Testimonials Masonry
Part 3B
==================================================*/

/* Featured Card */

.tm-card.featured{
    padding:32px;
}

.tm-card.featured .tm-quote{
    font-size:54px;
   
}

.tm-card.featured .tm-stars{
    margin-bottom:22px;
}

.tm-card.featured .tm-name{
    margin-top:28px;
}

/*==========================
Grid Balance
==========================*/





.tm-grid .tm-card:nth-child(5){
    margin-top:10px;
}



/*==========================
Hover Animation
==========================*/

.tm-card{
    position:relative;
    overflow:hidden;
}

.tm-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:4px;
    height:0;
    background:var(--tm-accent);
    transition:.35s;
}

.tm-card:hover::before{
    height:100%;
}

.tm-card:hover .tm-name{
    color:var(--tm-heading);
}

.tm-card:hover .tm-quote{
    transform:translateY(-2px);
}

.tm-quote,
.tm-name{
    transition:.3s;
}

/*==========================
Tablet
==========================*/

@media (max-width:1100px){

.tm-grid{

    grid-template-columns:1fr 1fr;

}

.tm-grid .featured{

    grid-column:1 / -1;
    grid-row:auto;
    min-height:auto;

}

.tm-grid .tm-card:nth-child(2),
.tm-grid .tm-card:nth-child(3),
.tm-grid .tm-card:nth-child(4),
.tm-grid .tm-card:nth-child(5),
.tm-grid .tm-card:nth-child(6){

    margin-top:0;

}

.tm-card{

    min-height:280px;

}

}


/*==========================
Smooth Animation
==========================*/

.tm-card{
    animation:tmFadeUp .5s ease both;
}

.tm-card:nth-child(2){
    animation-delay:.08s;
}

.tm-card:nth-child(3){
    animation-delay:.16s;
}

.tm-card:nth-child(4){
    animation-delay:.24s;
}

.tm-card:nth-child(5){
    animation-delay:.32s;
}

.tm-card:nth-child(6){
    animation-delay:.40s;
}

@keyframes tmFadeUp{

    from{

        opacity:0;
        transform:translateY(30px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}


/*=============================
Responsive 1200
==============================*/

@media(max-width:1200px){

.limited-title p{
    font-size:35px;
}

.limited-edition-grid{
    grid-template-columns:1fr 1fr;
    gap:60px;
}
.limited-content {
    max-width: 514px!important;
}
.sales-hero-grid{
    gap:20px;
}

.sales-hero h1{
    font-size:40px;
}
.sales-night-grid{
    gap:20px;
}

.sales-night-beat h3{
    font-size:30px;
}
.bslider .bcard{
    flex:0 0 calc((100% - 24px)/2);
}

.limited-title p{
    font-size:35px;
}

.limited-edition-grid{
    grid-template-columns:1fr 1fr;
    gap:60px;
}
.limited-content {
    max-width: 514px!important;
}

}


/*=============================
Responsive 767
==============================*/


@media(max-width:767px){
    .template-suffix-sleep-of-mind-sales .custom-header.page-width {
    padding: 12px 10px!important;
}
.template-suffix-sleep-of-mind-sales .section-featured-product {
    background: #F8EFE4;
    padding: 60px 10px!important;
}
.cst-limited-edition button.btn.btn--large.add-to-cart {
    font-size: 14px!important;
    
}
.cst-limited-edition .countdown__item {
    margin-right: 5px!important;
}
.cst-limited-edition .countdown {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
}
    .cst-limited-edition {
    max-width: 100%;
    margin: auto;
    padding: 30px!important;
}
    .parent-moments-section .moments {
    grid-template-columns: 1fr!important;
    gap: 8px;
}

    .faq-heading h2 {
    font-size: 28px!important;
}
.howto-heading h2{
    font-size:28px!important;
}
    .limited-form-row{
        flex-direction:column;
        gap:15px;
    }

    .limited-button{
        width:100%;
    }

        .limited-edition-banner .page-width {

    padding-left: 20px;
    padding-right: 20px;
}
    .limited-edition-banner{
    padding:70px 0;
}
.limited-title p {
    font-size: 32px;
    margin-bottom: 14px;
}
h1.limited-title, .limited-top-text {
    width: auto;
}
.limited-edition-grid{
    display:block;
}

.limited-content{
    max-width:100%;
}

.limited-image-wrapper {
    order: -1;
    max-width: 100%;
    margin: auto;
    margin-top: 30px;
}

.limited-title p{
    font-size:48px;
}

.limited-description p{
    font-size:18px;
}

.limited-edition-banner{
    padding:60px 0;
}

.limited-badge{
    font-size:11px;
}

.limited-top-text{
    font-size:18px;
}

.limited-title p{
    font-size:38px;
}

.limited-description p{
    font-size:17px;
}

.limited-highlight{
    font-size:18px;
}

.limited-form{
    flex-direction:column;
}

.limited-input{
    width:100%;
}

.limited-button{
    width:100%;
}

.countdown {
    gap: 10px;
    justify-content: left;
    flex-wrap: wrap;
}

.count-box{
    width:78px;
    height:78px;
}

.count-value{
    font-size:30px;
}

.count-label{
    font-size:10px;
}

.limited-image-wrapper svg{
    height:450px;
}
.limited-giveaway {
    margin-top: 22px;
    margin-bottom: 30px;
}
.header-btn {
    width: 100%;
    font-size: 10px;
    padding: 10px;
}
.limited-button {
    height: 48px;
    font-size: 14px;
}
.sales-hero .page-width{
    padding:0 20px;
}

.sales-hero{
    padding:60px 0;
}

.sales-hero h1{
    font-size:36px;
}

.lead-strong{
    font-size:20px;
}

.lead p{
    font-size:16px;
}

.rating {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 2px 0 24px;
}

.cta-wrap{
    flex-direction:column;
    align-items:flex-start;
}

.sales-btn{
    width:100%;
}

.hero-frames{
    max-width:100%;
}

.mini{
    width:45%;
    left:-10px;
    bottom:-20px;
}

.sales-main{
    border-radius:24px;
}

.sales-main .cap,
.mini .cap{
    padding:16px;
    font-size:13px;
}
.sales-trust-track{
gap:30px;
}

.sales-trust-item{
font-size:14px;
}

.sales-night-section{
    padding:60px 0;
}

.sales-night-section .page-width{
    padding:0 20px;
}

.sales-night-heading h2{
    font-size:34px;
}

.sales-night-beat h3{
    font-size:26px;
}

.sales-night-beat p{
    font-size:18px;
}

.sales-night-description p{
    font-size:16px;
}

.sales-night-card{
    padding:35px 25px;
}

.sales-night-card h3{
    font-size:22px;
}

.sales-night-card-text p{
    font-size:16px;
}

.sales-night-button {
    width: 100%;
    min-width: 100%;
    font-size: 14px;
    padding: 0 30px;
}
.sales-night-heading h2{
    font-size:28px;
}
.sales-night-heading {
    margin-bottom: 25px!important;
}
.sales-night-beat h3{
    font-size:20px;
}

.sales-night-beat p{
    font-size:16px;
}
.ya-video {
    margin-top: 39px;
}
.ya{
    padding:60px 0;
}

.ya .page-width{
    padding:0 20px;
}

.sec-head.center h2{
    font-size:28px;
}

.ya-letter{
    padding:30px;
}

.ya-letter p{
    font-size:16px;
}

.ya-letter .strong{
    font-size:20px;
}

.slip{
    font-size:16px;
    max-width:100%;
}

.slip:nth-child(2),
.slip:nth-child(3){
    margin-left:0;
}

.phone {
    width: auto;
    aspect-ratio: 7 / 12;
}

.ya-callout {
    padding: 24px;
    font-size: 20px;
    margin-top: 20px;
}
.bg-blush{
    padding:60px 0;
}

.bg-blush .page-width{
    padding:0 20px;
}

.who-head h2{
    font-size:28px;
}

.who-head p{
    font-size:16px;
}

.moment{
    padding:22px;
}

.mi{
    width:46px;
    height:46px;
}

.mi img{
    width:22px;
    height:22px;
}

.ml{
    font-size:18px;
}

.moment p{
    font-size:15px;
}

.moments-close{
    padding:28px 22px;
}

.moments-close p{
    font-size:20px;
}
.bg-lav{
    padding:60px 0;
}

.bg-lav .page-width{
    padding:0 20px;
}

.sec-head.center h2 {
    font-size: 28px;
    width: auto;
}

.bslider .bcard{
    flex:0 0 88%;
}

.bcard{
    min-height:auto;
    padding:28px 24px;
}

.bcard h3{
    font-size:22px;
}

.bcard .promise{
    font-size:16px;
}

.benefits-btn{
    width:100%;
}
.physician-section{
    padding:60px 0;
}

.physician-section .page-width{
    padding:0 20px;
}

.physician-section h2{
    font-size:34px;
}

.physician-description p{
    font-size:16px;
}

.vcap b{
    font-size:22px;
}

.vcap span{
    font-size:15px;
}

.doctor-video-play{
    width:60px;
    height:60px;
}

.doctor-video-play::before{
    left:25px;
    top:20px;
    border-left:15px solid #fff;
    border-top:10px solid transparent;
    border-bottom:10px solid transparent;
}

.frame.video .cap{
    font-size:14px;
    bottom:18px;
}
.product-details-gallery{

    padding:60px 0;

}

.product-details-gallery .page-width{

    padding:0 20px;

}

.product-details-gallery h2{

    font-size:34px;

}

.product-gallery-description p{

    font-size:16px;

}

.gallery{

    grid-template-columns:1fr;
    gap:18px;

}

.gallery .g-hero,
.gallery .g-2,
.gallery .g-3,
.gallery .g-4{

    grid-column:auto;
    grid-row:auto;
    min-height:300px;

}

.gframe{

    min-height:260px;

}

.gtag{

    font-size:12px;
    padding:6px 12px;

}

.gcap{

    left:18px;
    right:18px;
    bottom:18px;
    font-size:14px;

}
.product-feature-wrapper{

    margin-top:40px;

}

.group-sub{

    font-size:18px;

}

.feat2{
grid-template-columns:1fr;

}

.drow{
padding:18px 0;

}

.drow .di{

    width:42px;
    height:42px;
    flex:0 0 42px;

}

.drow .di img,
.drow .di svg{

    width:20px;
    height:20px;
}

.drow b{
font-size:18px;
}

.drow span{
    font-size:15px;
    line-height:1.7;
}
.howto-section{
    padding:70px 0;
}

.howto-section .page-width{
    padding:0 20px;
}

.howto-heading{
    margin-bottom:40px;
}

.howto-heading h2{
    font-size:28px;
}

.howto-description p{
    font-size:16px;
}

.howto-steps{
    grid-template-columns:1fr!important;
    gap:20px;
}

.howto-step{
    padding:32px 24px;
}

.howto-icon{
    width:56px;
    height:56px;
}

.howto-icon img,
.howto-icon svg{
    width:24px;
    height:24px;
}

.howto-step h3{
    font-size:24px;
}

.howto-step p{
    font-size:15px;
}

.howto-button{
    width:100%;
    min-width:100%;
}
.faq-howto-section{
    padding:70px 0;
}
section.faq-howto-section {
    background: #fcf7f1;
    padding: 28px 0px!important;
}
.faq-howto-section .page-width{
    padding:0 20px;
}

.howto-cta{
    padding:24px;
}

.howto-cta h3{
    font-size:26px;
}

.quick-description p{
    font-size:16px;
}

.howto-grid{
    grid-template-columns:1fr;
    gap:18px;
}

.hstep .ill{
    aspect-ratio:16/10;
}

.faq-heading{
    margin-bottom:14px;
}

.faq-heading h2{
    font-size:28px;
}

.acc button,
.faq-toggle{
    padding:22px 42px 22px 0;
    font-size:18px;
}

.acc button::after,
.faq-toggle::after{
    font-size:28px;
}

.faq-answer{
    padding-bottom:22px;
}

.faq-answer p{
    font-size:15px;
    line-height:1.75;
}

.faq-btn{
    width:100%;
    min-width:100%;
}
.tm-section{
    padding:60px 0;

}

.tm-section .page-width{
    padding:0 20px;
}

.tm-heading{
    text-align:center;
    margin:0 auto 36px;
}

.tm-heading h2{
    font-size:34px;
}

.tm-description p{
    font-size:16px;
}

.tm-grid{
    grid-template-columns:1fr;
    gap:18px;
}

.tm-card,
.tm-card.featured{
    min-height:auto;
    padding:24px;
}

.tm-card.featured .tm-review p{
    font-size:18px;
}

.tm-review p{
    font-size:16px;
}

.tm-quote{
    font-size:38px;
}

.tm-card.featured .tm-quote{
       font-size:42px;
}

.tm-name{
    margin-top:20px;
}
  .limited-form-row{
        flex-direction:column;
        gap:15px;
    }

    .limited-button{
        width:100%;
    }

    .tm-heading h2{
        font-size:30px;

}

.tm-review p,
.tm-card.featured .tm-review p{
    font-size:15px;
}

.tm-card{
    border-radius:18px;
    padding:20px;
}

.tm-stars span{
   font-size:13px;

}

.tm-name{
    font-size:14px;
}
.sales-hero h1{
    font-size:30px;
}

.reassure{
    font-size:14px;
}

.lead-strong{
    font-size:18px;
}

.mini{
    width:50%;
}
.group-sub{
    font-size:17px;
}

.drow{
    gap:14px;
}

.drow b{
    font-size:17px;
}

.drow span{
 font-size:14px;

}
.howto-cta{
    border-radius:20px;
}

.hstep figcaption{
    font-size:15px;
}

.acc button,
.faq-toggle{
    font-size:17px;
}

.cta-note{
    font-size:14px;
}

}




/*=============================
Responsive 991
==============================*/


@media(max-width:991px){

.sales-hero{
    padding:30px 0;
}

.sales-hero-grid{
    grid-template-columns:1fr;
}

.hero-frames{
    /* order:-1; */
    margin:0 auto 40px;
}

.sales-hero h1{
    font-size:40px;
}

.reassure{
    font-size:16px;
}

.lead-strong{
    font-size:22px;
}
.sales-night-section{
    padding:80px 0;
}

.sales-night-grid{
    grid-template-columns:1fr;
}

.sales-night-image{
    /* order:-1; */
    max-width:650px;
    margin:0 auto;
}

.sales-night-card{
    padding:45px 35px;
}
.ya{
    padding:60px 0;
}

.ya-grid {
    grid-template-columns: 1fr;
    width: auto!important;
    display: block!important;
    margin-top: 24px;
}
.phone{
    width:280px;
}
.bg-blush{
    padding:60px 0;
}

.who-head{
    grid-template-columns:1fr;
}

.who-img {
    margin: 0 auto;
    max-width: 100%;
    order: -1;
}

.moments {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}
.bg-lav{
    padding:60px 0;
}
.bnav.next {
    right: -12px!important;
    width: 40px;
    height: 40px;
}
.bnav.prev {
    left: -17px!important;
    width: 40px;
    height: 40px;
}
.physician-section{
    padding:60px 0;
}

.docs {
    grid-template-columns: 1fr;
    max-width: 460px;
    gap: 50px;
    margin-top: 30px;
}
.gallery{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto auto auto;

}

.gallery .g-hero{
    grid-column:1 / span 2;
    grid-row:1;
    min-height:420px;

}

.gallery .g-2{
    grid-column:1;
    grid-row:2;
}

.gallery .g-3{
    grid-column:2;
    grid-row:2;
}

.gallery .g-4{
    grid-column:1 / span 2;
    grid-row:3;
}
.feat2{
    gap:10px 30px;
}

.drow b{
    font-size:19px;

}
.howto-section{
    padding:60px 0;
}

.howto-section .page-width{
    padding:0 30px;
}

.howto-steps{
    grid-template-columns:repeat(1,1fr);
}

.howto-heading h2{
    font-size:46px;
}
.faq-howto-section{
    padding:90px 0;
}

.faq-howto-section .page-width{
    padding:0 30px;
}

.howto-grid{
    gap:18px;
}

.howto-cta{
    padding:30px;
}

.howto-cta h3{
    font-size:28px;
}

.faq-heading h2{
    font-size:42px;
}

.acc button,
.faq-toggle{
    font-size:20px;
}

}


@media (min-width:768px) and (max-width:1024px){
.docs {
    grid-template-columns: 1fr 1fr!important;
    max-width: unset !important;

}
.ya-video {
    margin-top: 30px;
}
.frame.video.wide {
    aspect-ratio: 6/9!important;
}
.template-suffix-sleep-of-mind-sales .section-featured-product {
    background: #F8EFE4;
    padding: 60px 10px!important;
}
.cst-limited-edition button.btn.btn--large.add-to-cart {
    font-size: 14px!important;
    
}
.cst-limited-edition .countdown__item {
    margin-right: 5px!important;
}
.cst-limited-edition .countdown {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
}
.cst-limited-edition {
    display: block!important;
}
html .cst-limited-edition .detail {
    width: 100%!important;
    margin: 0px!important;
    max-width: 100%!important;
}
.cst-limited-edition {
    padding: 45px!important;
    
}
}






.template-suffix-sleep-of-mind-sales .section-featured-product {
    background: #F8EFE4;
    padding: 120px 0px;
}
.cst-limited-edition {
    max-width: 1140px;
    margin: auto;
    padding: 60px;
    background: linear-gradient(165deg, #FFFFFF, #FCF7F1);
    border-radius: 40px;
    border: 1px solid #ede3d8;
    box-shadow: 0 26px 58px -44px rgba(70,55,75,.20);
    align-items: center;
}
.template-suffix-sleep-of-mind-sales .countdown-font-heading.countdown-divider-none {
    background: none;
}
.cst-limited-edition .countdown__item {
    background: #fcf7f1;
    border-radius: 18px;
    min-width: 74px;
    padding: 16px 8px;
    text-align: center;
    box-shadow: inset 0 0 0 1px rgba(237, 227, 216, .8);
}
.cst-limited-edition span.countdown__number-part {
    font-family: 'Fraunces';
    font-size: 1.9rem;
    color: #2e2a48;
    display: block;
    line-height: 1;
    margin-bottom: 11px;
}
.cst-limited-edition .countdown__unit.subheading {
    font-size: .68rem;
    color: #8b8499;
    font-weight: 600;
}
.cst-limited-edition .product-info-block.with-icon.text-box {
    background: #fcf7f1;
    padding: 18px 20px;
    margin-bottom: 24px;
    border-radius: 16px;
    border: 1px solid #ede3d8;
}
.cst-limited-edition .with-icon__beside p strong {
    font-family: 'Fraunces';
    margin-bottom: 2px;
    color: #2e2a48;
    font-size: 17.5px;
}
.cst-limited-edition .with-icon__beside p {
    color: #8b8499;
    line-height: 1.8;
    font-size: .92rem;
}
.cst-limited-edition .product-info-block svg.icon {
    background: #f0ecf4!important;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    border-radius: 11px;
    padding: 10px;
}
.text-block-4 .product-info-block.text-box {
    font-size: .9rem;
    color: #574f66;
    padding: 12px 16px;
    border: 1px dashed #c2a06e;
    border-radius: 12px;
    width: 100%;
}
.lightly-spaced-row span.accent {
    color: #a98a55;
}
.richtext-block-2 p {
    font-size: 17.5px;
    color: #574f66;
}
.cst-limited-edition .product-info-block.text-box.text-box--wide.align-center.countdown-font-heading.countdown-divider-none {
    padding: 0;
}
.cst-limited-edition .countdown__grid {
    margin: 8px 0;
}


.cst-limited-edition button.btn.btn--large.add-to-cart {
    padding: 21px 46px;
    border-radius: 64px;
    box-shadow: 0 16px 34px -18px rgba(46,42,72,.55);
    font-size: 1.14rem;
    text-transform: capitalize;
    color: #fbf5ef;
    letter-spacing: normal;
    width: fit-content!important;
    background: #2e2a48;
}
.cst-limited-edition .quantity-submit-row__submit.input-row {
    display: grid;
}
.cst-limited-edition .quantity-submit-row {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin: 0px 0!important;
}
.cst-limited-edition .product-form .quantity-submit-row .quantity-submit-row__submit {
    margin-top: 0px!important;
    margin-bottom: 0px!;
}
.cst-limited-edition carousel-slider {
    border-radius: 34px;
    /* aspect-ratio: 4/5; */
}
.cst-limited-edition carousel-slider.carousel.block.thumbnails {
    display: none;
}
.cst-limited-edition .lightly-spaced-row {
    margin-bottom: 24px;
}