@import url("./preventive-dentistry.css");

:where(.sleep-signs,.sleep-impact,.sleep-evaluation,.sleep-options,.sleep-appliance,.sleep-care,.sleep-collaboration,.sleep-faq) *{box-sizing:border-box}
:where(.sleep-signs,.sleep-impact,.sleep-evaluation,.sleep-options,.sleep-appliance,.sleep-care,.sleep-collaboration,.sleep-faq) :where(p,figure){margin:0}
:where(.sleep-signs,.sleep-impact,.sleep-evaluation,.sleep-options,.sleep-appliance,.sleep-care,.sleep-collaboration,.sleep-faq) .heading{margin:18px 0 0;color:var(--navy);font-family:var(--display);font-size:clamp(2.25rem,4.6vw,4.35rem);font-weight:400;letter-spacing:-.04em;line-height:1.05;text-wrap:balance}
:where(.sleep-signs,.sleep-impact,.sleep-evaluation,.sleep-options,.sleep-appliance,.sleep-care,.sleep-collaboration,.sleep-faq) .heading em{display:block;margin-top:12px;color:var(--gold-text);font-family:var(--script);font-size:clamp(2.8rem,5vw,4.375rem);font-weight:400;letter-spacing:0;line-height:1}
.sleep-header{max-width:1040px;margin-bottom:clamp(44px,6vw,82px)}
.sleep-header>p:not(.preventive-eyebrow),.sleep-impact__content>p:not(.preventive-eyebrow),.sleep-evaluation__content>p:not(.preventive-eyebrow),.sleep-appliance__content>p:not(.preventive-eyebrow){color:#515a70;font-size:clamp(1.02rem,.98rem + .18vw,1.16rem);line-height:1.8}

.sleep-signs{background:#eef4f5}
.sleep-signs__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sleep-signs__grid article{padding:clamp(30px,3.2vw,48px);border-top:4px solid var(--gold-light);background:var(--white);box-shadow:0 18px 44px rgba(19,36,63,.07);transition:transform .35s ease,box-shadow .35s ease}
.sleep-signs__grid article:hover{box-shadow:0 22px 48px rgba(19,36,63,.1);transform:translateY(-3px)}
.sleep-signs__grid .heading{margin:0 0 22px;font-size:clamp(1.45rem,2vw,2rem);line-height:1.2}
.sleep-signs__grid ul,.sleep-option ul,.sleep-care__panel ul{display:grid;gap:13px;margin:0;padding-left:21px;color:#515a70;line-height:1.65}

.sleep-impact{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1fr);align-items:center;gap:clamp(48px,8vw,120px);padding:clamp(88px,9vw,150px) clamp(24px,7vw,132px);background:var(--navy-deep)}
.sleep-impact .heading,.sleep-impact__grid .heading{color:var(--white)}
.sleep-impact .preventive-eyebrow,.sleep-impact .heading em{color:var(--gold-light)}
.sleep-impact__content>p:not(.preventive-eyebrow){margin-top:28px;color:rgba(255,255,255,.82)}
.sleep-impact__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid rgba(239,192,112,.38)}
.sleep-impact__grid article{min-height:220px;padding:30px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.sleep-impact__grid article>span{color:var(--gold-light);font-family:var(--display);letter-spacing:.14em}
.sleep-impact__grid .heading{margin:22px 0 11px;font-size:clamp(1.28rem,1.7vw,1.7rem);line-height:1.22}
.sleep-impact__grid p{color:rgba(255,255,255,.78);line-height:1.68}

.sleep-evaluation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);align-items:center;gap:clamp(50px,8vw,120px);background:var(--white)}
.sleep-media{min-height:570px;overflow:hidden;background:#e7ecee;box-shadow:0 24px 60px rgba(19,36,63,.11)}
.sleep-media img{display:block;width:100%;height:100%;min-height:570px;object-fit:cover}
.sleep-evaluation__content>p:not(.preventive-eyebrow){margin-top:26px}
.sleep-evaluation__content ol{display:grid;gap:0;margin:34px 0 0;padding:0;list-style:none}
.sleep-evaluation__content li{display:grid;grid-template-columns:minmax(160px,.7fr) 1fr;gap:24px;padding:18px 0;border-top:1px solid rgba(32,41,85,.18);color:var(--navy);line-height:1.55}
.sleep-evaluation__content li span{color:#515a70}

.sleep-options{background:var(--ivory)}
.sleep-options__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3.5vw,52px)}
.sleep-option{overflow:hidden;border:1px solid rgba(32,41,85,.13);background:var(--white);box-shadow:0 18px 44px rgba(19,36,63,.07);transition:border-color .35s ease,transform .35s ease}
.sleep-option:hover{border-color:rgba(203,156,77,.6);transform:translateY(-3px)}
.sleep-option figure{aspect-ratio:16/8;overflow:hidden;background:#dfe9eb}
.sleep-option figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.25,1)}
.sleep-option:hover figure img{transform:scale(1.025)}
.sleep-option>div{padding:clamp(32px,4vw,54px)}
.sleep-option .heading{margin:14px 0 20px;font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1.15}
.sleep-option>div>p:not(.preventive-service-card__kicker){color:#515a70;line-height:1.72}
.sleep-option p+p{margin-top:16px}
.sleep-option ul{margin-top:24px}
.sleep-option a{display:inline-flex;gap:10px;margin-top:28px;color:var(--navy);font-size:.8rem;font-weight:700;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}
.sleep-option a:hover,.sleep-option a:focus-visible{color:var(--gold-text)}
.sleep-option--navy{background:var(--navy-deep)}
.sleep-option--navy .heading{color:var(--white)}
.sleep-option--navy .preventive-service-card__kicker,.sleep-option--navy a{color:var(--gold-light)}
.sleep-option--navy>div>p:not(.preventive-service-card__kicker){color:rgba(255,255,255,.82)}
.sleep-option--navy a:hover,.sleep-option--navy a:focus-visible{color:var(--white)}

.sleep-appliance{background:#e7f0f1}
.sleep-appliance__content{max-width:1000px;margin-bottom:clamp(42px,6vw,74px)}
.sleep-appliance__content>p:not(.preventive-eyebrow){margin-top:26px}
.sleep-appliance__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(32,41,85,.18);border-bottom:1px solid rgba(32,41,85,.18);background:rgba(255,255,255,.55)}
.sleep-appliance__steps article{padding:34px 30px;border-right:1px solid rgba(32,41,85,.18)}
.sleep-appliance__steps article:last-child{border-right:0}
.sleep-appliance__steps span{color:var(--gold-text);font-family:var(--display);letter-spacing:.14em}
.sleep-appliance__steps .heading{margin:24px 0 12px;font-size:clamp(1.4rem,2vw,1.85rem)}
.sleep-appliance__steps p{color:#515a70;line-height:1.68}

.sleep-care{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:center;gap:clamp(48px,8vw,120px);padding:clamp(88px,9vw,150px) clamp(24px,7vw,132px);background:var(--white)}
.sleep-care__panel{padding:clamp(30px,4vw,54px);border-left:4px solid var(--gold-light);background:var(--ivory);box-shadow:0 20px 50px rgba(19,36,63,.07)}

.sleep-collaboration{background:#eef4f5}
.sleep-collaboration__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sleep-collaboration__grid article{padding:clamp(30px,3.2vw,46px);border:1px solid rgba(32,41,85,.12);background:var(--white)}
.sleep-collaboration__grid .heading{margin:0 0 14px;font-size:clamp(1.4rem,1.9vw,1.9rem);line-height:1.22}
.sleep-collaboration__grid p{color:#515a70;line-height:1.72}

.sleep-faq{background:var(--ivory)}
.sleep-faq__list{display:grid;max-width:1060px;margin:auto;border-top:1px solid rgba(32,41,85,.2)}
.sleep-faq details{padding:0 4px;border-bottom:1px solid rgba(32,41,85,.2)}
.sleep-faq summary{padding:24px 48px 24px 0;color:var(--navy);font-family:var(--display);font-size:clamp(1.25rem,2vw,1.7rem);cursor:pointer}
.sleep-faq details p{padding:0 0 26px;color:#515a70;line-height:1.75}
.sleep-option a:focus-visible,.sleep-faq summary:focus-visible{outline:3px solid var(--azure);outline-offset:4px}

@media(max-width:1050px){.sleep-signs__grid,.sleep-collaboration__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sleep-appliance__steps{grid-template-columns:repeat(2,minmax(0,1fr))}.sleep-appliance__steps article:nth-child(2){border-right:0}.sleep-appliance__steps article:nth-child(-n+2){border-bottom:1px solid rgba(32,41,85,.18)}}
@media(max-width:900px){.sleep-impact,.sleep-evaluation,.sleep-options__grid,.sleep-care{grid-template-columns:1fr;gap:48px}.sleep-media{order:-1}}
@media(max-width:680px){.sleep-impact,.sleep-care{padding:76px 22px}:where(.sleep-signs,.sleep-impact,.sleep-evaluation,.sleep-options,.sleep-appliance,.sleep-care,.sleep-collaboration,.sleep-faq) .heading{font-size:clamp(2.55rem,12vw,4rem)}:where(.sleep-signs,.sleep-impact,.sleep-evaluation,.sleep-options,.sleep-appliance,.sleep-care,.sleep-collaboration,.sleep-faq) .heading em{font-size:clamp(2.65rem,13vw,4rem)}.sleep-signs__grid,.sleep-impact__grid,.sleep-appliance__steps,.sleep-collaboration__grid{grid-template-columns:1fr}.sleep-impact__grid article{min-height:0}.sleep-signs__grid .heading,.sleep-impact__grid .heading,.sleep-option .heading,.sleep-appliance__steps .heading,.sleep-collaboration__grid .heading{font-size:clamp(1.4rem,7vw,2rem)}.sleep-evaluation__content li{grid-template-columns:1fr;gap:5px}.sleep-media,.sleep-media img{min-height:380px}.sleep-appliance__steps article{border-right:0;border-bottom:1px solid rgba(32,41,85,.18)}.sleep-appliance__steps article:last-child{border-bottom:0}}
@media(prefers-reduced-motion:reduce){.sleep-signs__grid article,.sleep-option,.sleep-option img{transition:none}}
