@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Instrument+Serif:ital@0;1&display=swap");:root{--ink:#202322;--muted:#747a78;--line:#e5e8e6;--wash:#f5f7f6;--serif:"Instrument Serif",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #515f5c;outline-offset:5px}button{border:0;background:none}a{color:inherit}main:focus{outline:none}h1,h2,h3,h4,p{margin:0}button svg{flex-shrink:0}em{font-weight:400}::selection{background:#dae5df}.site-header{max-width:1440px;margin:auto;height:105px;padding:0 68px;justify-content:space-between;border-bottom:1px solid var(--line)}.site-header,.wordmark{display:flex;align-items:center}.wordmark{gap:9px;font-size:25px;font-weight:550;letter-spacing:-1.2px;padding:0}.wordmark:disabled{opacity:1}.brand-slash{color:#9ca29f}.brand-ai,.brand-slash{font-weight:400}.brand-dot{width:5px;height:5px;border-radius:50%;background:#697c71;margin:2px 0 0 1px}.header-caption{font-size:9px;letter-spacing:2px;color:#7c827f}.text-button{display:inline-flex;gap:12px;align-items:center;font-size:12px;padding:8px 0}.header-method{gap:24px}.main{max-width:1440px;margin:auto;padding:0 68px;min-height:calc(100vh - 220px)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;padding:64px 0 58px}.eyebrow,.hero{align-items:center}.eyebrow{font-size:9px;font-weight:550;letter-spacing:2px;display:flex;gap:10px}.tiny-cross{font-size:20px;font-weight:400}.hero h1{font-family:var(--serif);font-size:clamp(52px,5.7vw,83px);line-height:1.04;font-weight:400;letter-spacing:-2.3px;margin:30px 0 26px}.hero h1 em{color:#69726d}.hero-description{font-size:20px;line-height:1.6;letter-spacing:-.4px}.hero-sub{max-width:340px;font-size:12px;line-height:1.9;color:var(--muted);margin-top:16px}.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:34px}.button{height:50px;display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:0 22px;font-size:12px;border:1px solid transparent;transition:background .2s,transform .2s}.primary{background:var(--ink);color:#fff}.primary:hover:not(:disabled){background:#3d4943;transform:translateY(-1px)}.subtle{padding:0;gap:10px;border-bottom:1px solid #c6cbc8;border-radius:0;height:34px}.hero-small{display:flex;gap:7px;font-size:9px;color:#8a908d;margin-top:23px;align-items:center}.portrait-frame,.portrait-wrap{position:relative}.portrait-frame{height:535px;overflow:hidden;background:#e6e9e8}.hero-portrait{width:100%;height:100%;object-fit:cover;object-position:50% 42%}.portrait-frame:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#12201985);pointer-events:none}.portrait-top{position:absolute;top:21px;left:22px;font-size:8px;letter-spacing:1.6px;display:flex;align-items:center;gap:7px;background:#ffffffda;padding:9px 10px}.small-dot{width:4px;height:4px;background:#596a60;border-radius:50%}.portrait-bottom{position:absolute;bottom:27px;left:28px;right:28px;z-index:1;display:flex;flex-direction:column;gap:5px;color:#fff;font-size:10px;letter-spacing:2px}.viewfinder{position:absolute;width:22px;height:22px;z-index:2;opacity:.7}.corner-tl{left:18px;top:68px;border-left:1px solid white;border-top:1px solid white}.corner-br{right:18px;bottom:20px;border-right:1px solid white;border-bottom:1px solid white}.portrait-caption{display:flex;justify-content:space-between;gap:10px;font-size:7px;color:var(--muted);letter-spacing:1px;margin-top:13px}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0}.principle{display:flex;gap:22px;padding:0 28px;border-right:1px solid var(--line)}.principle:first-child{padding-left:0}.principle:last-child{border:0;padding-right:0}.number{font-family:var(--serif);font-size:24px;color:#a0a9a3}.principle h3{font-size:13px;font-weight:500;margin:2px 0 9px}.principle p{font-size:11px;color:var(--muted);line-height:1.8;max-width:230px}.closing-line{padding:38px 0 46px;display:flex;gap:25px;align-items:center}.closing-line>span{font-size:8px;letter-spacing:1.5px}.closing-line>p{font-family:var(--serif);font-size:23px;color:#717873}.closing-line>.text-button{margin-left:auto;font-size:10px}.site-footer{max-width:1440px;margin:auto;padding:28px 68px;justify-content:space-between;border-top:1px solid var(--line);font-size:8px;letter-spacing:1.3px;color:#7d8580}.site-footer,.site-footer>div{display:flex;align-items:center}.site-footer>div{gap:22px;letter-spacing:0}.site-footer button{font-size:10px;color:var(--muted);padding:5px 0}.footer-divider{margin:0 8px;color:#b3b9b5}.provider-credit{font-size:9px;color:#8e9790}.error-bar{max-width:1304px;margin:12px auto 0;padding:12px 20px;border:1px solid #c7b8b8;background:#faf6f6;color:#643d3d;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;line-height:1.6}.error-bar button{display:flex;flex-shrink:0}.flow-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding:58px 0 80px}.flow-aside h1,.processing h1{font-family:var(--serif);font-size:70px;font-weight:400;line-height:1.03;letter-spacing:-1.5px;margin:45px 0 23px}.flow-aside h1 em{color:#747e77}.flow-aside>p{font-size:13px;color:var(--muted);line-height:1.9;max-width:260px}.step-progress{display:flex;align-items:center;gap:12px;min-height:20px}.step-progress>span{display:flex;gap:7px;align-items:center;font-size:7px;letter-spacing:1.2px;color:#b5bcb7}.step-progress .current{color:var(--ink)}.step-progress b{font-weight:500}.step-progress i{width:22px;height:1px;background:#dce1dd}.aside-note{margin-top:60px;border-top:1px solid var(--line);padding-top:22px;display:flex;gap:18px;align-items:center;color:#7c8780}.aside-note p{font-family:var(--serif);font-size:23px;line-height:1.3}.profile-form{padding-top:6px;display:flex;flex-direction:column;gap:30px}.profile-form fieldset{border:0;padding:0;margin:0;min-width:0}.profile-form legend{font-size:14px;font-weight:500;margin-bottom:16px;line-height:1.5}.profile-form legend>span{font-family:var(--serif);color:#8c9690;font-size:20px;margin-right:14px}.choice-grid{display:flex;gap:8px;flex-wrap:wrap}.choice{border:1px solid var(--line);padding:13px 15px;display:flex;align-items:center;gap:14px;font-size:11px;text-align:left;min-height:44px}.choice:hover{border-color:#9ba69f}.choice.selected{border-color:#69776e;background:#f1f4f2}.choice-grid.goals{display:grid;grid-template-columns:1fr 1fr}.goals .choice{justify-content:space-between}.field-help{color:var(--muted);font-size:10px;font-weight:400;line-height:1.7;margin:-4px 0 13px;display:block}.field-label>.field-help{margin:8px 0 0}.field-label{display:flex;flex-direction:column;gap:10px;font-size:11px;font-weight:500;position:relative}.field-label input,.field-label select{width:100%;height:46px;border:1px solid #dde2de;border-radius:0;padding:0 12px;background:white;color:#525c55;font-size:11px}.field-label input::placeholder{color:#a0a7a2}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.optional{font-size:9px;font-weight:400;color:#949c96;position:absolute;right:0;top:0}.form-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;gap:20px}.photo-panel{padding-top:4px}.photo-tips{padding:0;list-style:none;margin:35px 0 0;display:flex;flex-direction:column;gap:17px}.photo-tips li{gap:10px;font-size:11px;color:#737e76}.photo-tips li,.upload-area{display:flex;align-items:center}.upload-area{border:1px dashed #b8c4bc;min-height:315px;background:#f7f9f7;width:100%;justify-content:center;flex-direction:column;position:relative;padding:25px;margin-bottom:22px}.upload-area:hover{background:#f0f4f1}.upload-circle{border:1px solid #d9e1dc;width:69px;height:69px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:23px;color:#6f8074}.upload-area h3{font-family:var(--serif);font-size:31px;font-weight:400}.upload-area p{margin:10px 0 25px;font-size:11px;color:var(--muted)}.upload-label{font-size:9px;letter-spacing:1.2px;display:flex;gap:20px;align-items:center}.upload-label>span{font-size:16px}.upload-area.has-photo{height:340px;padding:0;border-style:solid}.upload-area img{width:100%;height:100%;object-fit:contain;background:#edf0ed}.replace-photo{position:absolute;bottom:15px;right:15px;background:#fffffff2;padding:10px 14px}.check-label,.replace-photo{display:flex;gap:10px;font-size:10px}.check-label{align-items:flex-start;margin:14px 0;line-height:1.9;color:#68736b}.check-label input{margin:4px 0 0;accent-color:#3d5143;width:14px;height:14px;flex-shrink:0}.inline-link{font-size:inherit;text-decoration:underline;text-underline-offset:3px;padding:0}.notice{border:1px solid var(--line);background:var(--wash);padding:12px;font-size:11px;line-height:1.8;margin:18px 0}.example-instead{display:flex;margin:19px auto 0;font-size:10px;text-decoration:underline;text-underline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.processing{min-height:700px;text-align:center;display:flex;flex-direction:column;align-items:center;padding:70px 0}.processing .eyebrow,.processing h1{margin-top:25px}.processing h1{margin-bottom:20px}.processing>p{color:var(--muted);font-size:12px;line-height:1.9}.orbit{width:96px;height:96px;border:1px solid #d4ded6;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;color:#687a6e}.orbit:after{content:"";position:absolute;inset:-9px;border:1px dashed #dee6e0;border-radius:50%;animation:rotate 20s linear infinite}.processing-lines{width:280px;margin:35px 0 20px;display:flex;flex-direction:column;text-align:left;gap:17px;font-size:11px}.processing-lines>span{display:flex;justify-content:space-between;align-items:center}.muted{color:#a1aaa4}.pulse-dot{width:5px;height:5px;background:#536e5b;border-radius:50%;animation:pulse 1.8s infinite}.micro{font-size:9px!important;color:#8b958d!important;line-height:1.8!important}.example-banner{display:flex;align-items:center;gap:12px;padding:16px 19px;background:#f2f5f3;border:1px solid #e1e7e3;margin-top:30px}.example-banner>div{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.example-banner strong{font-size:10px;font-weight:500}.example-banner span{font-size:10px;color:#7d8980}.example-banner .text-button{margin-left:auto;white-space:nowrap;font-size:10px}.result-heading{display:flex;justify-content:space-between;align-items:flex-end;padding:42px 0 32px;border-bottom:1px solid var(--line);margin-bottom:35px}.result-heading h1{font-family:var(--serif);font-size:68px;font-weight:400;letter-spacing:-1.7px;margin-top:12px;line-height:1}.result-heading h1 em{color:#758177}.result-actions{gap:25px}.icon-button,.result-actions{display:flex;align-items:center}.icon-button{width:39px;height:39px;border:1px solid var(--line);justify-content:center}.results-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px}.result-photo{height:410px;position:relative;background:#eef1ef;overflow:hidden}.result-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 38%}.result-photo .mask-image{position:absolute;inset:0;object-fit:cover}.photo-source{position:absolute;left:14px;bottom:14px;font-size:7px;letter-spacing:1px;padding:9px 11px;background:#ffffffe0;z-index:2}.observation-header{display:flex;justify-content:space-between;align-items:center;margin:20px 0 0}.observation-header h3{font-size:13px;font-weight:500}.score-explanation{font-size:9px;color:#8a958d;line-height:1.7;margin:6px 0 14px;max-width:350px}.observations{display:flex;flex-direction:column;gap:0;margin-bottom:12px}.observation{border-bottom:1px solid #edf0ed;display:grid;grid-template-columns:125px 1fr 24px 10px;gap:10px;align-items:center;padding:13px 0;text-align:left;width:100%;font-size:10px}.observation:disabled{opacity:1}.observation.active{background:#f1f5f2}.observation strong{font-size:10px;font-weight:500;text-align:right}.score-track{height:3px;background:#edf0ee}.score-track>span{display:block;height:3px;background:#a4b4a7}.map-hint{font-size:12px;color:#89958d}.small-label{font-size:8px;letter-spacing:1.7px;color:#89958c}.routine-intro h2{font-family:var(--serif);font-size:39px;font-weight:400;line-height:1.1;margin:12px 0}.routine-intro>p{font-size:11px;color:#7a867d;line-height:1.9;max-width:410px}.priority-tags{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0 25px}.priority-tags>span{font-size:8px;color:#6d7c71;border:1px solid #dfe6e1;padding:6px 9px;background:#fafbfa}.period-tabs{display:flex;border-bottom:1px solid #dce3de;margin-bottom:4px;gap:20px}.period-tabs button{padding:15px 0;display:flex;align-items:center;gap:8px;color:#9aa49d;font-size:11px;position:relative}.period-tabs button[aria-selected=true]{color:var(--ink)}.period-tabs button[aria-selected=true]:after{content:"";position:absolute;height:2px;bottom:-1px;background:var(--ink);left:0;right:0}.period-tabs span{font-size:7px;letter-spacing:1px;margin-left:8px}.product-step{padding:23px 0;border-bottom:1px solid var(--line)}.step-top{display:flex;align-items:center;gap:12px}.step-number{font-family:var(--serif);font-size:22px;color:#89978b}.step-top h3{font-size:13px;font-weight:500}.step-top>svg{margin-left:auto;color:#89978c}.product-card{display:flex;gap:22px;padding:20px;background:#f6f8f6;margin-top:17px;align-items:center;min-height:130px}.product-info{flex:1 1;min-width:0}.product-brand{font-size:8px;text-transform:uppercase;letter-spacing:1.4px;color:#7e8d81}.product-info h4{font-weight:500;font-size:13px;line-height:1.5;margin:7px 0}.product-info p{font-size:9px;color:#849087;line-height:1.6}.product-texture{font-size:8px;display:block;color:#9aa69d;margin-top:9px}.product-vessel{width:55px;height:82px;position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.vessel-cap{width:19px;height:12px;border:1px solid #b6c1b8;background:linear-gradient(90deg,#e8eeea,#fff,#dce4de);position:relative}.vessel-body{width:43px;height:68px;border:1px solid #d4ddd5;border-radius:5px 5px 7px 7px;background:linear-gradient(90deg,#e4ebe5,#fff 45%,#e9efea);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:2px 4px 5px #17351e09}.vessel-body>span{font-size:5px;letter-spacing:1px;line-height:1.8;color:#829384;text-align:center}.vessel-body>i{width:17px;height:1px;background:#c2cfc4;margin-top:7px}.vessel-moisturizer .vessel-body{width:55px;height:47px;border-radius:5px 5px 10px 10px}.vessel-moisturizer .vessel-cap{height:12px;width:55px;margin-top:23px}.vessel-sunscreen .vessel-body{border-radius:0 0 5px 5px;width:39px;height:69px;transform:perspective(100px) rotateX(-8deg)}.vessel-sunscreen .vessel-cap{order:2;width:37px;height:10px}.why{margin-top:13px}.why summary{display:flex;justify-content:space-between;cursor:pointer;font-size:10px;list-style:none;padding:8px 0;color:#697a6d}.why summary::-webkit-details-marker{display:none}.why summary span{font-size:14px;color:#87978b}.why[open] summary span{transform:rotate(45deg)}.why p{font-size:10px;color:#78867c;line-height:1.9}.why .instruction{margin-top:6px;font-size:9px;color:#9aa59d}.alternative-button{display:flex;align-items:center;gap:12px;font-size:9px;text-decoration:underline;text-underline-offset:4px;padding:12px 0 0;color:#7e8b82}.category-fallback{background:#f7f9f7;margin-top:17px;padding:18px}.category-fallback strong{font-size:12px;font-weight:500}.category-fallback p{font-size:11px;line-height:1.8;color:#7d8980;margin-top:8px}.routine-note{display:flex;gap:12px;padding:20px 0;color:#7a8b7d}.routine-note>svg{flex-shrink:0}.routine-note strong{font-size:10px;font-weight:500}.routine-note p{font-size:9px;color:#98a29b;line-height:1.8;margin-top:5px}.context-notes{border-top:1px solid var(--line);padding-top:25px;margin-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:14px 35px}.context-notes>span{grid-column:1/-1}.context-notes>p{font-size:10px;line-height:1.9;color:#8d9890}.results-bottom{display:flex;align-items:center;justify-content:space-between;padding:35px 0 55px;gap:25px}.modal-backdrop{position:fixed;inset:0;background:#18251dd0;z-index:10;display:flex;align-items:center;justify-content:center;padding:25px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{background:white;max-width:570px;padding:45px;position:relative;max-height:85vh;overflow:auto;box-shadow:0 20px 100px #0002}.modal-close{position:absolute;right:18px;top:18px;border:0}.modal h2{font-family:var(--serif);font-size:38px;font-weight:400;margin:15px 0 23px}.modal p{font-size:12px;line-height:1.9;margin:15px 0;color:#77857a}.modal>a{font-size:11px;display:inline-block;margin-top:8px}@keyframes rotate{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.25}}@media(min-width:1500px){.hero{gap:90px}.portrait-frame{height:565px}}@media(max-width:1100px){.main,.site-footer,.site-header{padding-left:35px;padding-right:35px}.hero{gap:25px}.hero h1{font-size:65px}.portrait-frame{height:490px}.flow-layout{gap:45px}.results-grid{gap:35px}.closing-line{gap:15px}.closing-line>span{display:none}.hero-small{font-size:8px}.result-photo{height:360px}}@media(max-width:760px){.site-header{height:78px;padding:0 23px}.header-caption{display:none}.wordmark{font-size:23px}.header-method{font-size:10px}.main{padding:0 23px}.hero{grid-template-columns:1fr;padding:36px 0 30px;gap:35px}.hero h1{font-size:64px;letter-spacing:-1.8px;margin:23px 0}.hero-description{font-size:18px}.hero-sub{max-width:335px;font-size:12px}.hero-actions{gap:23px;margin-top:25px}.hero-small{font-size:9px}.portrait-frame{height:430px;max-height:110vw}.hero-portrait{object-position:50% 37%}.portrait-caption{font-size:6px}.eyebrow{font-size:8px;letter-spacing:1.8px}.principles{grid-template-columns:1fr;padding:10px 0}.principle,.principle:first-child,.principle:last-child{padding:23px 0;border-right:0;border-bottom:1px solid var(--line)}.principle:last-child{border-bottom:0}.principle p{max-width:none;font-size:11px}.principle h3{font-size:14px}.number{font-size:25px;min-width:25px}.closing-line{display:block;padding:28px 0}.closing-line>p{font-size:25px}.closing-line>.text-button{margin-top:15px}.site-footer{padding:25px 23px;align-items:flex-start;gap:20px;flex-direction:column}.site-footer>div{gap:20px;flex-wrap:wrap}.flow-layout{grid-template-columns:1fr;padding:30px 0 45px;gap:30px}.flow-aside h1{font-size:54px;margin:26px 0 16px}.flow-aside h1 br{display:none}.flow-aside>p{max-width:340px;font-size:12px}.aside-note{display:none}.profile-form{gap:26px}.profile-form legend{font-size:13px}.form-columns{gap:15px}.field-label{font-size:10px;line-height:1.5}.form-actions .button{gap:13px;padding:0 16px;font-size:11px}.photo-tips{margin-top:22px;gap:12px}.photo-tips li{font-size:10px}.photo-panel{padding:0}.upload-area{min-height:275px}.processing{padding-top:55px;min-height:650px}.processing h1{font-size:62px}.example-banner{padding:13px 12px;gap:9px;margin-top:22px;align-items:flex-start}.example-banner>div{gap:5px}.example-banner span{font-size:9px;line-height:1.6}.example-banner .text-button{font-size:9px;gap:5px}.example-banner>svg{margin-top:2px;flex-shrink:0}.result-heading{padding-top:28px;margin-bottom:25px;gap:8px}.result-heading h1{font-size:55px}.result-actions{gap:12px}.result-actions>.text-button{font-size:10px;gap:7px}.results-grid{grid-template-columns:1fr;gap:35px}.result-photo{height:390px;max-height:110vw}.analysis-column>.micro{max-width:320px}.observation{grid-template-columns:130px 1fr 25px 12px}.routine-intro h2{font-size:36px}.routine-intro>p{font-size:12px}.period-tabs{gap:25px}.period-tabs button{font-size:12px}.product-info h4{font-size:14px}.why p{font-size:11px}.routine-note p,.why .instruction{font-size:10px}.context-notes{grid-template-columns:1fr;margin-top:15px;gap:13px}.results-bottom{flex-direction:column;align-items:stretch;padding:28px 0 35px;gap:15px}.results-bottom>.text-button{justify-content:center;font-size:10px}.modal{padding:40px 25px 30px}.modal h2{font-size:33px}.error-bar{margin:10px 23px 0;font-size:11px}.product-card{padding:18px;gap:22px}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.source-details{margin-top:12px}.source-details a{font-size:11px;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.source-details ul{padding-left:17px;margin:8px 0}.source-details li{margin:7px 0}.source-details p{overflow-wrap:anywhere}