:root{--bg: #ffffff;--text: #0b1220;--muted: rgba(11, 18, 32, .66);--muted2: rgba(11, 18, 32, .52);--border: rgba(15, 23, 42, .12);--border2: rgba(15, 23, 42, .08);--surface: rgba(15, 23, 42, .03);--surface2: rgba(15, 23, 42, .05);--primary: #0a66ff;--primary2: #0a66ff;--primaryInk: #ffffff;--danger: #d92d20;--radiusLg: 20px;--radiusMd: 16px;--radiusSm: 12px;--shadow: 0 20px 60px rgba(2, 6, 23, .1);--shadowSm: 0 8px 24px rgba(2, 6, 23, .08);--focus: 0 0 0 4px rgba(10, 102, 255, .18)}*{box-sizing:border-box}html,body,#root{height:100%}html,body{background:#fff}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text);min-height:100vh;min-height:100dvh}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.55}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html,body{background-color:#fff}.page:has(.klarnaBannerFixed):before{content:"";position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top,0);background-color:#fff;z-index:10000}.page{background-color:#fff;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;width:100%;max-width:540px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:calc(12px + env(safe-area-inset-top)) 4px calc(12px + env(safe-area-inset-bottom)) 4px;overflow-x:hidden;overflow-y:hidden;position:relative;background:#fff}@media (min-width: 600px){.page{padding:16px 12px;max-height:850px;height:auto;min-height:0;justify-content:center}.card{max-height:720px}.h1{font-size:clamp(20px,3vw,26px)!important}.p{font-size:14px!important}.optionCard{padding:12px 16px!important}.optionCardLabel{font-size:14px!important}.fieldInput{padding:12px 14px!important;font-size:14px!important}.fieldLabel{font-size:12px!important}.primaryBtn{padding:12px 18px!important;font-size:14px!important}.topLogoImg{height:32px!important}.logo{height:38px!important}.introSlide{max-width:320px!important}.introStat{font-size:18px!important}.introMessage{font-size:13px!important}.introImageWrapper{max-width:280px!important}.introNextBtn{position:static!important;transform:none!important;margin:24px auto 0!important;padding:12px 18px!important;font-size:14px!important;max-width:320px!important;width:calc(100% - 24px)!important}.page:has(.card[data-step=intro]){justify-content:flex-start!important;padding-top:40px!important}.loginPeak{font-size:12px!important;padding:16px 12px calc(16px + env(safe-area-inset-bottom))!important}}.shell{width:100%;max-width:100%;flex:1;display:flex;flex-direction:column;min-height:0}.topLogo{width:100%;display:flex;justify-content:center;padding:16px 0 12px;flex-shrink:0}.topLogoImg{height:40px;width:auto}.logo{height:75px;width:auto;display:block;margin-bottom:16px}.logoMobile{display:block}.logoDesktop{display:none}@media (min-width: 600px){.logoMobile{display:none}.logoDesktop{display:block}}.topBar{margin-bottom:14px}.topBarInner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 2px}.brand{display:flex;gap:10px;align-items:center;min-width:0}.brandMark{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#0a66ff1f;color:var(--primary);font-weight:800;letter-spacing:-.02em}.brandName{font-weight:700;letter-spacing:-.02em;line-height:1.05}.brandSub{font-size:13px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ghostBtn{border:1px solid var(--border);background:#ffffffbf;padding:10px 12px;border-radius:999px;color:var(--text);white-space:nowrap}.ghostBtn:hover{background:#fffffff2;box-shadow:var(--shadowSm)}.progressWrap{padding:0 2px}.progressBar{width:100%;height:10px;background:#0f172a0f;border-radius:999px;overflow:hidden;border:1px solid var(--border2)}.progressFill{height:100%;background:linear-gradient(90deg,#0a66ffd9,#0a66ff);border-radius:999px;transition:width .32s ease}.progressMeta{display:flex;justify-content:space-between;margin-top:8px;color:var(--muted);font-size:13px}.card{background:#ffffffd9;border:1px solid var(--border2);border-radius:var(--radiusLg);box-shadow:var(--shadow);padding:clamp(12px,2vw,16px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex:1;min-height:0;max-height:100%;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:0}.cardHeader{margin-bottom:10px}.h1{margin:0 0 8px;font-size:clamp(22px,4.8vw,28px);letter-spacing:-.02em;line-height:1.15}.p{margin:0;color:var(--muted);font-size:15px;line-height:1.45}.carousel{position:relative;border-radius:18px;background:#0f172a05;border:1px solid rgba(15,23,42,.06);min-height:0;overflow:hidden;isolation:isolate}.track{display:flex;width:100%;height:100%;transition:transform .42s cubic-bezier(.2,.9,.2,1)}.slide{min-width:100%;height:100%;padding:clamp(14px,2.2vw,18px);overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable both-edges}.stack,.optionGrid{display:grid;gap:12px}.optionCard{width:100%;text-align:left;border-radius:18px;border:1px solid rgba(15,23,42,.1);background:#ffffffe6;padding:16px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.optionCard:hover{transform:translateY(-1px);box-shadow:var(--shadowSm);border-color:#0a66ff38}.optionCard.isSelected{border-color:#0a66ff8c;box-shadow:0 14px 36px #0a66ff1f}.optionCardRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.optionCardLabel{font-weight:650;letter-spacing:-.01em;font-size:16px}.optionCardDesc{margin-top:4px;color:var(--muted);font-size:13px;line-height:1.35}.optionDot{width:22px;height:22px;border-radius:999px;border:1px solid rgba(15,23,42,.18);display:grid;place-items:center;flex:0 0 auto}.optionDotInner{width:10px;height:10px;border-radius:999px;background:transparent}.optionDot.isSelected{border-color:#0a66ff99;box-shadow:0 0 0 4px #0a66ff1f}.optionDot.isSelected .optionDotInner{background:var(--primary)}.field{display:grid;gap:6px;position:relative}.fieldLabel{font-size:13px;color:var(--muted);font-weight:600}.fieldHelp{font-size:12px;color:var(--muted2)}.fieldInput{width:100%;border-radius:14px;border:1px solid rgba(15,23,42,.14);padding:12px;background:#ffffffeb;outline:none;transition:box-shadow .14s ease,border-color .14s ease;font-size:16px}.fieldInput:focus{border-color:#0a66ff8c;box-shadow:var(--focus)}.fieldSelect{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.fieldSelect:focus{border-color:#0a66ff8c;box-shadow:var(--focus)}.fieldInput[type=date]{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:linear-gradient(135deg,#fffffffa,#f8fafcf2);border:2px solid rgba(10,102,255,.25);border-radius:16px;padding:16px 44px 16px 16px;font-weight:600;color:var(--text);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%230a66ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:20px;box-shadow:0 4px 12px #0a66ff14}.fieldInput[type=date]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;width:100%;height:100%;cursor:pointer}.fieldInput[type=date]:focus{border-color:#0a66ff99;box-shadow:var(--focus),0 6px 16px #0a66ff1f}.fieldInput[type=date]:not(:valid):not(:focus){color:var(--muted)}.fieldInput[type=date]:before{content:attr(placeholder);color:var(--muted)}.fieldInput[type=date]:valid:before{display:none}.metricsGrid,.formGrid{display:grid;gap:14px}.heightRow{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bmiWidget{display:grid;grid-template-columns:140px 1fr;gap:14px;align-items:center}.bmiCircle{width:140px;height:140px;border-radius:999px;border:1px solid rgba(10,102,255,.28);background:radial-gradient(120px 120px at 50% 30%,#0a66ff24,#ffffffe6);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px #0a66ff1a}.bmiValue{font-size:30px;font-weight:800;letter-spacing:-.03em}.bmiMetaTitle{font-weight:700;letter-spacing:-.01em;margin-bottom:4px}.bmiMetaSub{color:var(--muted);line-height:1.4}.addressGrid{display:grid;gap:14px}.addressRow3{display:grid;grid-template-columns:1fr 120px 140px;gap:10px}.addressAutocomplete{position:relative}.addressSuggestions{position:absolute;top:100%;left:0;right:0;margin:4px 0 0;padding:6px 0;list-style:none;background:#fffffffa;border:1px solid rgba(15,23,42,.12);border-radius:14px;box-shadow:0 12px 32px #0000001f;z-index:100;max-height:240px;overflow-y:auto;-webkit-overflow-scrolling:touch}.addressSuggestion{padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:background .1s ease}.addressSuggestion:hover,.addressSuggestion:focus{background:#a9c27f26}.addressSuggestion:active{background:#a9c27f40}.suggestionMain{font-weight:600;color:var(--text);font-size:15px}.suggestionSecondary{font-size:13px;color:var(--muted)}.noteBox{border-radius:14px;border:1px solid rgba(10,102,255,.18);background:#0a66ff0f;padding:10px 12px}.noteTitle{font-weight:700;letter-spacing:-.01em;margin-bottom:2px;font-size:13px}.noteText{color:var(--muted);line-height:1.4;font-size:13px}.reviewCard{border-radius:18px;border:1px solid rgba(15,23,42,.1);background:#ffffffeb;padding:12px 14px}.reviewRow{display:grid;grid-template-columns:190px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid rgba(15,23,42,.06)}.reviewRow:last-child{border-bottom:none}.reviewRow span{color:var(--muted);font-size:13px;font-weight:650}.reviewRow strong{font-size:14px;line-height:1.45}.errorInline,.inlineError{margin-top:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(217,45,32,.25);background:#d92d200f;color:#d92d20;font-weight:600;font-size:14px}.errorBox{border-radius:18px;border:1px solid rgba(217,45,32,.22);background:#d92d200f;padding:14px}.errorTitle{font-weight:800;margin-bottom:6px}.errorText{color:#d92d20f2;line-height:1.4}.navBar{display:flex;justify-content:space-between;gap:10px;padding-top:12px;padding-bottom:env(safe-area-inset-bottom);flex-shrink:0}.navBarCentered{justify-content:center}.primaryBtnFull{width:100%;max-width:400px}.primaryBtn{border:none;background:#a9c27f;color:#fff;padding:12px 16px;border-radius:999px;font-weight:700;letter-spacing:-.01em;box-shadow:0 14px 36px #a9c27f59;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;min-height:48px}.primaryBtn:hover{transform:translateY(-1px);filter:brightness(.95);box-shadow:0 18px 40px #a9c27f73}.primaryBtn:focus{outline:none;box-shadow:0 0 0 4px #a9c27f4d,0 18px 40px #a9c27f73}.secondaryBtn{border:1px solid rgba(15,23,42,.12);background:#ffffffd9;color:var(--text);padding:12px 16px;border-radius:999px;font-weight:700;letter-spacing:-.01em;min-height:48px}.secondaryBtn:hover{box-shadow:var(--shadowSm);transform:translateY(-1px)}.footerMeta{margin-top:14px;text-align:center;color:var(--muted2);font-size:12px}.loginPeak{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:540px;display:flex;align-items:center;justify-content:center;padding:24px 16px calc(24px + env(safe-area-inset-bottom));background:transparent;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top-left-radius:24px;border-top-right-radius:24px;font-size:14px;color:#1a1a1a;z-index:100}.loginPeakLink{color:#1a1a1a;font-weight:600;text-decoration:underline;text-underline-offset:2px}.finePrint{color:var(--muted);font-size:12.5px;line-height:1.45}.inlineLink{color:var(--primary);text-decoration:underline;text-underline-offset:2px}.checkRow{display:flex;gap:10px;align-items:flex-start;border-radius:18px;border:1px solid rgba(15,23,42,.1);background:#ffffffeb;padding:14px}.checkRow input{margin-top:2px;width:18px;height:18px;accent-color:var(--primary)}.checkRowLabel{font-size:14px;line-height:1.45;color:var(--text)}.fieldTextarea{min-height:120px;resize:vertical}.medForm{border-radius:18px;border:1px solid rgba(15,23,42,.1);background:#ffffffeb;padding:14px;display:grid;gap:12px}.medFormActions{display:flex;gap:10px;justify-content:flex-end}.medList{border-radius:18px;border:1px solid rgba(15,23,42,.1);background:#ffffffeb;overflow:hidden}.medRow{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid rgba(15,23,42,.06)}.medRow:first-child{border-top:none}.medName{font-weight:700;letter-spacing:-.01em}.medMeta{color:var(--muted);font-size:13px;margin-top:2px}.iconBtn{background:transparent;border:1px solid rgba(15,23,42,.12);padding:8px 10px;border-radius:999px;color:var(--text);font-weight:700;cursor:pointer}.iconBtn:hover{border-color:#0a66ff66;box-shadow:0 12px 28px #0a66ff1a}.detailsBox{border-radius:18px;border:1px solid rgba(15,23,42,.1);background:#ffffffeb;overflow:hidden}.detailsSummary{cursor:pointer;padding:14px;font-weight:800;letter-spacing:-.01em;list-style:none;display:flex;align-items:center;justify-content:space-between}.detailsSummary::-webkit-details-marker{display:none}.detailsSummary:after{content:"▾";color:var(--muted);font-size:14px;transition:transform .2s ease}details[open] .detailsSummary:after{transform:rotate(180deg)}.detailsBody{padding:0 14px 14px;color:var(--muted);line-height:1.55;font-size:14px}.clerkWrap{width:100%}.authFlow{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%}.authGoogleSection{width:100%;max-width:320px}.authEmailLink{background:transparent;border:none;color:var(--muted);font-size:15px;font-weight:500;cursor:pointer;padding:8px 16px;transition:color .15s ease}.authEmailLink:hover{color:var(--primary)}.authEmailHeader{width:100%;margin-bottom:8px}.authBackBtn{background:transparent;border:none;color:var(--muted);font-size:15px;font-weight:600;cursor:pointer;padding:8px 0;transition:color .15s ease}.authBackBtn:hover{color:var(--text)}.authEmailTabs{display:flex;gap:8px;width:100%;margin-bottom:8px}.authEmailTab{flex:1;text-align:center;padding:12px 16px;border:2px solid rgba(15,23,42,.1);border-radius:999px;background:#fff;font-size:14px;font-weight:700;color:var(--muted);cursor:pointer;transition:all .15s ease}.authEmailTab:hover{border-color:#0f172a33}.authEmailTab.isActive{background:var(--primary);border-color:var(--primary);color:#fff}.authEmailForm{width:100%;display:flex;flex-direction:column;gap:20px}.authEmailForm .field{margin-bottom:0}.authEmailForm .primaryBtn{margin-top:4px}.authDivider{display:flex;align-items:center;width:100%;gap:12px;margin:4px 0}.authDividerLine{flex:1;height:1px;background:#0f172a1a}.authDividerText{font-size:13px;color:var(--muted);font-weight:500}.authLoading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--muted);font-size:15px}.authLoadingSpinner{width:32px;height:32px;border:3px solid rgba(10,102,255,.15);border-top-color:var(--primary);border-radius:999px;animation:authSpin .8s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}.authSuccess{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px}.authSuccessIcon{width:56px;height:56px;border-radius:999px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #10b9814d}.authSuccessText{font-size:15px;color:var(--muted);text-align:center}.authNotice{text-align:center;color:var(--muted);font-size:15px;padding:20px}.googleBtn{display:flex;align-items:center;justify-content:center;width:100%;max-width:320px;padding:16px 24px;border-radius:999px;border:2px solid rgba(15,23,42,.1);background:#fff;font-size:17px;font-weight:600;color:var(--text);cursor:pointer;box-shadow:0 4px 20px #0000000f;transition:all .18s ease}.googleBtn:hover{border-color:#0f172a33;box-shadow:0 8px 30px #0000001a;transform:translateY(-1px)}.googleBtn:active{transform:translateY(0)}.googleBtn:disabled{opacity:.7;cursor:not-allowed;transform:none}.authError{width:100%;padding:12px 16px;border-radius:14px;background:#d92d2014;border:1px solid rgba(217,45,32,.2);color:#d92d20;font-size:14px;font-weight:500;text-align:center}.incognitoWarning{width:100%;padding:16px;border-radius:14px;background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:1px solid #FFB74D;display:flex;align-items:flex-start;gap:12px;margin-bottom:8px}.incognitoWarningIcon{font-size:24px;line-height:1;flex-shrink:0}.incognitoWarningText{font-size:13px;color:#e65100;line-height:1.5}.incognitoWarningText strong{font-weight:600;color:#bf360c}.verifyNotice{text-align:center;font-size:15px;color:var(--muted);padding:8px 0 16px}.verifyNotice strong{color:var(--text)}@media (max-width: 720px){.addressRow3{grid-template-columns:1fr 110px}.addressRow3>:nth-child(3){grid-column:1 / -1}.reviewRow{grid-template-columns:1fr;gap:6px}}@media (max-width: 520px){.topBar{margin-bottom:8px}.progressMeta{font-size:12px}.bmiWidget{grid-template-columns:1fr}.bmiCircle{width:100px;height:100px}.bmiValue{font-size:24px}.addressRow3{grid-template-columns:1fr}.navBar{flex-direction:row;gap:8px}.navBar>button{flex:1;padding:12px 10px}.h1{font-size:20px}.p{font-size:14px}}@media (prefers-reduced-motion: reduce){.track,.optionCard,.primaryBtn,.secondaryBtn{transition:none}.optionCard:hover,.primaryBtn:hover,.secondaryBtn:hover{transform:none}}.card[data-step=goal]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=goal] .carousel{background:transparent;border:none}.card[data-step=goal] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=goal] .h1{font-size:clamp(28px,7vw,38px);text-align:left;margin-bottom:12px}.card[data-step=goal] .p{font-size:17px;text-align:left}.card[data-step=goal] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=goal] .navBar,.card[data-step=goal] .footerMeta{display:none}.card[data-step=sex]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=sex] .carousel{background:transparent;border:none}.card[data-step=sex] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=sex] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=sex] .h1{font-size:clamp(28px,7vw,38px);text-align:left;margin-bottom:12px}.card[data-step=sex] .navBar,.card[data-step=sex] .footerMeta{display:none}.slide[data-step=sex] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=sex] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=sex] .optionCard:hover{background:#fff;border-color:#a9c27f;box-shadow:none}.slide[data-step=sex] .optionCard:active,.slide[data-step=sex] .optionCard.isSelected{background:#fff;border:2px solid #A9C27F;padding:15px 19px;box-shadow:none}.slide[data-step=sex] .optionDot{display:none}.slide[data-step=sex] .optionCardLabel{font-size:16px;font-weight:600;color:#1a1a1a}.card[data-step=priorMeds]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=priorMeds] .carousel{background:transparent;border:none}.card[data-step=priorMeds] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=priorMeds] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=priorMeds] .h1{font-size:clamp(28px,7vw,38px);text-align:left;margin-bottom:12px}.card[data-step=priorMeds] .navBar,.card[data-step=priorMeds] .footerMeta{display:none}.slide[data-step=priorMeds] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=priorMeds] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=priorMeds] .optionCard:hover{background:#fff;border-color:#a9c27f;box-shadow:none}.slide[data-step=priorMeds] .optionCard:active,.slide[data-step=priorMeds] .optionCard.isSelected{background:#fff;border:2px solid #A9C27F;padding:15px 19px;box-shadow:none}.slide[data-step=priorMeds] .optionDot{display:none}.slide[data-step=priorMeds] .optionCardLabel{font-size:16px;font-weight:600;color:#1a1a1a}.card[data-step=metrics]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=metrics] .carousel{background:transparent;border:none}.card[data-step=metrics] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=metrics] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=metrics] .h1{font-size:clamp(28px,7vw,38px);text-align:left;margin-bottom:12px}.card[data-step=metrics] .footerMeta{display:none}.slide[data-step=metrics] .bmiWidget{grid-template-columns:1fr;justify-items:center;text-align:center;gap:12px;padding:0 0 20px;width:calc(100% - 16px);margin:0 auto}.slide[data-step=metrics] .bmiCircle{width:100px;height:100px;background:#fff;border:1px solid #A9C27F;box-shadow:none}.slide[data-step=metrics] .bmiValue{font-size:28px;color:#1a1a1a}.slide[data-step=metrics] .formGrid{width:calc(100% - 16px);margin:0 auto;gap:12px}.slide[data-step=metrics] .fieldInput{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px 18px;font-size:16px;font-weight:500;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=metrics] .fieldInput:focus{outline:none;border:2px solid #A9C27F;padding:15px 17px}.slide[data-step=metrics] .fieldInput::placeholder{color:#0f172a59;font-weight:400}.slide[data-step=metrics] .fieldLabel{font-size:13px;font-weight:600;color:#1a1a1a}.card[data-step=address]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=address] .carousel{background:transparent;border:none}.card[data-step=address] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=address] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=address] .h1{font-size:clamp(26px,6vw,34px);text-align:left;margin-bottom:6px}.card[data-step=address] .p{font-size:15px;color:var(--muted)}.card[data-step=address] .footerMeta{display:none}.slide[data-step=address] .addressGrid{width:calc(100% - 16px);margin:0 auto;gap:12px}.addressNameRow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.slide[data-step=address] .fieldInput,.slide[data-step=address] .fieldSelect{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px 18px;font-size:16px;font-weight:500;box-shadow:none}.slide[data-step=address] .fieldInput:focus,.slide[data-step=address] .fieldSelect:focus{outline:none;border:2px solid #A9C27F;padding:15px 17px;box-shadow:0 0 0 3px #a9c27f4d}.slide[data-step=address] .fieldInput::placeholder{color:#0f172a59;font-weight:400}.slide[data-step=address] .fieldLabel{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:6px}.slide[data-step=address] .addressRow3{display:grid;grid-template-columns:1fr;gap:12px}.slide[data-step=address] .addressSuggestions{background:#fff;border:1px solid #A9C27F;border-radius:14px;box-shadow:0 8px 32px #00000014;margin-top:8px}.slide[data-step=address] .addressSuggestion{padding:14px 16px}.slide[data-step=address] .addressSuggestion:first-child{border-radius:14px 14px 0 0}.slide[data-step=address] .addressSuggestion:last-child{border-radius:0 0 14px 14px}.slide[data-step=address] .suggestionMain{font-weight:600;font-size:15px}.slide[data-step=address] .suggestionSecondary{font-size:13px;color:var(--muted)}.card[data-step=account]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=account] .carousel{background:transparent;border:none}.card[data-step=account] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=account] .h1{font-size:clamp(26px,6vw,34px);text-align:left;margin-bottom:8px}.card[data-step=account] .p{font-size:15px;text-align:left}.card[data-step=account] .footerMeta{display:none}.slide[data-step=account] .checkRow{background:#fff;border:1px solid #A9C27F;border-radius:14px;margin-bottom:20px}.slide[data-step=account] .checkRowLabel{color:#1a1a1a}.slide[data-step=goal] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=goal] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=goal] .optionCard:hover{background:#fff;border-color:#a9c27f;box-shadow:none}.slide[data-step=goal] .optionCard:active,.slide[data-step=goal] .optionCard.isSelected{background:#fff;border:2px solid #A9C27F;padding:15px 19px;box-shadow:none}.slide[data-step=goal] .optionDot{display:none}.slide[data-step=goal] .optionCardLabel{font-size:16px;font-weight:600;color:#1a1a1a}.card[data-step=intro]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=intro] .carousel{background:transparent;border:none}.card[data-step=intro] .cardHeader,.card[data-step=intro] .footerMeta,.card[data-step=intro] .navBar{display:none}.introSlide{display:flex;flex-direction:column;align-items:center;text-align:left;padding:0 16px;gap:12px;width:100%;max-width:370px;margin:0 auto}.introStat{font-size:22px;font-weight:600;color:#1a1a1a;line-height:1.3;margin:0;width:100%}.introMessage{font-size:15px;font-weight:500;color:var(--muted);margin:0 0 8px;line-height:1.4;width:100%}.introImageWrapper{width:100%;max-width:370px;aspect-ratio:1;border-radius:20px;overflow:hidden;border:none}.introImage{width:100%;height:100%;object-fit:cover}.introNextBtn{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:396px;background:#a9c27f;color:#fff;border:none;border-radius:14px;padding:14px 28px;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 14px 36px #a9c27f59;transition:box-shadow .1s ease;z-index:100}.introNextBtn:hover{box-shadow:0 18px 40px #a9c27f73}.introNextBtn:active{box-shadow:0 8px 20px #a9c27f4d}.card[data-step=dob]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=dob] .carousel{background:transparent;border:none}.card[data-step=dob] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=dob] .h1{font-size:clamp(28px,7vw,38px);text-align:left;margin-bottom:12px}.card[data-step=dob] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=dob] .footerMeta{display:none}.dobPicker{display:flex;flex-direction:column;align-items:flex-start;padding:0;gap:16px;width:calc(100% - 16px);margin:0 auto;box-sizing:border-box}.dobInputWrapper{position:relative;width:100%}.dobInput{-moz-appearance:none;appearance:none;-webkit-appearance:none;font-family:inherit;font-size:18px;font-weight:600;letter-spacing:.02em;color:var(--text);background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px 50px 16px 18px;text-align:left;box-shadow:none;transition:all .2s ease;width:100%;box-sizing:border-box}.dobInput::placeholder{color:#0f172a59;font-weight:400}.dobInput:focus{outline:none;border:2px solid #A9C27F;padding:15px 49px 15px 17px}.dobCalendarBtn{position:absolute;right:12px;top:50%;transform:translateY(-50%);padding:8px;cursor:pointer;color:#1a1a1a;display:flex;align-items:center;justify-content:center}.dobCalendarBtn:hover{color:#000}.dobCalendarBtn svg{width:24px;height:24px;pointer-events:none}.dobNativeInput{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.card[data-step=basics]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=basics] .carousel{background:transparent;border:none}.card[data-step=basics] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=basics] .h1{font-size:clamp(26px,6vw,34px);text-align:left;margin-bottom:6px}.card[data-step=basics] .p{font-size:15px;color:var(--muted);text-align:left}.card[data-step=basics] .footerMeta{display:none}.basicsForm{display:flex;flex-direction:column;gap:20px;padding:0 8px}.basicsInputs{display:flex;flex-direction:column;gap:12px}.slide[data-step=basics] .fieldInput{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px 18px;font-size:16px;color:#1a1a1a;box-shadow:none}.slide[data-step=basics] .fieldInput:focus{outline:none;border:2px solid #A9C27F;padding:15px 17px;box-shadow:0 0 0 3px #a9c27f4d}.slide[data-step=basics] .fieldInput::placeholder{color:#0f172a59;font-weight:400}.slide[data-step=basics] .fieldLabel{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:6px}.basicsDisclaimer{font-size:11px;line-height:1.5;color:var(--muted);margin:0}.card[data-step=currentMeds]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=currentMeds] .carousel{background:transparent;border:none}.card[data-step=currentMeds] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=currentMeds] .h1{font-size:clamp(22px,5vw,28px);text-align:left;margin-bottom:6px}.card[data-step=currentMeds] .p{font-size:14px;color:var(--muted);text-align:left}.card[data-step=currentMeds] .footerMeta{display:none}.slide[data-step=currentMeds] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=currentMeds] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=currentMeds] .optionCard.isSelected{border:2px solid #A9C27F;padding:15px 19px}.slide[data-step=currentMeds] .optionDot{display:none}.slide[data-step=currentMeds] .optionCardLabel{font-size:15px;font-weight:600;color:#1a1a1a}.slide[data-step=currentMeds] .fieldInput{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px 18px;font-size:16px;color:#1a1a1a;box-shadow:none}.slide[data-step=currentMeds] .fieldInput:focus{outline:none;border:2px solid #A9C27F;padding:15px 17px}.slide[data-step=currentMeds] .fieldLabel{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:6px}.card[data-step=allergies]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=allergies] .carousel{background:transparent;border:none}.card[data-step=allergies] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=allergies] .h1{font-size:clamp(22px,5vw,28px);text-align:left;margin-bottom:6px}.card[data-step=allergies] .p{font-size:14px;color:var(--muted);text-align:left}.card[data-step=allergies] .footerMeta{display:none}.slide[data-step=allergies] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=allergies] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=allergies] .optionCard.isSelected{border:2px solid #A9C27F;padding:15px 19px}.slide[data-step=allergies] .optionDot{display:none}.slide[data-step=allergies] .optionCardLabel{font-size:15px;font-weight:600;color:#1a1a1a}.card[data-step=conditionsOrSurgeries]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=conditionsOrSurgeries] .carousel{background:transparent;border:none}.card[data-step=conditionsOrSurgeries] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=conditionsOrSurgeries] .h1{font-size:clamp(20px,4.5vw,26px);text-align:left;margin-bottom:6px}.card[data-step=conditionsOrSurgeries] .p{font-size:14px;color:var(--muted);text-align:left}.card[data-step=conditionsOrSurgeries] .footerMeta{display:none}.slide[data-step=conditionsOrSurgeries] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=conditionsOrSurgeries] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=conditionsOrSurgeries] .optionCard.isSelected{border:2px solid #A9C27F;padding:15px 19px}.slide[data-step=conditionsOrSurgeries] .optionDot{display:none}.slide[data-step=conditionsOrSurgeries] .optionCardLabel{font-size:15px;font-weight:600;color:#1a1a1a}.slide[data-step=conditionsOrSurgeries] .fieldInput,.slide[data-step=conditionsOrSurgeries] textarea{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px 18px;font-size:16px;color:#1a1a1a;box-shadow:none;width:100%;font-family:inherit}.slide[data-step=conditionsOrSurgeries] .fieldInput:focus,.slide[data-step=conditionsOrSurgeries] textarea:focus{outline:none;border:2px solid #A9C27F;padding:15px 17px}.slide[data-step=conditionsOrSurgeries] .fieldLabel{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:6px}.card[data-step=medicalHistory]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=medicalHistory] .carousel{background:transparent;border:none}.card[data-step=medicalHistory] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=medicalHistory] .h1{font-size:clamp(20px,4.5vw,26px);text-align:left;margin-bottom:6px}.card[data-step=medicalHistory] .p{font-size:14px;color:var(--muted);text-align:left}.card[data-step=medicalHistory] .footerMeta{display:none}.slide[data-step=medicalHistory] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=medicalHistory] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=medicalHistory] .optionCard.isSelected{border:2px solid #A9C27F;padding:15px 19px}.slide[data-step=medicalHistory] .optionDot{display:none}.slide[data-step=medicalHistory] .optionCardLabel{font-size:15px;font-weight:600;color:#1a1a1a}.card[data-step=whatYouShouldKnow]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=whatYouShouldKnow] .carousel{background:transparent;border:none}.card[data-step=whatYouShouldKnow] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=whatYouShouldKnow] .h1{font-size:clamp(22px,5vw,28px);text-align:left;margin-bottom:6px}.card[data-step=whatYouShouldKnow] .p{font-size:14px;color:var(--muted);text-align:left}.card[data-step=whatYouShouldKnow] .footerMeta{display:none}.slide[data-step=whatYouShouldKnow] .detailsBox{background:#fff;border:1px solid #A9C27F;border-radius:14px;overflow:hidden}.slide[data-step=whatYouShouldKnow] .detailsSummary{padding:16px 20px;font-weight:600;color:#1a1a1a;cursor:pointer;list-style:none}.slide[data-step=whatYouShouldKnow] .detailsSummary::-webkit-details-marker{display:none}.slide[data-step=whatYouShouldKnow] .detailsSummary:after{content:"+";float:right;font-size:20px;font-weight:400}.slide[data-step=whatYouShouldKnow] details[open] .detailsSummary:after{content:"−"}.slide[data-step=whatYouShouldKnow] .detailsBody{padding:0 20px 16px;font-size:14px;line-height:1.6;color:var(--muted)}.slide[data-step=whatYouShouldKnow] .checkRow{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:16px}.slide[data-step=whatYouShouldKnow] .checkRowLabel{color:#1a1a1a}.card[data-step=gastricBypass]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=gastricBypass] .carousel{background:transparent;border:none}.card[data-step=gastricBypass] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=gastricBypass] .h1{font-size:clamp(22px,5vw,28px);text-align:left;margin-bottom:6px}.card[data-step=gastricBypass] .p{font-size:14px;color:var(--muted);text-align:left}.card[data-step=gastricBypass] .footerMeta{display:none}.slide[data-step=gastricBypass] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=gastricBypass] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=gastricBypass] .optionCard.isSelected{border:2px solid #A9C27F;padding:15px 19px}.slide[data-step=gastricBypass] .optionDot{display:none}.slide[data-step=gastricBypass] .optionCardLabel{font-size:15px;font-weight:600;color:#1a1a1a}.card[data-step=pregnancy]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding-left:0;padding-right:8px}.card[data-step=pregnancy] .carousel{background:transparent;border:none}.card[data-step=pregnancy] .slide{padding-left:0;padding-right:0;overflow-x:hidden}.card[data-step=pregnancy] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=pregnancy] .h1{font-size:clamp(26px,6vw,34px);text-align:left;margin-bottom:12px}.card[data-step=pregnancy] .footerMeta{display:none}.slide[data-step=pregnancy] .optionGrid{width:calc(100% - 16px);margin:0 auto;gap:8px}.slide[data-step=pregnancy] .optionCard{padding:16px 20px;border-radius:14px;background:#fff;border:1px solid #A9C27F;box-shadow:none;transition:border-width .1s ease,padding .1s ease}.slide[data-step=pregnancy] .optionCard:hover{background:#fff;border-color:#a9c27f;box-shadow:none}.slide[data-step=pregnancy] .optionCard:active,.slide[data-step=pregnancy] .optionCard.isSelected{background:#fff;border:2px solid #A9C27F;padding:15px 19px;box-shadow:none}.slide[data-step=pregnancy] .optionDot{display:none}.slide[data-step=pregnancy] .optionCardLabel{font-size:16px;font-weight:600;color:#1a1a1a}.pregnancyWarning{margin-top:16px;padding:20px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #F59E0B;border-radius:16px;width:calc(100% - 16px);margin-left:auto;margin-right:auto}.pregnancyWarningIcon{font-size:32px;margin-bottom:12px}.pregnancyWarningTitle{font-size:18px;font-weight:700;color:#92400e;margin-bottom:12px;letter-spacing:-.01em}.pregnancyWarningText{font-size:14px;line-height:1.6;color:#78350f;margin-bottom:12px}.pregnancyWarningText:last-of-type{margin-bottom:0}.pregnancyWarningNote{margin-top:16px;padding-top:12px;border-top:1px solid rgba(245,158,11,.3);font-size:13px;font-weight:600;color:#92400e}.card[data-step=done]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card[data-step=done] .carousel{background:transparent;border:none}.card[data-step=done] .cardHeader{text-align:left;padding-top:4vh;padding-left:8px}.card[data-step=done] .h1{font-size:clamp(26px,6vw,34px);text-align:left;margin-bottom:8px}.card[data-step=done] .p,.card[data-step=done] .footerMeta{display:none}.doneContent{display:flex;flex-direction:column;gap:40px;padding:0 8px}.doneMessage{background:#fff;border:1px solid #A9C27F;border-radius:14px;padding:20px;font-size:16px;line-height:1.6;color:#1a1a1a}.doneCongrats{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.doneCongrats span{font-size:18px;font-weight:600;color:#1a1a1a}.doneCongratsLogo{height:36px;width:auto}.startNewSessionBtn{margin-top:24px;padding:14px 28px;font-size:15px;font-weight:500;color:#6b7280;background:transparent;border:1px solid #d1d5db;border-radius:12px;cursor:pointer;transition:all .2s ease;align-self:center}.startNewSessionBtn:hover{color:#374151;border-color:#9ca3af;background:#f9fafb}.startNewSessionBtn:active{transform:scale(.98)}.checkoutReviewPage{display:flex;flex-direction:column;gap:16px;padding:0 8px;max-width:100%}.checkoutNav{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;margin:0 -8px;padding:12px 8px}.checkoutNavBack{display:flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--text);font-size:15px;font-weight:500;cursor:pointer;padding:8px 12px 8px 4px;margin-left:-4px;border-radius:8px;transition:background .15s ease}.checkoutNavBack:hover{background:#0000000d}.checkoutNavLogoImg{display:none}.checkoutNavSpacer{width:60px}.checkoutHeader{text-align:left;padding:8px 0 4px}.checkoutSubheadline{font-size:14px;color:var(--muted);margin:0 0 6px;font-weight:400}.checkoutHeadline{font-size:clamp(22px,5vw,28px);font-weight:700;color:var(--text);margin:0;letter-spacing:-.02em}.productCard{border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 2px 8px #0000000a}.productBanner{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#a9c27f;color:#fff;font-size:14px;font-weight:500}.productBanner svg{flex-shrink:0}.productBody{padding:16px}.productTitle{font-size:18px;font-weight:700;color:var(--text);margin:0 0 6px;letter-spacing:-.01em}.productDescription{font-size:14px;color:var(--muted);margin:0 0 14px;line-height:1.45}.productIncludes{display:flex;align-items:flex-start;gap:6px;padding-top:14px;border-top:1px solid rgba(15,23,42,.08);font-size:14px}.includesLabel{color:var(--muted);font-weight:500;white-space:nowrap}.includesCheck{color:#a9c27f;flex-shrink:0;margin-top:1px}.includesText{color:var(--text);font-weight:500;line-height:1.4}.planSection{padding:4px 0}.planTitle{font-size:16px;font-weight:700;color:var(--text);margin:0 0 4px;letter-spacing:-.01em}.planSubtitle{font-size:14px;color:var(--muted);margin:0 0 14px;line-height:1.45}.planOptions{display:flex;flex-direction:column;gap:10px}.planOption{display:flex;flex-direction:column;text-align:left;padding:16px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.planOption:hover{border-color:#a9c27f80}.planOption.isSelected{border:2px solid #A9C27F;padding:15px;background:#a9c27f0f;box-shadow:0 0 0 3px #a9c27f1f}.planOptionTop{display:flex;align-items:center;justify-content:space-between;gap:12px}.planLabel{font-size:16px;font-weight:600;color:var(--text)}.planPrice{font-size:16px;font-weight:700;color:#a9c27f}.planBreakdown{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(15,23,42,.08)}.breakdownLabel{font-size:13px;font-weight:600;color:var(--muted)}.breakdownText{font-size:14px;color:var(--text);line-height:1.4}.totalSummary{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid rgba(15,23,42,.08);border-bottom:1px solid rgba(15,23,42,.08)}.totalLabel{font-size:16px;font-weight:600;color:var(--text)}.totalValue{font-size:18px;font-weight:700;color:var(--text)}.discountsSection{padding:4px 0}.discountsToggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 0;background:transparent;border:none;cursor:pointer;font-size:16px;font-weight:600;color:var(--text)}.discountsChevron{transition:transform .2s ease;color:var(--muted)}.discountsChevron.isOpen{transform:rotate(180deg)}.discountsContent{padding:8px 0 16px}.discountInputWrap{display:flex;gap:10px}.discountInput{flex:1;padding:14px 16px;border:1px solid rgba(15,23,42,.12);border-radius:12px;background:#0f172a08;font-size:15px;color:var(--text);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.discountInput::placeholder{color:var(--muted2)}.discountInput:focus{border-color:#a9c27f;box-shadow:0 0 0 3px #a9c27f26}.discountApplyBtn{padding:14px 20px;border:none;border-radius:999px;background:#556b2f;color:#fff;font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s ease,transform .1s ease}.discountApplyBtn:hover:not(:disabled){background:#4a5d29}.discountApplyBtn:active:not(:disabled){transform:scale(.98)}.discountApplyBtn:disabled{opacity:.5;cursor:not-allowed}.paymentSection{padding:4px 0}.paymentTitle{font-size:16px;font-weight:700;color:var(--text);margin:0 0 6px;letter-spacing:-.01em}.paymentDisclaimer{font-size:13px;color:var(--muted);margin:0 0 14px;line-height:1.5}.stripePaymentInfo{padding:16px;border-radius:12px;background:linear-gradient(135deg,#6366f114,#8b5cf614);border:1px solid rgba(99,102,241,.2)}.stripePaymentRow{display:flex;align-items:center;gap:10px;color:#4f46e5;font-weight:600;font-size:15px}.stripePaymentRow svg{flex-shrink:0}.stripePaymentMethods{margin:10px 0 0;font-size:13px;color:var(--muted);padding-left:26px}.paymentOptions{display:flex;flex-direction:column;gap:8px}.paymentOption{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:14px 16px;border:1px solid rgba(15,23,42,.12);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease}.paymentOption:hover{border-color:#a9c27f80}.paymentOption.isSelected{border:2px solid #A9C27F;padding:13px 15px;background:#a9c27f0f}.paymentIcon{display:flex;align-items:center;justify-content:center;color:var(--text)}.paymentName{flex:1;font-size:15px;font-weight:600;color:var(--text);text-align:left}.paymentBadge{padding:4px 10px;border-radius:999px;background:#22c55e;color:#fff;font-size:12px;font-weight:600}.paymentDescription{margin:10px 0 0;padding-top:10px;border-top:1px solid rgba(15,23,42,.08);font-size:13px;color:var(--muted);line-height:1.45;text-align:left}.checkoutFooter{padding:16px 0 8px;display:flex;flex-direction:column;gap:16px}.checkoutLegal{font-size:12px;color:var(--muted);line-height:1.55;text-align:center;margin:0}.checkoutConfirmBtn{width:100%;padding:16px 24px;border:none;border-radius:14px;background:#a9c27f;color:#fff;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 14px 36px #a9c27f59;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.checkoutConfirmBtn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(.95);box-shadow:0 18px 40px #a9c27f73}.checkoutConfirmBtn:active:not(:disabled){transform:translateY(0)}.checkoutConfirmBtn:disabled{opacity:.55;cursor:not-allowed;transform:none}@media (max-width: 520px){.checkoutNav{padding:8px 0}.checkoutHeadline{font-size:20px}.productTitle{font-size:16px}.planLabel,.planPrice,.totalLabel{font-size:15px}.totalValue{font-size:16px}}@media (min-width: 600px){.checkoutReviewPage{max-width:480px;margin:0 auto}.checkoutNav{margin:0;padding-left:0;padding-right:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;position:relative}}.card[data-step=checkout]{background:transparent;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;border-radius:0;overflow:hidden}.card[data-step=checkout] .carousel{background:transparent;border:none;overflow:hidden}.card[data-step=checkout] .slide{padding:0;overflow-x:hidden;overflow-y:auto}.card[data-step=checkout] .cardHeader,.card[data-step=checkout] .footerMeta,.card[data-step=checkout] .navBar{display:none}.page:has(.card[data-step=checkout]) .topLogo{display:none}.page:has(.card[data-step=checkout]){overflow-y:auto;overflow-x:hidden;height:auto;min-height:100vh;min-height:100dvh;background-color:#fff}.page:has(.card[data-step=checkout]) .shell{flex:none}.page:has(.card[data-step=checkout]) .card{flex:none;max-height:none;overflow:hidden}.canvasLoadingOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#fffffff2;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.canvasLoadingContent{display:flex;flex-direction:column;align-items:center;gap:20px;padding:32px;text-align:center}.canvasLoadingSpinner{width:48px;height:48px;border:4px solid #e8e8e8;border-top-color:#1b4332;border-radius:50%;animation:canvasSpin 1s linear infinite}@keyframes canvasSpin{to{transform:rotate(360deg)}}.canvasLoadingText{font-family:Sora,sans-serif;font-size:18px;font-weight:500;color:#1b4332;margin:0}.checkoutReviewV2{padding-bottom:32px;overflow-x:hidden;overflow-y:auto;background-color:#fff;scrollbar-width:none;-ms-overflow-style:none}.checkoutReviewV2::-webkit-scrollbar{display:none}.klarnaBannerFixed{position:fixed;top:env(safe-area-inset-top,0);left:0;right:0;width:100%;background:#fce4ec;padding:0;border-radius:0;box-sizing:border-box;z-index:9999;transform:translateY(-100%);opacity:0;transition:transform .3s ease,opacity .3s ease}.klarnaBannerFixed.isVisible{transform:translateY(0);opacity:1}.klarnaBannerInner{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:500;color:#1b4332;margin:0 auto;line-height:1;box-sizing:border-box}.klarnaBannerInner svg,.klarnaBannerInner img{display:block;flex-shrink:0;vertical-align:middle}.klarnaBannerInner span{display:flex;align-items:center;line-height:1}.checkoutNavBack.desktopOnly{display:none}.checkoutContent{padding:0 8px}.klarnaBanner{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;background:#fce4ec;border-radius:12px;margin-bottom:8px;font-size:14px;font-weight:500;color:#1b4332}.klarnaBanner svg:last-child{margin-left:4px}.checkoutHeadlineV2{font-size:clamp(26px,6vw,32px);font-weight:700;color:var(--text);margin:0;letter-spacing:-.02em}.productCardV2{border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 4px 16px #0000000f}.productBannerV2{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#1b4332;color:#fff;font-size:13px;font-weight:500}.productBodyV2{padding:20px}.productContentRow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.productInfo{flex:1}.productTitleV2{font-size:22px;font-weight:700;color:var(--text);margin:0 0 4px;letter-spacing:-.01em}.productSubtitle{font-size:14px;color:var(--muted);margin:0}.productImagePlaceholder{width:80px;height:80px;flex-shrink:0;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#f0f4e8,#e8f0dc)}.productImage{width:100%;height:100%;object-fit:cover}.productImageInner{width:100%;height:100%;border-radius:12px;background:linear-gradient(135deg,#f0f4e8,#e8f0dc);display:flex;align-items:center;justify-content:center;font-size:32px}.benefitsList{display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:1px solid rgba(15,23,42,.08)}.benefitItem{display:flex;align-items:flex-start;gap:10px}.benefitCheck{flex-shrink:0;margin-top:2px}.benefitText{font-size:14px;color:var(--text);line-height:1.4}.planSectionV2{padding:8px 0}.planTitleV2{font-size:18px;font-weight:700;color:var(--text);margin:0 0 14px;letter-spacing:-.01em}.planOptionsV2{display:flex;flex-direction:column;gap:12px}.planOptionV2{position:relative;display:flex;flex-direction:column;text-align:left;padding:18px;border:2px solid rgba(15,23,42,.1);border-radius:16px;background:#fff;cursor:pointer;transition:all .18s ease}.planOptionV2:hover{border-color:#a9c27f80}.planOptionV2.isSelected{border-color:#a9c27f;background:#a9c27f0f;box-shadow:0 0 0 3px #a9c27f26}.planOptionV2.isPopular{border-color:#a9c27f}.planPopularTag{position:absolute;top:-12px;left:18px;padding:4px 12px;background:#a9c27f;color:#fff;font-size:12px;font-weight:600;border-radius:999px;text-transform:uppercase;letter-spacing:.02em}.planOptionHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.planLabelV2{font-size:16px;font-weight:600;color:var(--text)}.planSavingsBadge{padding:4px 10px;background:#a9c27f26;color:#556b2f;font-size:12px;font-weight:700;border-radius:999px}.planPriceRow{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.planPriceV2{font-size:24px;font-weight:700;color:#1b4332;letter-spacing:-.02em}.planOriginalPrice{font-size:16px;color:var(--muted);text-decoration:line-through}.planBillingInfo{font-size:13px;color:var(--muted);line-height:1.5}.planKlarnaNote{color:#d81b60}.planKlarnaNote strong{font-weight:700}.totalSummaryV2{padding:18px 0;border-top:1px solid rgba(15,23,42,.08);border-bottom:1px solid rgba(15,23,42,.08)}.totalRow{display:flex;align-items:center;justify-content:space-between}.totalLabelV2{font-size:16px;font-weight:600;color:var(--text)}.totalValueV2{font-size:22px;font-weight:700;color:var(--text)}.savingsBanner{display:flex;align-items:center;gap:10px;padding:16px;background:linear-gradient(135deg,#e8f0dc,#d4e4c4);border-radius:14px;margin-top:16px;font-size:15px;color:#1b4332;font-weight:500}.savingsIcon{font-size:20px}.savingsBanner strong{font-weight:700}.trustSignals{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 0}.providerAvatars{display:flex;align-items:center}.avatar{width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #ffffff;display:flex;align-items:center;justify-content:center;font-size:18px;margin-left:-8px;box-shadow:0 2px 8px #00000014}.avatar:first-child{margin-left:0}.providerText{font-size:14px;color:var(--muted);font-weight:500}.paymentSectionV2{padding:8px 0}.paymentTitleV2{font-size:18px;font-weight:700;color:var(--text);margin:0 0 14px;letter-spacing:-.01em}.paymentOptionsV2{display:flex;flex-direction:column;gap:10px}.paymentOptionV2{display:flex;flex-direction:column;text-align:left;padding:16px;border:2px solid rgba(15,23,42,.1);border-radius:14px;background:#fff;cursor:pointer;transition:all .18s ease}.paymentOptionV2:hover{border-color:#a9c27f80}.paymentOptionV2.isSelected{border-color:#a9c27f;background:#a9c27f0a}.paymentOptionV2.isKlarna{background:linear-gradient(135deg,#fff5f7,#fff)}.paymentOptionV2.isKlarna.isSelected{background:linear-gradient(135deg,#fff0f3,#fff);border-color:#ffb3c7}.paymentOptionMain{display:flex;align-items:center;gap:12px}.paymentRadio{width:22px;height:22px;border-radius:999px;border:2px solid rgba(15,23,42,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.paymentRadio.isSelected{border-color:#a9c27f}.paymentRadioInner{width:10px;height:10px;border-radius:999px;background:transparent;transition:background .15s ease}.paymentRadio.isSelected .paymentRadioInner{background:#a9c27f}.paymentIconV2{display:flex;align-items:center;justify-content:center;color:var(--text)}.paymentNameV2{flex:1;font-size:15px;font-weight:600;color:var(--text)}.klarnaBadge{padding:4px 10px;background:#ffb3c7;color:#880e4f;font-size:11px;font-weight:700;border-radius:999px;text-transform:uppercase;letter-spacing:.02em}.klarnaSubtext{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,179,199,.3);font-size:13px;color:#880e4f;padding-left:34px}.discountsSectionV2{padding:4px 0}.securePaymentInfo{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;color:var(--muted);font-size:13px;font-weight:500}.checkoutFooterV2{padding:16px 0 8px;display:flex;flex-direction:column;gap:16px}.checkoutLegalV2{font-size:11px;color:var(--muted);line-height:1.6;text-align:center;margin:0}.checkoutConfirmBtnV2{width:100%;padding:18px 24px;border:none;border-radius:14px;background:linear-gradient(135deg,#a9c27f,#8fb265);color:#fff;font-size:17px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px #a9c27f66;transition:transform .14s ease,box-shadow .14s ease}.checkoutConfirmBtnV2:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #a9c27f80}.checkoutConfirmBtnV2:active:not(:disabled){transform:translateY(0)}.checkoutConfirmBtnV2:disabled{opacity:.55;cursor:not-allowed;transform:none}@media (max-width: 520px){.klarnaBanner,.klarnaBannerInner{font-size:13px;padding:12px;gap:8px}.checkoutHeadlineV2{font-size:24px}.productTitleV2{font-size:20px}.productImagePlaceholder{width:64px;height:64px}.planPriceV2{font-size:22px}.totalValueV2{font-size:20px}}.stripePaymentSection{padding:20px 0;border-top:1px solid rgba(15,23,42,.08)}.stripePaymentSection .paymentTitleV2{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:var(--text);margin:0 0 16px}.stripePaymentForm{display:flex;flex-direction:column;gap:20px}.stripePaymentLoading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--muted);font-size:14px}.stripeLoadingSpinner{width:32px;height:32px;border:3px solid #e8e8e8;border-top-color:#a9c27f;border-radius:50%;animation:stripeSpin .8s linear infinite}@keyframes stripeSpin{to{transform:rotate(360deg)}}.stripePaymentError{padding:12px 16px;background:#dc262614;border:1px solid rgba(220,38,38,.2);border-radius:12px;color:#dc2626;font-size:14px;font-weight:500}.stripeNotConfigured{padding:20px;background:#0f172a0a;border-radius:12px;text-align:center;color:var(--muted);font-size:14px}.stripeNotConfigured p{margin:0}
