/* Delicate holiday light: luminous, spare and integrated with the interface. */
.hero{isolation:isolate}.hero:before{inset:-30px -4% 0;background:radial-gradient(circle at 87% 8%,#d7eef860 0 2%,transparent 6%),radial-gradient(circle at 92% 18%,#fffef4b0 0 1%,transparent 5%),radial-gradient(circle at 72% 3%,#eaf4f775 0 1%,transparent 5%),radial-gradient(circle at 7% 54%,#f6f4e957 0 1%,transparent 5%),radial-gradient(ellipse at 88% 40%,#e2eff75e,transparent 57%);filter:blur(14px);z-index:-1;pointer-events:none}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 98% 45%,#ddf0f84d,transparent 8%),radial-gradient(circle at 6% 87%,#ecebdc3d,transparent 6%);filter:blur(18px);z-index:-1}.tone .door{clip-path:none}.tone .card-interior img{height:100%;width:100%;position:static;object-fit:cover}.advent-card{isolation:initial}.door{isolation:isolate}.foil-sweep{position:absolute;inset:-20% -80%;width:220%;height:150%;z-index:4;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#b5c4d200 38%,#d4dee854 43%,#fffdfadb 48%,#e5f0f99c 52%,#9eafc529 57%,transparent 65%);mix-blend-mode:screen;opacity:0;transform:translateX(-62%);transition:opacity .2s}.advent-card:is(:hover,:focus-visible) .foil-sweep{animation:silver-opening 1.05s cubic-bezier(.2,.7,.2,1) both}.door-star{position:absolute;right:20px;top:23px;width:13px;height:13px;color:#b0c3d0;opacity:.6;pointer-events:none}.door-star svg,.winter-star svg,.product-star svg{width:100%;height:100%;display:block;fill:currentColor}.main-card .door-star{color:#d7f5ff;opacity:.76}.advent-card:is(:hover,:focus-visible) .door-star{color:#fff;filter:drop-shadow(0 0 4px #fff);transform:scale(1.15);transition:transform .5s,color .5s}.quest-done .door-star{opacity:0}.seen-dot{right:16px;top:18px}
.winter-star{display:inline-block;width:17px;height:17px;flex:0 0 auto;position:relative;pointer-events:none;line-height:0;transition:transform .45s,filter .45s}.button>.winter-star{width:19px;height:19px;opacity:.92}.button{position:relative;isolation:isolate;overflow:hidden}.button:before{content:'';position:absolute;inset:-40% -60%;pointer-events:none;background:linear-gradient(112deg,transparent 43%,#e4f7ff57 48%,#ffffff73 50%,transparent 58%);transform:translateX(-80%);opacity:0;z-index:-1}.button:is(:hover,:focus-visible):before{animation:button-sheen .8s ease-out both}.button:is(:hover,:focus-visible)>.winter-star{transform:rotate(90deg) scale(1.12);filter:drop-shadow(0 0 5px #fff8)}.text-link,.guide-link{display:inline-flex;align-items:center;gap:10px}.text-link>.winter-star,.guide-link>.winter-star{width:11px;height:11px;color:#76b8d0;opacity:.85}.text-link:is(:hover,:focus-visible) .winter-star{transform:rotate(90deg);filter:drop-shadow(0 0 3px #d8f6ff)}.expert-video>.winter-star{margin-left:auto;color:#5faccc}.product-link{display:flex;justify-content:center;gap:9px;align-items:center}.product-link>.winter-star{width:10px;height:10px;opacity:.55}.product{position:relative;border:1px solid transparent;border-radius:12px;transition:transform .4s,border-color .4s,box-shadow .4s;background:transparent}.product:before{content:'';position:absolute;inset:10px;border:1px solid #d8e7ef;border-radius:8px;opacity:0;transition:opacity .4s;pointer-events:none}.product:is(:hover,:focus-visible){transform:translateY(-5px);box-shadow:0 13px 32px #799aaf0e}.product:is(:hover,:focus-visible):before{opacity:1}.product-star{width:16px;height:16px;position:absolute;top:32px;right:29px;color:#8fc1d3;opacity:0;transform:scale(.6) rotate(-30deg);transition:opacity .4s,transform .5s;pointer-events:none}.product:is(:hover,:focus-visible) .product-star{opacity:.9;transform:scale(1) rotate(0deg);filter:drop-shadow(0 0 5px #dff6ff)}.patient-image{isolation:isolate}.patient-image:after{content:'';position:absolute;inset:-15px;border:1px solid #e2eaf0;border-radius:6px;pointer-events:none;z-index:-1}.skin-lens{box-shadow:0 8px 32px #8faebe24,0 0 24px #f0faff7a}.method-story{position:relative}.method-story:before{content:'';position:absolute;left:17%;top:-20px;width:250px;height:250px;background:radial-gradient(circle at 70% 20%,#e8f5fc76,transparent 20%),radial-gradient(circle at 40% 65%,#f9f1d34d,transparent 17%);filter:blur(22px);z-index:-1;pointer-events:none}
/* A collectible, foil-embossed booklet rather than four progress bars. */
.progress-section{gap:80px}.progress-panel{padding:36px 40px 29px;border:1px solid #d5e2ec;border-radius:14px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 82% 15%,#fffefb,transparent 40%),linear-gradient(120deg,#fff,#edf6fc 52%,#fbfdff);box-shadow:0 15px 45px #4e6c8310,inset 0 0 0 6px #fdfefe,inset 0 0 0 7px #dfe9f0;overflow:hidden}.progress-panel:before{content:'';position:absolute;top:0;left:14px;bottom:0;width:2px;background:linear-gradient(#eaf2f7,#bacbd966,#fff,#bacbd966);box-shadow:3px 0 #fff;pointer-events:none}.progress-panel:after{content:'';position:absolute;right:-40px;top:-60px;width:250px;height:250px;border:1px solid #e4ebf14d;border-radius:50%;box-shadow:0 0 0 20px #f8fbfd48,0 0 0 21px #e2ebf13d;z-index:-1;pointer-events:none}.passport-heading{position:relative;text-align:center;margin-bottom:26px}.passport-heading .panel-eyebrow{font-size:8px;letter-spacing:.19em;margin-bottom:12px;color:#7393a9}.passport-heading h3{font:400 34px/1.1 var(--serif);letter-spacing:-.02em;color:#163c53}.passport-heading h3 em{font-weight:400}.passport-edition{display:block;margin-top:12px;font-size:9px;letter-spacing:.08em;color:#89a1b1}.passport-heading:after{content:'✧';position:absolute;right:0;top:19px;color:#b5cbd9;font-size:19px;text-shadow:0 1px white}#progress-chapters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 36px;padding:10px 0 25px}.passport-seal{padding:0;background:transparent;display:flex;align-items:center;flex-direction:column;position:relative;gap:6px}.seal-medallion{width:87px;height:87px;display:flex;align-items:center;justify-content:center;border:1px solid #bdcdd9;border-radius:50%;position:relative;color:#8fa6b7;background:linear-gradient(145deg,#fff 6%,#edf2f6 45%,#fff 67%,#dbe6ee 100%);box-shadow:inset 0 0 0 6px #f8fbfd,inset 0 0 0 7px #d3dfe8,0 5px 13px #52718a0b;transition:transform .45s,box-shadow .45s,border-color .45s}.seal-medallion>svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.05;margin-bottom:10px;filter:drop-shadow(0 1px #fff)}.seal-number{position:absolute;bottom:15px;left:0;right:0;line-height:1;font:400 15px var(--serif);color:#91a8b8;text-align:center}.passport-seal strong{font-weight:400;font-size:12px;margin-top:5px;color:#59798e}.passport-seal small{font-size:8px;letter-spacing:.025em;color:#95a9b7}.passport-seal:is(:hover,:focus-visible) .seal-medallion{transform:translateY(-3px) rotate(7deg);box-shadow:inset 0 0 0 6px #fff,inset 0 0 0 7px #c6dce8,0 6px 22px #8bb5cf29;border-color:#9bcbe0}.passport-seal.collected .seal-medallion{border-color:var(--chapter-color);color:var(--chapter-color);background:linear-gradient(135deg,#fff,#f1f8fa);box-shadow:inset 0 0 0 6px #fff,inset 0 0 0 7px #cddfe9,0 0 20px #98c2d528}.passport-seal.collected .seal-number{color:var(--chapter-color)}.passport-seal.collected small{color:#5592a7}.progress-status{text-align:center;border-top:1px solid #dce7ef;padding-top:21px;margin-top:0;font-size:24px}.progress-panel .small-note{text-align:center;max-width:370px;margin:15px auto 0;font-size:9px;line-height:1.6}.closed-box{max-width:890px;margin-top:14px}.closed-box img{mask-image:linear-gradient(to bottom,transparent 0%,#000 10%,#000 87%,transparent 100%);width:100%;aspect-ratio:3/2;object-fit:contain}.closed-box figcaption{margin-top:-25px}.closing>.guide-link{display:flex;width:max-content;margin:25px auto 0}.extra-return{display:flex}.final-score>.text-link{display:flex}.tone .door{clip-path:none!important}
@keyframes silver-opening{0%{opacity:0;transform:translateX(-65%)}15%{opacity:.75}70%{opacity:.65}100%{opacity:0;transform:translateX(65%)}}@keyframes button-sheen{0%{opacity:0;transform:translateX(-75%)}20%{opacity:.75}100%{opacity:0;transform:translateX(75%)}}
@media(max-width:1000px) and (min-width:761px){.progress-section{gap:40px}.progress-panel{padding-inline:28px}.passport-heading h3{font-size:30px}#progress-chapters{gap:24px 20px}}
@media(max-width:760px){.door-star{right:15px;top:23px;width:11px;height:11px}.seen-dot{right:12px;top:16px}.progress-panel{padding:31px 28px 28px;max-width:500px;width:100%;margin:auto}.passport-heading h3{font-size:31px}.passport-heading .panel-eyebrow{font-size:7px}.passport-heading:after{right:0;font-size:17px}.passport-edition{font-size:8px}#progress-chapters{gap:24px 22px}.seal-medallion{width:80px;height:80px}.seal-medallion>svg{width:32px;height:32px}.progress-status{font-size:23px}.product:before{inset:4px}.product-star{top:21px;right:15px;width:12px;height:12px}.closed-box{margin-top:12px}.closed-box img{width:100%;margin:0;aspect-ratio:3/2}.closed-box figcaption{margin-top:-10px}.patient-image:after{inset:-8px}.hero:before{inset:0}.button>.winter-star{width:17px;height:17px}.text-link>.winter-star{width:10px;height:10px}}
@media(prefers-reduced-motion:reduce){.advent-card:is(:hover,:focus-visible) .foil-sweep,.button:is(:hover,:focus-visible):before{animation:none;opacity:0}.passport-seal:is(:hover,:focus-visible) .seal-medallion,.button:is(:hover,:focus-visible)>.winter-star{transform:none}}
.card-reveal-label{display:flex;align-items:center;justify-content:center;gap:8px}.card-reveal-label>.winter-star{width:11px;height:11px}.choice-card b>.winter-star{width:10px;height:10px;color:#8cb6c8}.advent-card{isolation:isolate}
.hero:before{left:0;right:0}
.passport-seal small{font-size:9px;color:#7893a4}.passport-edition{font-size:10px;color:#7893a4}
