:root{--ink:#18231f;--muted:#69736f;--cream:#f4f1e9;--paper:#fbfaf6;--sage:#8e9f8e;--deep:#1e4b3b;--lime:#dce8aa;--line:#dcded5;--white:#fff;--shadow:0 24px 70px rgba(26,54,43,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope",sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}.announcement{background:var(--deep);color:#eef3e8;text-align:center;padding:9px 20px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(251,250,246,.92);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:43px;height:43px;border:1px solid var(--ink);display:grid;place-items:center;font-family:"DM Sans";font-weight:600;letter-spacing:-.08em}.brand-mark span{color:#799350}.brand strong{display:block;font-size:12px;letter-spacing:.14em}.brand small{display:block;font-size:9px;letter-spacing:.24em;margin-top:4px;color:var(--muted)}nav{display:flex;gap:28px;font-size:13px}nav a{position:relative}nav a:after{content:"";height:1px;background:var(--ink);position:absolute;left:0;right:100%;bottom:-6px;transition:.2s}nav a:hover:after{right:0}.cart-button{border:1px solid var(--ink);background:transparent;padding:10px 14px;cursor:pointer}.cart-button span{background:var(--deep);color:white;border-radius:50%;min-width:20px;height:20px;display:inline-grid;place-items:center;font-size:11px;margin-left:7px}.hero{min-height:690px;padding:70px 7vw;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;background:radial-gradient(circle at 75% 25%,#e9e2d2 0,transparent 30%),linear-gradient(135deg,#f8f6ef,#ede9df);overflow:hidden}.hero-copy{max-width:690px;position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;color:#60715f;margin:0 0 20px}.hero h1{font-family:"DM Sans";font-weight:500;font-size:clamp(50px,6vw,86px);line-height:.98;letter-spacing:-.055em;margin:0}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:#61775f}.hero-lead{font-size:17px;line-height:1.7;color:var(--muted);max-width:590px;margin:30px 0}.hero-actions{display:flex;gap:12px}.button{border:1px solid var(--ink);padding:14px 22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;background:transparent;transition:.2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--ink);color:white}.button.ghost{background:rgba(255,255,255,.35)}.proof{display:flex;gap:28px;margin-top:42px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.proof span:before{content:"✓";color:#6b824f;margin-right:7px}.hero-visual{height:560px;position:relative;display:flex;align-items:flex-end;justify-content:center}.hero-visual>p{position:absolute;right:0;top:15%;font-family:Georgia,serif;font-style:italic;color:#697767;line-height:1.5}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:430px;height:430px;background:linear-gradient(135deg,#d8e1ba,#b8c69d);bottom:10px}.orb-two{width:210px;height:210px;background:rgba(255,255,255,.45);top:60px;left:50px}.bottle,.jar{position:relative;z-index:2;background:linear-gradient(100deg,#fafafa,#d9ded8 55%,#fff);box-shadow:0 30px 50px rgba(30,50,42,.2);text-align:center;color:#27352f}.bottle-tall{width:150px;height:390px;border-radius:8px 8px 18px 18px;margin-right:-18px;padding-top:145px}.bottle i{position:absolute;width:88px;height:82px;background:linear-gradient(90deg,#c5cbc7,#f8f8f8,#a9b0aa);top:-66px;left:31px;border-radius:4px}.bottle b,.jar b{display:block;font-size:17px;letter-spacing:.16em}.bottle span,.jar span{display:block;font-size:8px;letter-spacing:.14em;margin-top:12px}.jar{width:205px;height:180px;border-radius:14px 14px 40px 40px;padding-top:70px;background:linear-gradient(105deg,#eef2ed,#bbc8bb,#f6f8f4)}.professional-strip{margin:0 5vw;transform:translateY(-28px);padding:27px 35px;background:#dce8aa;display:flex;align-items:center;gap:24px;box-shadow:0 12px 35px rgba(49,69,55,.08)}.professional-strip .asterisk{font-family:Georgia;font-size:56px;line-height:.6}.professional-strip strong{font-size:14px}.professional-strip p{margin:6px 0 0;font-size:12px;color:#556152}.professional-strip a{margin-left:auto;border-bottom:1px solid;padding-bottom:4px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.section{padding:110px 6vw}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-heading h2,.consultation h2{font-family:"DM Sans";font-size:clamp(38px,5vw,64px);font-weight:500;letter-spacing:-.045em;margin:0}.section-heading>p{max-width:490px;color:var(--muted);line-height:1.65}.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.collection-card{min-height:270px;padding:25px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;border:0;text-align:left;color:var(--ink)}.collection-card:before,.product-image:before{content:"";position:absolute;border-radius:50%;width:180px;height:180px;right:-25px;top:-35px;background:rgba(255,255,255,.38)}.collection-card:nth-child(8n+1){background:#dbe5cf}.collection-card:nth-child(8n+2){background:#d9e5e2}.collection-card:nth-child(8n+3){background:#ead9cf}.collection-card:nth-child(8n+4){background:#e2ddcf}.collection-card:nth-child(8n+5){background:#e6dfd8}.collection-card:nth-child(8n+6){background:#d5dfd5}.collection-card:nth-child(8n+7){background:#d8d4e1}.collection-card:nth-child(8n){background:#d3cabd}.collection-card span{position:absolute;top:22px;left:24px;font-size:11px;letter-spacing:.12em}.collection-card h3{font-family:"DM Sans";font-size:27px;margin:0 0 8px;letter-spacing:-.03em}.collection-card p{font-size:12px;line-height:1.55;margin:0;max-width:250px}.collection-card:hover{filter:saturate(1.12)}.shop{background:white}.shop-tools{display:flex;gap:12px;margin-bottom:18px}.search{border:1px solid var(--line);display:flex;align-items:center;flex:1;padding:0 15px;background:var(--paper)}.search span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-right:14px}.search input{border:0;background:transparent;outline:0;width:100%;padding:14px 0}.search kbd{font-size:10px;color:var(--muted);border:1px solid var(--line);padding:4px 6px}select{border:1px solid var(--line);background:var(--paper);padding:0 15px;min-width:190px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 35px}.filter-chip{border:1px solid var(--line);background:white;padding:9px 14px;border-radius:30px;font-size:12px;cursor:pointer}.filter-chip.active{background:var(--ink);border-color:var(--ink);color:white}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 14px}.product-card{position:relative}.product-image{height:310px;background:linear-gradient(145deg,#f0f0e9,#e0e4dd);position:relative;overflow:hidden;cursor:pointer}.product-image .mini-bottle{position:absolute;left:50%;top:50%;transform:translate(-50%,-42%);width:92px;height:185px;border-radius:5px 5px 14px 14px;background:linear-gradient(100deg,#fff,#cbd1cb 54%,#f8f8f8);box-shadow:0 20px 30px rgba(35,52,44,.18);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.mini-bottle:before{content:"";position:absolute;width:58px;height:34px;top:-28px;background:linear-gradient(90deg,#b4bbb5,#f1f2f0,#a7ada8);border-radius:3px}.mini-bottle b{font-size:11px;letter-spacing:.14em}.mini-bottle small{font-size:6px;letter-spacing:.08em;max-width:70px;margin-top:8px}.product-card[data-category="Luxury"] .product-image{background:linear-gradient(145deg,#ded9cf,#b8ae9d)}.product-card[data-category="Skin Boost"] .product-image{background:linear-gradient(145deg,#e4e1ea,#cdc8d7)}.product-card[data-category="Calm"] .product-image{background:linear-gradient(145deg,#efe8e1,#ded6cf)}.product-card[data-category="Balance"] .product-image{background:linear-gradient(145deg,#e4efec,#d2dfdb)}.product-tag{position:absolute;left:14px;top:14px;background:rgba(255,255,255,.8);padding:6px 8px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;z-index:2}.quick-add{position:absolute;bottom:12px;left:12px;right:12px;background:var(--ink);color:white;border:0;padding:12px;opacity:0;transform:translateY(5px);transition:.2s;cursor:pointer}.product-image:hover .quick-add{opacity:1;transform:none}.product-info{padding:16px 3px}.product-line{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.product-info h3{font-size:14px;font-weight:600;line-height:1.35;margin:7px 0;min-height:38px}.product-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}.product-price{color:var(--ink);font-weight:700}.load-more{margin:45px auto 0;display:flex;background:white}.no-results{text-align:center;padding:50px;color:var(--muted)}.consultation{padding:110px 7vw;background:var(--deep);color:white;display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;align-items:center}.consultation .eyebrow{color:#cdd9b1}.consultation-intro>p:not(.eyebrow){color:#c5d0cb;line-height:1.7}.consultation-note{border-left:2px solid var(--lime);padding-left:17px;margin-top:30px;color:#d4ded9;font-size:12px;line-height:1.55}.quiz-card{background:var(--paper);color:var(--ink);padding:38px;min-height:420px;box-shadow:var(--shadow)}.quiz-top{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.quiz-top button{border:0;background:transparent;font-size:10px;text-transform:uppercase;cursor:pointer}.progress{height:3px;background:#e3e5df;margin:15px 0 45px}.progress i{display:block;height:100%;background:#7f975d;width:10%;transition:.3s}.quiz-question{font-family:"DM Sans";font-size:30px;line-height:1.2;letter-spacing:-.03em;margin:0 0 30px}.quiz-options{display:grid;gap:10px}.quiz-option{border:1px solid var(--line);padding:15px 17px;background:white;text-align:left;cursor:pointer;transition:.2s}.quiz-option:hover{border-color:#7d9170;background:#f3f5eb}.quiz-result h3{font-size:32px;margin:0 0 12px}.quiz-result p{color:var(--muted);line-height:1.6}.quiz-result .button{margin-top:15px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);padding-left:6vw;padding-right:6vw}.values article{background:var(--paper);padding:45px}.values span{font-size:11px;color:var(--muted)}.values h3{font-family:"DM Sans";font-size:24px}.values p{color:var(--muted);font-size:13px;line-height:1.6}footer{background:#121c18;color:#e9eee9;padding:60px 6vw;display:grid;grid-template-columns:2fr 1fr 1.4fr 2fr;gap:40px;font-size:12px}.footer-brand{display:flex;gap:15px;align-items:start}.footer-brand .brand-mark{border-color:#e9eee9}.footer-brand p{margin:4px 0;line-height:1.6}.footer-brand small,.legal{color:#9ba6a0}footer>div:not(.footer-brand){display:flex;flex-direction:column;gap:10px}footer strong{text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}.overlay{position:fixed;inset:0;background:rgba(9,18,14,.5);z-index:40}.cart-drawer{position:fixed;right:0;top:0;bottom:0;width:min(460px,100%);background:var(--paper);z-index:41;transform:translateX(102%);transition:.28s;display:flex;flex-direction:column;padding:28px}.cart-drawer.open{transform:none}.drawer-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px}.drawer-head h2{font-family:"DM Sans";margin:0}.drawer-head .eyebrow{margin-bottom:5px}.drawer-head button,.modal-close{border:0;background:transparent;font-size:30px;cursor:pointer}.cart-items{overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:75px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-thumb{background:#e5e8e1;display:grid;place-items:center;font-size:9px}.cart-item h4{margin:0 0 5px;font-size:13px}.cart-item p{margin:0;color:var(--muted);font-size:11px}.qty{display:flex;align-items:center;gap:9px;margin-top:10px}.qty button{width:24px;height:24px;border:1px solid var(--line);background:white;cursor:pointer}.remove-item{border:0;background:transparent;color:var(--muted);font-size:18px;cursor:pointer}.cart-empty{text-align:center;margin:auto;padding:30px}.cart-empty p{color:var(--muted);font-size:13px;line-height:1.6}.cart-summary{border-top:1px solid var(--line);padding-top:20px}.cart-summary>div{display:flex;justify-content:space-between;font-size:16px}.cart-summary p{font-size:11px;color:var(--muted)}.full{width:100%}.product-modal{border:0;padding:0;width:min(900px,92vw);box-shadow:var(--shadow);background:var(--paper)}.product-modal::backdrop{background:rgba(9,18,14,.6)}.modal-close{position:absolute;right:18px;top:12px;z-index:2}.modal-layout{display:grid;grid-template-columns:1fr 1fr;min-height:540px}.modal-visual{background:linear-gradient(145deg,#e7e8df,#cdd5cc);display:grid;place-items:center}.modal-visual .mini-bottle{position:relative;width:130px;height:280px;border-radius:8px 8px 20px 20px;background:linear-gradient(100deg,#fff,#c8cec8 55%,#f9f9f9);display:flex;align-items:center;justify-content:center;text-align:center;flex-direction:column;box-shadow:0 25px 40px rgba(30,50,42,.18)}.modal-details{padding:60px 45px}.modal-details h2{font-family:"DM Sans";font-size:34px;line-height:1.1;margin:12px 0}.modal-price{font-size:20px;font-weight:700}.modal-description{color:var(--muted);line-height:1.7;font-size:13px;margin:24px 0}.specs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;margin-bottom:25px}.specs div{display:flex;justify-content:space-between;padding:7px 0;font-size:11px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,30px);background:var(--ink);color:white;padding:12px 18px;z-index:60;opacity:0;transition:.25s;font-size:12px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1000px){nav{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-visual{height:500px}.collection-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.consultation{grid-template-columns:1fr}.values{grid-template-columns:1fr}.values article{padding:30px}footer{grid-template-columns:1fr 1fr}.modal-layout{grid-template-columns:1fr}.modal-visual{min-height:360px}}
@media(max-width:640px){.site-header{height:72px;padding:0 18px}.brand strong{font-size:10px}.hero{padding:55px 20px}.hero h1{font-size:48px}.hero-actions,.proof{flex-direction:column;align-items:stretch}.hero-visual{height:390px}.bottle-tall{height:280px;width:115px;padding-top:105px}.bottle i{left:25px;width:66px}.jar{width:155px;height:140px;padding-top:50px}.professional-strip{margin:0 12px;padding:22px;align-items:flex-start;flex-wrap:wrap}.professional-strip a{margin-left:0}.section{padding:75px 18px}.section-heading{display:block}.collection-grid,.product-grid{grid-template-columns:1fr 1fr;gap:20px 8px}.collection-card{min-height:220px;padding:18px}.collection-card h3{font-size:22px}.shop-tools{flex-direction:column}.search kbd{display:none}select{height:48px}.product-image{height:230px}.product-image .mini-bottle{transform:translate(-50%,-40%) scale(.78)}.product-info h3{font-size:12px}.consultation{padding:75px 18px}.quiz-card{padding:25px 20px}.quiz-question{font-size:25px}.values{padding-left:18px;padding-right:18px}footer{grid-template-columns:1fr;padding:45px 20px}.modal-details{padding:42px 25px}.modal-visual{min-height:300px}.modal-visual .mini-bottle{transform:scale(.8)}}
.product-photo{position:absolute;inset:24px;width:calc(100% - 48px);height:calc(100% - 48px);object-fit:contain;z-index:1;filter:drop-shadow(0 18px 18px rgba(35,52,44,.16))}.product-photo+.mini-bottle{display:none}.source-question{display:block;font-family:"Manrope",sans-serif;font-size:12px;line-height:1.55;letter-spacing:0;color:var(--muted);font-weight:400;margin-top:13px}.consultation-intro a{border-bottom:1px solid #cdd9b1}.modal-product-photo{width:78%;height:78%;object-fit:contain;filter:drop-shadow(0 25px 25px rgba(30,50,42,.2))}.source-link{display:inline-block;margin:0 0 22px;font-size:11px;border-bottom:1px solid var(--ink)}
.brand-mark{height:62px;grid-template-rows:repeat(3,1fr);line-height:1;letter-spacing:0}.brand-letter{display:grid;place-items:center;width:100%;height:100%;font-size:16px}.brand-copy{display:block}.hero-product{position:absolute;z-index:2;object-fit:contain;filter:drop-shadow(0 28px 25px rgba(30,50,42,.22))}.hero-product-main{width:250px;height:350px;left:50%;bottom:28px;transform:translateX(-72%)}.hero-product-side{width:130px;height:205px;left:50%;bottom:38px;transform:translateX(42%) rotate(5deg)}
.header-actions{display:flex;align-items:center;gap:10px}.language-picker select{min-width:76px;height:42px;border-color:var(--ink);background:transparent;font-weight:700;cursor:pointer}.cart-button b{background:var(--deep);color:white;border-radius:50%;min-width:20px;height:20px;display:inline-grid;place-items:center;font-size:11px;margin-left:7px}.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}.description-language{font-size:11px;color:var(--muted);font-style:italic;margin:16px 0 -12px}
@media(max-width:640px){.header-actions{gap:5px}.language-picker select{min-width:62px;width:62px;padding:0 7px}.cart-button{padding:10px}.cart-label{display:none}.brand-mark{width:38px;height:54px}.brand-copy small{display:none}.hero-product-main{width:205px;height:280px;left:50%;transform:translateX(-70%)}.hero-product-side{width:105px;height:155px;left:50%;transform:translateX(38%) rotate(5deg)}}
.professional-only{font-size:11px;line-height:1.45;color:var(--deep);font-weight:700}.professional-only-link{display:inline-block;margin-top:12px;border-bottom:1px solid currentColor;font-size:12px;font-weight:700}
.cart-button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.cart-button .cart-label{display:inline;background:transparent;color:inherit;border-radius:0;min-width:0;height:auto;font-size:inherit;margin:0}.professional-strip a{white-space:pre-line;line-height:1.7;text-align:right}
@media(max-width:640px){.professional-strip a{text-align:left}.cart-button .cart-label{display:none}}
.product-modal{width:min(1120px,94vw)}.modal-details{max-height:86vh;overflow:auto}.modal-description{white-space:pre-line}.product-detail-block{border-top:1px solid var(--line);padding:18px 0}.product-detail-block h3{font-family:"DM Sans";font-size:18px;letter-spacing:-.02em;margin:0 0 10px}.product-detail-block p,.product-detail-block li{color:var(--muted);font-size:12px;line-height:1.65}.product-detail-block p{white-space:pre-line}.product-detail-block ul{margin:0;padding-left:18px}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.related-product{border:1px solid var(--line);background:white;padding:10px;text-align:left;cursor:pointer;display:grid;grid-template-columns:58px 1fr;gap:8px;align-items:center}.related-product img,.related-placeholder{width:58px;height:58px;object-fit:contain;background:#eef1eb}.related-placeholder{display:grid;place-items:center;font-size:9px;color:var(--muted)}.related-product strong{font-size:11px;line-height:1.25}.related-product small,.related-product span{font-size:10px;color:var(--muted)}.related-product:hover{border-color:var(--deep);background:#f7f8f2}
.compare-button{width:max-content;border:1px solid var(--line);background:white;color:var(--deep);padding:8px 10px;margin-top:10px;font-size:11px;font-weight:700;cursor:pointer}.compare-button:hover{border-color:var(--deep)}.comparison-modal{border:0;padding:0;width:min(980px,94vw);max-height:88vh;background:var(--paper);box-shadow:var(--shadow)}.comparison-modal::backdrop{background:rgba(9,18,14,.6)}.comparison-shell{padding:42px;display:grid;gap:18px;max-height:88vh;overflow:auto}.comparison-head{padding-right:40px}.comparison-head h2{font-family:"DM Sans";font-size:38px;line-height:1.08;letter-spacing:-.035em;margin:0 0 12px}.comparison-head p:not(.eyebrow){color:var(--muted);line-height:1.6}.comparison-selectors{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comparison-selectors label{display:grid;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.comparison-selectors select{height:46px;width:100%;min-width:0;background:white}.comparison-grid,.comparison-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comparison-grid article,.comparison-block{background:white;border:1px solid var(--line);padding:16px}.comparison-grid span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:6px}.comparison-grid h3,.comparison-block h3{font-family:"DM Sans";font-size:20px;letter-spacing:-.02em;margin:0 0 10px}.comparison-grid p,.comparison-block p,.comparison-block li{font-size:13px;line-height:1.6;color:var(--muted)}.comparison-block ul{margin:0;padding-left:18px}.comparison-columns p{margin:0}
@media(max-width:640px){.related-grid{grid-template-columns:1fr}.modal-details{max-height:none}}
@media(max-width:700px){.comparison-shell{padding:34px 20px}.comparison-selectors,.comparison-grid,.comparison-columns{grid-template-columns:1fr}.compare-button{width:100%}}
:root{--ink:#171717;--muted:#6d746d;--cream:#ead9cd;--paper:#f8efe7;--sage:#9eaa92;--deep:#1e4b3b;--lime:#dce8aa;--rose:#e6aaa7;--burgundy:#1e4b3b;--gold:#d2a967;--line:#dfcec2;--white:#fff;--shadow:0 24px 70px rgba(30,75,59,.13)}
.announcement{background:var(--deep);color:#f3f7ec}.site-header{background:rgba(248,239,231,.94)}
.brand{gap:12px}.brand-logo{display:block;width:188px;max-width:31vw;line-height:0}.brand-logo img{display:block;width:100%;height:auto}.brand-copy small{font-size:9px;letter-spacing:.3em;color:var(--muted)}
.button.primary,.quick-add,.toast{background:var(--ink);color:white}.quick-add{pointer-events:none}.product-image:hover .quick-add{pointer-events:auto}.cart-button b{background:var(--sage);color:var(--ink)}.eyebrow,.hero h1 em{color:var(--sage)}.proof span:before{color:var(--sage)}
.hero{background:radial-gradient(circle at 77% 24%,rgba(230,170,167,.36) 0,transparent 30%),linear-gradient(135deg,#f8efe7,#ead9cd)}
.orb-one{background:linear-gradient(135deg,#dce8aa,#9eaa92)}.professional-strip{background:#dce8aa;box-shadow:0 30px 70px rgba(30,75,59,.22),0 10px 24px rgba(30,75,59,.12)}.professional-only{color:var(--deep)}
.consultation,footer{background:var(--deep)}.consultation .eyebrow{color:var(--lime)}.progress i{background:var(--sage)}.filter-chip.active{background:var(--deep);border-color:var(--deep)}
.footer-logo{display:block;width:210px;max-width:100%;filter:brightness(0) invert(1)}.footer-brand{align-items:center}.footer-brand p{margin:0}
.footer-apps a{display:grid;gap:4px;line-height:1.45}.footer-apps span{font-weight:700}.footer-apps small{color:#c5d0cb;line-height:1.5}
@media(min-width:1001px){footer{grid-template-columns:1.5fr .85fr 1.2fr 1.9fr 2fr}}
@media(max-width:640px){.brand-logo{width:146px;max-width:45vw}.brand-copy{display:none}.footer-logo{width:180px}}
.brand-copy{padding:12px 0}.klapp-logo-link{display:flex;align-items:center;line-height:0}.klapp-header-logo{display:block;width:168px;max-width:20vw;height:auto;mix-blend-mode:multiply}.klapp-brand{background:var(--paper);padding-top:95px;padding-bottom:95px}.klapp-brand .section-heading{align-items:flex-start}.klapp-more-link{display:block;width:max-content;margin-top:16px;color:var(--deep);font-weight:700;text-decoration:underline;text-underline-offset:5px}.klapp-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.klapp-facts article{background:white;padding:28px 24px;min-height:125px}.klapp-facts span{display:block;font-family:"DM Sans";font-size:34px;letter-spacing:-.04em;color:var(--deep);margin-bottom:12px}.klapp-facts strong{font-size:12px;text-transform:uppercase;letter-spacing:.1em}@media(max-width:800px){.klapp-facts{grid-template-columns:repeat(2,1fr)}.klapp-brand .section-heading{display:block}.klapp-brand .section-heading>p{margin-top:24px}}@media(max-width:520px){.klapp-facts{grid-template-columns:1fr}.klapp-more-link{width:auto}}
.stock-badge{display:inline-block;margin-top:10px;font-size:10px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;color:var(--deep);font-weight:700}.stock-preorder{color:#6d746d}.stock-out{color:#9a4a4a}.quick-add:disabled,.button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.quick-add{z-index:4}.professional-contact{display:flex;align-items:center;justify-content:center;text-align:left;line-height:1.35;white-space:normal}
.routine-builder{background:white;border-top:1px solid var(--line)}
.routine-form{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;background:var(--paper);border:1px solid var(--line);padding:24px;margin-bottom:22px}
.routine-form label,.routine-form fieldset{display:grid;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.routine-form select{width:100%;min-width:0;height:46px;background:white}
.routine-form fieldset{position:relative;border:1px solid var(--line);background:white;margin:18px 0 0;padding:18px 14px 14px;text-transform:none;letter-spacing:0}
.routine-form legend{position:absolute;left:0;top:-20px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding:0}
.routine-form fieldset label{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;text-transform:none;letter-spacing:0}
.routine-form fieldset input{width:auto}.routine-form .button{grid-column:1/-1}
.routine-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.routine-tier{border:1px solid var(--line);background:var(--paper);padding:18px;display:grid;gap:14px;align-content:start}
.routine-tier-head{display:flex;justify-content:space-between;gap:16px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:12px}
.routine-tier-head h3{font-family:"DM Sans";font-size:22px;letter-spacing:-.02em;margin:0}.routine-tier-head strong{white-space:nowrap}
.routine-step-block{display:grid;gap:8px}.routine-step-block h4{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.routine-step-block>p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.routine-product{display:grid;grid-template-columns:58px 1fr;gap:10px;background:white;border:1px solid var(--line);padding:10px}
.routine-product img,.routine-product-placeholder{width:58px;height:72px;object-fit:contain;background:var(--paper);display:grid;place-items:center;color:var(--muted);font-size:9px;font-weight:700}
.routine-product div{display:grid;gap:4px;align-content:start}.routine-product span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.routine-product strong{font-size:12px;line-height:1.3}.routine-product small{font-size:11px;color:var(--muted);font-weight:700}
.routine-product ul{margin:0;padding-left:16px;color:var(--muted);font-size:11px;line-height:1.45}
.inline-product-link{width:max-content;border:1px solid var(--line);background:white;color:var(--deep);padding:7px 10px;font-size:11px;font-weight:700;cursor:pointer}
.inline-product-link:hover{border-color:var(--deep)}
.ingredient-explorer{background:var(--paper);border-top:1px solid var(--line)}
.ingredient-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.ingredient-tab{border:1px solid var(--line);background:white;color:var(--ink);cursor:pointer;padding:10px 13px;font-size:12px;font-weight:700}.ingredient-tab.active{background:var(--deep);border-color:var(--deep);color:white}
.ingredient-page{display:grid;gap:16px}.ingredient-head{background:white;border:1px solid var(--line);padding:22px}.ingredient-head h3{font-family:"DM Sans";font-size:34px;line-height:1.08;letter-spacing:-.035em;margin:0 0 10px}.ingredient-head p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.55}
.ingredient-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ingredient-grid section,.ingredient-product-block{background:white;border:1px solid var(--line);padding:16px}.ingredient-grid h4,.ingredient-product-block h4{font-family:"DM Sans";font-size:18px;letter-spacing:-.02em;margin:0 0 10px}.ingredient-grid p,.ingredient-grid li,.ingredient-product-block p{font-size:13px;line-height:1.6;color:var(--muted)}.ingredient-grid ul{margin:0;padding-left:18px}
.ingredient-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ingredient-product{border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer;padding:12px;display:grid;gap:6px}.ingredient-product strong{font-size:13px;line-height:1.35}.ingredient-product span{font-size:11px;color:var(--muted);line-height:1.4}.ingredient-product:hover{border-color:var(--deep);background:white}
.cart-thumb img{width:100%;height:100%;object-fit:contain;padding:8px;display:block}
.search-status{min-height:18px;margin:-8px 0 8px;color:var(--muted);font-size:11px}.advanced-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:-16px 0 30px}.shop-filter{display:grid;gap:6px}.shop-filter span{font-size:10px;line-height:1.3;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.shop-filter select,.shop-filter input{width:100%;height:44px;min-width:0;border:1px solid var(--line);background:var(--paper);padding:0 11px}
@media(max-width:1000px){.advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.advanced-filters{grid-template-columns:1fr;margin-top:-8px}.shop-filter select,.shop-filter input{height:48px}}
.professional-page{background:#f8efe7;border-top:1px solid var(--line)}
.professional-heading{align-items:start}
.professional-heading h2{max-width:760px}
.professional-heading>p{font-weight:700;color:var(--ink)}
.professional-callout{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:-18px 0 42px;padding:28px 34px;background:#dce8aa;box-shadow:0 30px 70px rgba(30,75,59,.26),0 10px 24px rgba(30,75,59,.12)}
.professional-callout strong{font-size:18px;line-height:1.35}
.professional-callout p{margin:8px 0 0;color:var(--muted);line-height:1.55}
.professional-callout a{border-bottom:1px solid currentColor;padding-bottom:5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.professional-grid{margin-top:8px}
@media(max-width:760px){.professional-callout{display:block;padding:24px}.professional-callout a{display:inline-block;margin-top:18px;white-space:normal}.professional-page{padding-top:78px}}
.request-modal{border:0;padding:0;width:min(520px,92vw);background:var(--paper);box-shadow:var(--shadow)}.request-modal::backdrop{background:rgba(9,18,14,.6)}.request-form{padding:42px 34px;display:grid;gap:16px}.request-form h2{font-family:"DM Sans";font-size:32px;line-height:1.1;margin:0}.request-products{font-size:12px;line-height:1.55;color:var(--muted);white-space:pre-line;margin:0}.request-form label{display:grid;gap:6px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.request-form input,.request-form textarea{width:100%;border:1px solid var(--line);background:white;color:var(--ink);padding:12px;font:inherit;text-transform:none;letter-spacing:0}.request-form textarea{resize:vertical}.cart-item.request-item .cart-thumb{background:#dce8aa}.cart-item.request-item h4:after{content:"Request";display:inline-block;margin-left:8px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--deep)}
.cart-summary .shipping-row{font-size:13px;color:var(--muted);margin-top:8px}.cart-summary .cart-total-row{border-top:1px solid var(--line);padding-top:12px;margin-top:12px;font-size:18px}
.cart-actions{display:grid;gap:10px}.cart-actions .button[hidden]{display:none}.cart-inline-actions{padding:16px 0 22px;border-bottom:1px solid var(--line)}.cart-inline-actions .button{width:100%}.cart-inline-actions.request-action{padding-top:6px}
.admin-page{background:var(--paper)}.admin-shell{padding:60px 6vw}.admin-login{max-width:430px;background:white;border:1px solid var(--line);padding:32px}.admin-login h1,.admin-dashboard h1{font-family:"DM Sans";font-size:42px;margin:0 0 15px}.admin-login label{display:block;margin:16px 0;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.admin-login input,.admin-table input,.admin-table select,.admin-table textarea,.admin-import textarea{width:100%;border:1px solid var(--line);background:var(--paper);padding:10px}.admin-table textarea,.admin-import textarea{min-width:220px;resize:vertical}.admin-note{color:var(--muted);font-size:13px}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-import{margin:0 0 24px;background:white;border:1px solid var(--line);padding:22px}.admin-import h2{font-family:"DM Sans";font-size:24px;margin:0 0 8px}.admin-import .button{margin-top:12px}.admin-import-message{margin:12px 0 0;padding:11px 13px;border:1px solid var(--line);background:var(--paper);font-size:13px}.admin-import-message[data-state="working"]{color:var(--muted)}.admin-import-message[data-state="success"]{border-color:#8a9d6a;background:#f2f6e9;color:#34451f}.admin-import-message[data-state="error"]{border-color:#bd7777;background:#fff1f1;color:#7c2929}.admin-table-wrap{overflow:auto;background:white;border:1px solid var(--line)}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.admin-table th{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.admin-table small{display:block;color:var(--muted);margin-top:4px}.admin-table details{margin-top:10px}.admin-table summary{cursor:pointer;color:var(--deep);font-weight:700}.admin-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;margin-top:12px;min-width:720px}.admin-editor-grid label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.admin-editor-grid label input,.admin-editor-grid label textarea{margin-top:5px;color:var(--ink);text-transform:none;letter-spacing:0}.admin-checks{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.admin-check{display:inline-flex;gap:6px;align-items:center;color:var(--ink);font-size:13px;text-transform:none;letter-spacing:0}.admin-check input{width:auto}.admin-section{margin-top:45px}.admin-section h2{font-family:"DM Sans";font-size:28px}.admin-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.admin-card{background:white;border:1px solid var(--line);padding:16px}.admin-card p{color:var(--muted);font-size:13px}.admin-card small{color:var(--deep);font-weight:700}.quiz-reason{margin:22px 0 8px;padding:18px 20px;background:white;border:1px solid var(--line)}.quiz-reason h4{margin:0 0 8px;font-size:15px}.quiz-reason p{margin:0 0 10px}.quiz-reason ul{margin:0;padding-left:18px;color:var(--muted);line-height:1.55}
.admin-nav{position:sticky;top:0;z-index:5;display:flex;gap:24px;margin:-24px 0 42px;padding:16px 0;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(10px)}.admin-nav a{color:var(--ink);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.admin-reports{margin-bottom:72px}.admin-report-heading{align-items:flex-end}.report-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:24px 0;padding:18px;background:white;border:1px solid var(--line)}.report-toolbar label{display:grid;gap:7px;min-width:160px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.report-toolbar input,.report-toolbar select{height:42px;border:1px solid var(--line);background:var(--paper);padding:0 11px;color:var(--ink);font:inherit;text-transform:none;letter-spacing:0}.admin-report-status{min-height:20px;color:var(--muted);font-size:12px}.report-kpis{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));border:1px solid var(--line);background:white;margin:18px 0 38px}.report-kpi{padding:22px;border-right:1px solid var(--line)}.report-kpi:last-child{border-right:0}.report-kpi span,.report-kpi small{display:block;color:var(--muted)}.report-kpi span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.report-kpi strong{display:block;margin:10px 0 7px;font-family:"DM Sans";font-size:25px;line-height:1.05}.report-kpi small{font-size:11px;line-height:1.4}.report-panel{margin-top:36px}.report-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:13px}.report-panel h2,.report-suggestions h2{margin:0;font-family:"DM Sans";font-size:27px}.report-panel-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.report-table td{padding:15px 12px}.report-table td:nth-child(2),.report-table td:nth-child(3),.report-table td:nth-child(4){white-space:nowrap}.report-product-list{display:grid;gap:6px;min-width:280px;margin:0;padding:0;list-style:none}.report-product-list li{display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:11px}.report-product-list strong{color:var(--ink);white-space:nowrap}.report-share{width:90px;height:5px;background:var(--paper);margin-bottom:5px}.report-share span{display:block;height:100%;max-width:100%;background:var(--sage)}.stock-signal{display:inline-block;padding:5px 8px;border:1px solid #8a9d6a;background:#f2f6e9;color:#34451f;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.stock-signal.low{border-color:#c99c66;background:#fff6e8;color:#754717}.report-empty{padding:30px!important;color:var(--muted);text-align:center!important}.report-suggestions{margin-top:38px;padding:24px;border-left:4px solid var(--sage);background:white}.report-suggestions p{max-width:900px;margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
@media(max-width:1100px){.report-kpis{grid-template-columns:repeat(2,1fr)}.report-kpi{border-bottom:1px solid var(--line)}}
@media(max-width:640px){.admin-shell{padding:34px 20px}.admin-nav{gap:14px;overflow:auto}.admin-report-heading{align-items:flex-start}.report-toolbar{display:grid;grid-template-columns:1fr 1fr}.report-toolbar label{min-width:0}.report-toolbar .button{width:100%}.report-kpis{grid-template-columns:1fr}.report-kpi{border-right:0}.report-panel h2{font-size:23px}}
.report-toolbar input,.report-toolbar select{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:640px){.admin-page .site-header{flex-wrap:nowrap}.admin-page .site-header .cart-button{width:auto;min-width:max-content}}
@media print{.site-header,.admin-nav,.report-toolbar,.admin-report-heading .admin-actions,#products,#requests,#requests~.admin-section{display:none!important}.admin-shell{padding:0}.admin-reports{margin:0}.report-panel{break-inside:avoid}.admin-table-wrap{overflow:visible}.report-suggestions{display:none}}

@media(max-width:1000px){
  .site-header{height:auto;flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:12px}
  .site-header nav{display:flex;order:3;width:100%;justify-content:center;gap:16px;flex-wrap:wrap;font-size:12px}
  .site-header nav a{padding:3px 0}
  .routine-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .routine-results-grid{grid-template-columns:1fr}
  .ingredient-grid,.ingredient-products{grid-template-columns:1fr}
}

@media(max-width:640px){
  .site-header{padding:14px 16px 12px}
  .brand{gap:6px}
  .klapp-header-logo{max-width:31vw;margin-left:-10px}
  .site-header nav{gap:12px;font-size:11px;line-height:1.3}
  .quick-add,
  .product-image:hover .quick-add{display:none;opacity:0;pointer-events:none;transform:translateY(5px)}
  .routine-form{grid-template-columns:1fr;padding:18px}
}
.footer-legal-links{display:flex;flex-direction:column;gap:10px}
.footer-link-button{border:0;background:transparent;color:inherit;text-align:left;padding:0;cursor:pointer;font:inherit}
.footer-link-button:hover{text-decoration:underline;text-underline-offset:4px}
.legal-modal{border:0;padding:0;width:min(860px,92vw);max-height:86vh;background:var(--paper);box-shadow:var(--shadow)}
.legal-modal::backdrop{background:rgba(9,18,14,.6)}
.legal-content{padding:48px;max-height:86vh;overflow:auto}
.legal-content h2{font-family:"DM Sans";font-size:38px;line-height:1.1;margin:0 42px 12px 0;letter-spacing:-.035em}
.legal-content h3{font-family:"DM Sans";font-size:22px;margin:30px 0 10px;letter-spacing:-.02em}
.legal-content p,.legal-content li{font-size:14px;line-height:1.7;color:var(--muted)}
.legal-content ul{margin:8px 0 0;padding-left:20px}
.legal-updated{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--deep);font-weight:700}
.legal-company{display:grid;gap:4px;margin:22px 0;padding:18px 20px;background:white;border:1px solid var(--line);font-size:13px;color:var(--muted)}
.legal-company strong{color:var(--ink)}
footer{align-items:start}footer>div,footer>p{min-width:0}.footer-brand{display:grid;align-items:start;align-content:start;gap:18px}.footer-brand p{max-width:230px}.footer-brand small{display:block;line-height:1.6}.professional-page .load-more{background:white}@media(min-width:1001px){footer{grid-template-columns:minmax(220px,1.25fr) minmax(125px,.75fr) minmax(170px,1fr) minmax(130px,.85fr) minmax(260px,1.55fr) minmax(260px,1.55fr);column-gap:clamp(28px,3vw,56px);row-gap:36px}}
@media(max-width:640px){.legal-content{padding:38px 24px}.legal-content h2{font-size:31px}}
.account-link{border:1px solid var(--line);background:rgba(255,255,255,.55);color:var(--ink);height:42px;padding:0 12px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.account-link:hover,.account-link.account-user{border-color:var(--deep)}
.auth-modal,.profile-modal{border:0;padding:0;background:var(--paper);box-shadow:var(--shadow)}
.auth-modal::backdrop,.profile-modal::backdrop{background:rgba(9,18,14,.58)}
.auth-modal{width:min(430px,92vw)}
.auth-form{padding:42px 34px;display:grid;gap:14px}
.auth-form h2,.profile-head h2{font-family:"DM Sans";font-size:34px;line-height:1.08;letter-spacing:-.035em;margin:0}
.auth-form label,.profile-form label,.password-form label{display:grid;gap:6px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.auth-form input,.profile-form input,.profile-form textarea,.password-form input{width:100%;border:1px solid var(--line);background:white;color:var(--ink);padding:12px;font:inherit;text-transform:none;letter-spacing:0}
.profile-form input[readonly]{background:#f6f2ed;color:var(--muted)}
.auth-row{display:flex;gap:10px;flex-wrap:wrap}
.auth-row .button{flex:1;min-width:150px}
.auth-message,.profile-message{min-height:18px;color:var(--deep);font-size:12px;line-height:1.5;margin:0}
.profile-modal{width:min(920px,94vw)}
.profile-shell{padding:38px;display:grid;gap:24px}
.profile-head{display:flex;align-items:center;gap:16px;padding-right:36px}
.profile-head>div{flex:1;min-width:0}
.profile-logout{border:1px solid var(--line);background:white;color:var(--ink);height:38px;padding:0 12px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.profile-logout:hover{border-color:var(--deep)}
.profile-photo{width:52px;height:52px;border-radius:50%;object-fit:cover;background:white;border:1px solid var(--line)}
.profile-meta{display:grid;gap:5px;min-width:0}
.profile-meta span{font-size:12px;color:var(--muted);word-break:break-word}
.profile-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:10px}
.profile-tab{border:1px solid var(--line);background:white;padding:9px 13px;font-size:12px;font-weight:700;cursor:pointer}
.profile-tab.active{background:var(--deep);border-color:var(--deep);color:white}
.profile-panel{display:none}
.profile-panel.active{display:block}
.profile-form,.password-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-check{display:flex!important;align-items:flex-start;gap:9px;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;line-height:1.45;overflow-wrap:anywhere}
.profile-check input{width:auto}
.profile-professional-title{grid-column:1/-1;margin:8px 0 -4px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:600}
.profile-professional-title[hidden]{display:none!important}
.profile-professional-fields{grid-column:1/-1;border:1px solid var(--line);background:white;padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-professional-fields[hidden]{display:none!important}
.profile-professional-fields textarea{resize:vertical;min-height:88px}
.profile-form .button,.password-form .button,.profile-form .profile-message{grid-column:1/-1}
.future-profile{grid-column:1/-1;border:1px solid var(--line);background:white;padding:16px;color:var(--muted);font-size:12px;line-height:1.6}
.profile-list{display:grid;gap:10px}
.profile-list-item{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;background:white;border:1px solid var(--line);padding:12px}
.profile-list-item img{width:56px;height:56px;object-fit:contain;background:var(--paper)}
.profile-list-item strong{display:block;font-size:13px;line-height:1.35}
.profile-list-item span{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.profile-list-item button{border:1px solid var(--line);background:var(--paper);padding:8px 10px;cursor:pointer}
.favorite-toggle{position:absolute;right:12px;top:12px;z-index:5;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.88);color:var(--ink);font-size:18px;line-height:1;display:grid;place-items:center;cursor:pointer}
.favorite-toggle:hover,.favorite-toggle.active{background:var(--deep);border-color:var(--deep);color:white}
@media(max-width:1000px){.header-actions{flex-wrap:wrap;justify-content:flex-end}.account-link{height:36px;padding:0 9px;font-size:11px}}
@media(max-width:640px){.header-actions{width:100%;justify-content:flex-start}.account-link{flex:1;min-width:82px}.profile-shell{padding:34px 20px}.profile-head{align-items:flex-start}.profile-form,.password-form,.profile-professional-fields{grid-template-columns:1fr}.profile-list-item{grid-template-columns:46px 1fr}.profile-list-item button{grid-column:1/-1}.favorite-toggle{width:32px;height:32px;right:8px;top:8px}}
.skin-analysis-entry{background:white;border-top:1px solid var(--line)}
.skin-analysis-card{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#dce8aa;padding:28px 34px;box-shadow:0 18px 45px rgba(30,75,59,.12)}
.skin-analysis-card strong{font-size:18px}
.skin-analysis-card p{margin:8px 0 0;color:var(--muted);line-height:1.55}
.skin-modal{border:0;padding:0;width:min(1120px,94vw);max-height:min(90vh,900px);overflow:auto;background:var(--paper);box-shadow:var(--shadow);box-sizing:border-box}
.skin-modal::backdrop{background:rgba(9,18,14,.6)}
.skin-shell{padding:40px;display:grid;gap:24px;box-sizing:border-box}
.skin-head{padding-right:42px}
.skin-head h2{font-family:"DM Sans";font-size:38px;line-height:1.08;letter-spacing:-.035em;margin:0 0 12px}
.skin-head p:not(.eyebrow){color:var(--muted);line-height:1.6;max-width:680px}
.skin-login-prompt,.skin-disclaimer{background:white;border:1px solid var(--line);padding:18px 20px}
.skin-login-prompt p,.skin-disclaimer{color:var(--muted);line-height:1.6;font-size:13px}
.skin-workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:start;min-width:0}
.skin-disclaimer{grid-column:1/-1}
.skin-visual-panel{background:white;border:1px solid var(--line);padding:22px;display:grid;gap:14px;min-height:420px;min-width:0}
.skin-form{display:grid;gap:14px;background:white;border:1px solid var(--line);padding:22px;min-width:0}
.skin-file{display:grid;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.skin-file input{width:100%;max-width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--paper);padding:12px;text-transform:none;letter-spacing:0;color:var(--ink)}
.skin-preview-wrap[hidden],.skin-preview-placeholder[hidden]{display:none!important}
.skin-preview-wrap{background:var(--paper);border:1px solid var(--line);padding:12px;min-height:330px;display:grid;place-items:center}
.skin-preview-wrap img{display:block;width:100%;max-height:520px;object-fit:contain}
.skin-preview-placeholder{min-height:330px;border:1px dashed var(--line);background:var(--paper);display:grid;place-items:center;text-align:center;padding:28px;color:var(--muted)}
.skin-preview-placeholder strong{display:block;color:var(--ink);font-family:"DM Sans";font-size:24px;line-height:1.15;margin-bottom:10px}
.skin-preview-placeholder span{max-width:320px;line-height:1.55;font-size:13px}
.skin-progress{display:grid;gap:8px;border:1px solid var(--line);background:var(--paper);padding:12px}
.skin-progress span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.skin-progress span:before{content:"";display:inline-block;width:8px;height:8px;border:1px solid currentColor;border-radius:50%;margin-right:8px}
.skin-progress span.active{color:var(--ink);font-weight:700}
.skin-progress span.done{color:#60715f}
.skin-progress span.done:before{background:#60715f;border-color:#60715f}
.skin-result-panel{border:1px solid var(--line);background:var(--paper);padding:18px;display:grid;gap:14px}
.skin-result-panel h3{font-family:"DM Sans";font-size:22px;line-height:1.15;margin:0 0 12px}
.skin-result-panel h4{font-family:"DM Sans";font-size:18px;line-height:1.2;margin:8px 0 0}
.skin-result-panel p{margin:0;color:var(--muted);line-height:1.6;font-size:13px}
.skin-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.skin-result-grid div{background:white;border:1px solid var(--line);padding:10px}
.skin-result-grid dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.skin-result-grid dd{margin:5px 0 0;font-weight:700;text-transform:none}
.skin-result-tags,.skin-history-result{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.skin-result-tags span,.skin-history-result span,.skin-history-result em{background:white;border:1px solid var(--line);padding:5px 8px;font-size:11px;font-style:normal;text-transform:none}
.skin-recommendations{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:16px;margin-top:4px}
.skin-routine-block{display:grid;gap:9px}
.skin-routine-block h5{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.skin-rec-list{display:grid;gap:10px}
.skin-rec-card{display:grid;grid-template-columns:82px 1fr;gap:12px;background:white;border:1px solid var(--line);padding:10px}
.skin-rec-card img,.skin-rec-placeholder{width:82px;height:100px;object-fit:contain;background:var(--paper);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--muted)}
.skin-rec-card div{display:grid;gap:5px;align-content:start}
.skin-rec-card span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.skin-rec-card strong{font-size:13px;line-height:1.3}
.skin-rec-card small{font-weight:700}
.skin-rec-card p{font-size:12px;line-height:1.45}
.skin-rec-card .button{padding:9px 12px;font-size:12px;width:max-content}
.skin-rec-score{display:flex!important;align-items:center;gap:8px;flex-wrap:wrap}
.skin-rec-score b{color:#60715f;font-size:13px;letter-spacing:.04em}
.skin-rec-score small{color:var(--muted);font-size:11px;text-transform:none}
.skin-rec-reasons{margin:0;padding-left:18px;color:var(--muted);font-size:12px;line-height:1.45}
.skin-rec-reasons li{margin:2px 0}
.skin-routine-total{font-weight:700;color:var(--ink)!important}
.skin-history{background:white;border:1px solid var(--line);padding:22px}
.skin-history h3{font-family:"DM Sans";font-size:24px;line-height:1.15;margin:0 0 14px}
.skin-history-item{grid-template-columns:64px 1fr auto}
.skin-history-item[data-open-skin]{cursor:pointer}
.skin-history-item[data-open-skin]:hover{border-color:var(--deep);background:#fbfaf6}
.skin-history-open{margin-top:10px}
.skin-history-item img,.skin-thumb-empty{width:64px;height:64px;object-fit:cover;background:var(--paper)}
.skin-thumb-empty{display:grid;place-items:center;color:var(--muted);font-weight:700}
@media(max-width:760px){.skin-analysis-card{display:block;padding:24px}.skin-analysis-card .button{margin-top:18px;width:100%}.skin-shell{padding:34px 20px}.skin-workspace{grid-template-columns:1fr}.skin-visual-panel{min-height:0}.skin-preview-wrap,.skin-preview-placeholder{min-height:240px}.skin-result-grid{grid-template-columns:1fr}.skin-rec-card{grid-template-columns:70px 1fr}.skin-rec-card img,.skin-rec-placeholder{width:70px;height:86px}.skin-rec-card .button{width:100%}.skin-history-item{grid-template-columns:52px 1fr}.skin-history-item img,.skin-thumb-empty{width:52px;height:52px}}
.professional-assistant{background:white;border-top:1px solid var(--line)}
.assistant-gate{border:1px solid var(--line);background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px}
.assistant-gate strong{font-size:18px}.assistant-gate p{color:var(--muted);margin:6px 0 0;line-height:1.55}
.assistant-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}
.assistant-main,.assistant-history{border:1px solid var(--line);background:var(--paper);padding:22px}
.assistant-form{display:grid;gap:12px}.assistant-form label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:11px}
.assistant-form textarea{border:1px solid var(--line);background:white;color:var(--ink);width:100%;resize:vertical;padding:14px;line-height:1.5}
.assistant-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.assistant-suggestions button{border:1px solid var(--line);background:white;cursor:pointer;padding:9px 12px;font-size:12px}
.assistant-answer{border:1px solid var(--line);background:white;margin-top:16px;padding:18px;white-space:pre-wrap;line-height:1.6}.assistant-answer h3{font-family:"DM Sans";font-size:22px;margin:0 0 12px}
.assistant-citations{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;display:grid;gap:8px}.assistant-citation{background:var(--paper);border:1px solid var(--line);padding:10px;font-size:12px;color:var(--muted)}.assistant-citation strong{color:var(--ink);display:block;margin-bottom:4px}
.assistant-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.assistant-history-head h3{font-family:"DM Sans";font-size:22px;margin:0}.assistant-history-head button{border:1px solid var(--line);background:white;cursor:pointer;padding:8px 10px;font-size:12px}
.assistant-history-item{border:1px solid var(--line);background:white;padding:12px;margin-bottom:10px}.assistant-history-item strong{display:block;font-size:13px;line-height:1.4}.assistant-history-item span{color:var(--muted);display:block;font-size:12px;margin-top:5px;line-height:1.45}
@media(max-width:900px){.assistant-shell{grid-template-columns:1fr}.assistant-gate{display:block}.assistant-gate .button{width:100%;margin-top:16px}}
.professional-assistant-compact{background:white;border-top:1px solid var(--line);padding-top:78px;padding-bottom:78px}
.professional-assistant-compact .section-heading{margin-bottom:24px}
.assistant-compact-card{background:var(--paper);box-shadow:none}
.treatment-compatibility{background:white;border-top:1px solid var(--line)}
.professional-conversion-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(28px,5vw,72px);align-items:stretch;margin-bottom:36px;padding:clamp(36px,5vw,72px);background:#111b17;color:white}
.professional-hero-copy{display:grid;align-content:center;gap:22px;min-width:0}
.professional-hero-copy h1,.professional-hero-copy p,.professional-hero-actions,.professional-hero-actions .button{min-width:0;max-width:100%;overflow-wrap:anywhere}
.professional-hero-copy .eyebrow{color:#dce8aa}
.professional-hero-copy h1{font-family:"DM Sans";font-size:clamp(40px,5.6vw,74px);line-height:1;letter-spacing:0;margin:0;max-width:1040px;overflow-wrap:normal;word-break:normal;hyphens:none}
.professional-hero-copy p:not(.eyebrow){font-size:clamp(17px,2vw,23px);line-height:1.45;color:#eef1ea;max-width:880px;margin:0}
.professional-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.professional-hero-actions .button{border-color:rgba(255,255,255,.42);color:white}
.professional-hero-actions .professional-contact-cta{white-space:pre-line;line-height:1.45;text-align:left;align-items:center}
.professional-hero-actions .button.primary{background:#dce8aa;border-color:#dce8aa;color:#111b17}
.professional-hero-actions .button.ghost{background:transparent}
.professional-hero-panel{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);padding:30px;display:grid;align-content:center;gap:16px;min-height:320px}
.professional-hero-panel span{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#dce8aa}
.professional-hero-panel strong{font-family:"DM Sans";font-size:clamp(27px,3vw,42px);line-height:1.08;letter-spacing:-.035em}
.professional-hero-panel p{margin:0;color:#dfe6db;line-height:1.55}
.professional-value-section{display:grid;gap:18px;margin-bottom:34px}
.professional-value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.professional-value-grid article,.professional-audience,.professional-tool-card{border:1px solid var(--line);background:white;padding:22px;min-width:0}
.professional-value-grid span{display:block;font-size:11px;letter-spacing:.14em;color:var(--deep);margin-bottom:30px}
.professional-value-grid h3{font-family:"DM Sans";font-size:24px;line-height:1.1;letter-spacing:-.03em;margin:0 0 10px}
.professional-value-grid p,.professional-audience p,.professional-tool-card small{margin:0;color:var(--muted);line-height:1.55}
.professional-audience{display:flex;align-items:center;justify-content:space-between;gap:20px}
.professional-audience p{max-width:760px}
.professional-audience-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.professional-audience-badges span{border:1px solid var(--line);background:var(--paper);padding:8px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.09em}
.professional-tool-overview{margin-bottom:34px}
.professional-tools-heading{margin-bottom:18px}
.professional-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.professional-tool-card{display:grid;gap:8px;text-align:left;color:var(--ink);cursor:pointer;text-decoration:none}
.professional-tool-card span{font-family:"DM Sans";font-size:22px;font-weight:700;line-height:1.12;letter-spacing:-.025em}
.professional-tool-card:hover{border-color:var(--deep);background:#fbfaf6}
.treatment-gate,.treatment-toolbar{border:1px solid var(--line);background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px}
.treatment-gate[hidden],.treatment-matrix-wrap[hidden]{display:none!important}
.treatment-gate strong{font-size:18px}.treatment-gate p,.treatment-toolbar p{margin:6px 0 0;color:var(--muted);line-height:1.55;font-size:13px}
.treatment-matrix-wrap{display:grid;gap:16px}.treatment-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.treatment-card{border:1px solid var(--line);background:var(--paper);padding:18px;display:grid;gap:12px;align-content:start}
.treatment-card-head{border-bottom:1px solid var(--line);padding-bottom:10px}.treatment-card-head span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:6px}
.treatment-card h3{font-family:"DM Sans";font-size:22px;line-height:1.12;letter-spacing:-.02em;margin:0}
.treatment-card p,.treatment-card li{font-size:13px;line-height:1.6;color:var(--muted)}.treatment-answer{white-space:pre-wrap;font-size:13px;line-height:1.65;color:var(--muted)}
.treatment-citations{border-top:1px solid var(--line);margin:0;padding:12px 0 0 18px}.treatment-citations strong{color:var(--ink)}
@media(max-width:900px){.treatment-matrix{grid-template-columns:1fr}.treatment-gate,.treatment-toolbar{display:block}.treatment-gate .button,.treatment-toolbar .button{width:100%;margin-top:16px}}
.treatment-compatibility{background:linear-gradient(180deg,#fff 0,#fbfaf6 58%,#f4f1e9 100%)}
.workstation-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:-18px 0 28px}
.workstation-actions .button{min-height:54px;text-align:center}
.protocol-builder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border:1px solid var(--line);background:var(--paper);padding:24px;margin-bottom:18px}
.protocol-builder-head{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:4px}
.protocol-builder-head strong{font-family:"DM Sans";font-size:28px;letter-spacing:-.03em}
.protocol-builder-head p{margin:8px 0 0;color:var(--muted);line-height:1.55;max-width:720px}
.protocol-builder label{display:grid;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.protocol-builder select{height:48px;width:100%;min-width:0;background:white}
.protocol-builder .button.full{grid-column:1/-1}
.protocol-output{display:grid;gap:14px;margin-bottom:18px}
.protocol-output>.admin-note,.protocol-output>p{border:1px solid var(--line);background:white;padding:18px;margin:0;color:var(--muted)}
.protocol-output-head{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#111b17;color:white;padding:16px 18px}
.protocol-output-head strong{font-size:16px}.protocol-output-head span{font-size:12px;color:#dce8aa}
.protocol-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.protocol-product-card{display:grid;grid-template-columns:76px 1fr;gap:12px;border:1px solid var(--line);background:white;padding:12px;min-width:0}
.protocol-product-card img,.protocol-product-placeholder{width:76px;height:92px;object-fit:contain;background:var(--paper);display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:700}
.protocol-product-card span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:4px}
.protocol-product-card strong{display:block;font-size:13px;line-height:1.35}
.protocol-product-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.protocol-product-actions button{border:1px solid var(--line);background:var(--paper);padding:7px 9px;font-size:11px;cursor:pointer}
.protocol-product-actions button.selected{background:var(--deep);border-color:var(--deep);color:white;min-width:38px}
.protocol-step-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.protocol-step-card{border:1px solid var(--line);background:white;padding:16px;min-width:0}
.protocol-step-card h3{font-family:"DM Sans";font-size:18px;line-height:1.15;letter-spacing:-.02em;margin:0 0 12px}
.protocol-step-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.protocol-sources{border:1px solid var(--line);background:white;padding:16px}
.protocol-sources strong{display:block;margin-bottom:8px}.protocol-sources ul{margin:0;padding-left:18px}.protocol-sources li{color:var(--muted);font-size:12px;line-height:1.55}.protocol-sources summary{margin-top:10px;cursor:pointer;font-weight:700;color:var(--deep)}
@media(max-width:1100px){.protocol-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.protocol-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.workstation-actions,.protocol-builder,.protocol-products,.protocol-step-grid{grid-template-columns:1fr}.protocol-builder-head{display:block}.workstation-actions .button{width:100%}}
@media(max-width:1100px){.professional-conversion-hero{grid-template-columns:1fr}.professional-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.professional-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.professional-hero-panel{min-height:auto}.professional-audience{display:grid}}
@media(max-width:640px){.professional-conversion-hero{padding:30px 22px;margin-left:-2px;margin-right:-2px;overflow:hidden}.professional-hero-actions .button{width:100%;white-space:normal}.professional-value-grid,.professional-tool-grid{grid-template-columns:1fr}.professional-value-grid article,.professional-audience,.professional-tool-card{padding:18px}.professional-audience-badges{justify-content:flex-start}.professional-hero-copy h1{font-size:38px;overflow-wrap:anywhere}}
.ai-float-button{position:fixed;right:22px;bottom:22px;z-index:58;border:1px solid #111b17;background:#111b17;color:white;padding:14px 18px;border-radius:999px;font-weight:700;box-shadow:0 18px 44px rgba(18,28,24,.24);cursor:pointer}
.ai-float-button:hover{transform:translateY(-2px)}
.ai-assistant-drawer{position:fixed;right:22px;bottom:82px;width:min(430px,calc(100vw - 32px));height:min(690px,calc(100vh - 112px));background:var(--paper);border:1px solid var(--line);box-shadow:0 32px 90px rgba(18,28,24,.28);z-index:59;display:grid;grid-template-rows:auto auto auto 1fr auto auto;gap:14px;padding:22px;transform:translateY(24px) scale(.98);opacity:0;pointer-events:none;transition:.22s}
.ai-assistant-drawer.open{transform:none;opacity:1;pointer-events:auto}
.ai-assistant-drawer.expanded{right:22px;bottom:22px;width:min(920px,calc(100vw - 44px));height:min(840px,calc(100vh - 44px))}
.ai-assistant-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:14px}
.ai-assistant-head h2{font-family:"DM Sans";font-size:28px;line-height:1.05;letter-spacing:-.035em;margin:0}
.ai-assistant-head .eyebrow{margin-bottom:7px}
.ai-assistant-head button{border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:var(--ink)}
.ai-assistant-controls{display:flex;align-items:center;gap:10px}
.ai-assistant-controls button{width:30px;height:30px;display:grid;place-items:center}
.ai-assistant-controls #expandAiAssistant{font-size:20px;border:1px solid var(--line);background:white}
.ai-mode-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:white}
.ai-mode-switch button{border:0;background:transparent;padding:11px 10px;font-size:12px;font-weight:700;cursor:pointer}
.ai-mode-switch button.active{background:#111b17;color:white}
.ai-professional-lock{border:1px solid var(--line);background:white;padding:14px;display:grid;gap:8px}
.ai-professional-lock[hidden]{display:none!important}
.ai-professional-lock strong{font-size:13px;line-height:1.35}
.ai-professional-lock p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.ai-professional-lock .button{padding:10px 14px;font-size:12px;width:max-content}
.ai-chat-history{overflow:auto;display:grid;gap:10px;align-content:start;padding-right:3px}
.ai-message{border:1px solid var(--line);padding:12px 13px;background:white}
.ai-message-user{background:#111b17;color:white;border-color:#111b17;margin-left:44px}
.ai-message-assistant{margin-right:20px}
.ai-message strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}
.ai-message p{margin:0;white-space:pre-wrap;line-height:1.55;font-size:13px}
.ai-suggestions{display:flex;flex-wrap:wrap;gap:7px}
.ai-suggestions button,.ai-action-row button,.ai-drawer-actions button{border:1px solid var(--line);background:white;color:var(--ink);padding:8px 10px;font-size:12px;line-height:1.25;cursor:pointer}
.ai-action-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.ai-action-row button{background:#111b17;color:white;border-color:#111b17}
.ai-action-card{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:1px solid var(--line);background:var(--paper);padding:12px;margin-top:12px}
.ai-action-card>span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--deep);color:white;font-weight:700}
.ai-action-card strong{font-size:13px;letter-spacing:0;text-transform:none;margin:0 0 4px}
.ai-action-card p{font-size:12px;color:var(--muted);margin:0}
.ai-action-card button{grid-column:1/-1;border:1px solid #111b17;background:#111b17;color:white;padding:9px 10px;cursor:pointer}
.ai-product-grid{display:grid;gap:10px;margin-top:12px}
.ai-assistant-drawer.expanded .ai-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ai-product-card{display:grid;grid-template-columns:54px 1fr;gap:10px;border:1px solid var(--line);background:var(--paper);padding:10px;min-width:0}
.ai-product-card img,.ai-product-placeholder{width:54px;height:64px;object-fit:contain;background:#f7eee8;display:grid;place-items:center;font-size:10px;color:var(--muted)}
.ai-product-card strong{font-size:13px;letter-spacing:0;text-transform:none;margin:0 0 2px}
.ai-product-card small{display:block;color:var(--muted);font-size:11px;margin-bottom:4px}
.ai-product-card p{font-size:12px;color:var(--muted);margin:0 0 8px}
.ai-product-actions{display:flex;flex-wrap:wrap;gap:6px}
.ai-product-actions button{border:1px solid #111b17;background:white;color:#111b17;padding:7px 8px;font-size:12px;cursor:pointer}
.ai-product-actions button:last-child{background:#111b17;color:white}
.ai-chat-form{display:grid;grid-template-columns:1fr auto;gap:8px}
.ai-chat-form input{width:100%;border:1px solid var(--line);background:white;color:var(--ink);padding:12px 13px;font:inherit}
.ai-chat-form .button{padding:12px 16px}
.ai-drawer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:24px}
.ai-drawer-actions .auth-message{margin:0;text-align:right}
.ai-assistant-drawer .assistant-citations{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.ai-assistant-drawer .assistant-citations summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--deep)}
.ai-assistant-drawer .assistant-citations .assistant-citation{margin-top:8px}
@media(max-width:640px){
  .ai-float-button{right:16px;bottom:16px;padding:13px 15px}
  .ai-assistant-drawer{inset:0;width:auto;height:auto;bottom:0;right:0;border:0;padding:18px;grid-template-rows:auto auto auto 1fr auto auto}
  .ai-assistant-drawer.expanded{inset:0;width:auto;height:auto}
  .ai-assistant-drawer.expanded .ai-product-grid{grid-template-columns:1fr}
  .ai-message-user{margin-left:22px}
  .ai-message-assistant{margin-right:0}
  .ai-chat-form{grid-template-columns:1fr}
  .ai-chat-form .button{width:100%}
}
.cart-drawer{transform:none;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
.cart-drawer.open{opacity:1;visibility:visible;pointer-events:auto}
.ingredient-page,.ingredient-head,.ingredient-grid,.ingredient-grid section,.ingredient-product-block,.ingredient-product,.ingredient-page .admin-note{min-width:0;max-width:100%}
.ingredient-grid li,.ingredient-grid p,.ingredient-product strong,.ingredient-product span,.ingredient-head p{overflow-wrap:anywhere}
.professional-ingredient-explorer{background:transparent;border-top:0;margin:0 0 18px}
.professional-ingredient-explorer .section-heading{margin-bottom:22px}
.professional-ingredient-explorer .section-heading h2{font-size:clamp(32px,4vw,52px)}
.professional-ingredient-explorer .ingredient-head,
.professional-ingredient-explorer .ingredient-grid section,
.professional-ingredient-explorer .ingredient-product-block{background:white}
body.route-page main>section{display:none}
body.route-page[data-page-route="consultation"] main>.consultation{display:grid}
body.route-page[data-page-route="consultation"] main>.routine-builder,
body.route-page[data-page-route="consultation"] main>.skin-analysis-entry{display:block}
body.route-page[data-page-route="professionals"] main>.professional-strip{display:flex}
body.route-page[data-page-route="professionals"] main>.treatment-compatibility,
body.route-page[data-page-route="professionals"] main>.professional-page{display:block}
body.route-page main{padding-top:0}
body.route-page .consultation,
body.route-page .professional-page,
body.route-page .treatment-compatibility{min-height:auto}
body.route-page .consultation{padding-top:110px}
body[data-page-route="home"] main>.consultation,
body[data-page-route="home"] main>.skin-analysis-entry,
body[data-page-route="home"] main>.treatment-compatibility,
body[data-page-route="home"] main>.professional-page{display:none}
body.route-page .professional-strip{margin-top:42px;transform:none}
body.route-page .professional-page,
body.route-page .treatment-compatibility,
body.route-page .routine-builder,
body.route-page .skin-analysis-entry{padding-top:82px}

.header-search{display:flex;align-items:center;min-width:190px;max-width:300px;flex:0 1 260px;border:1px solid var(--line);background:white}
.header-search input{min-width:0;width:100%;border:0;background:transparent;padding:11px 12px;outline:0;font-size:13px}
.header-search button{border:0;border-left:1px solid var(--line);background:#111b17;color:white;padding:11px 13px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.promo-service-strip{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;padding:11px 5vw;background:#f4f4ed;border-bottom:1px solid var(--line);font-size:12px;color:#283830}
.promo-service-strip span{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.promo-service-strip span:before,.trust-row span:before{content:"";width:6px;height:6px;border-radius:999px;background:#195641;display:inline-block;flex:0 0 auto}
.curated-products{background:#fbfaf6}
.curated-stack{display:grid;gap:34px}
.curated-rail{min-width:0}
.curated-rail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px;border-bottom:1px solid var(--line);padding-bottom:14px}
.curated-rail-heading h3{font-family:"DM Sans";font-size:clamp(26px,3vw,38px);line-height:1.05;letter-spacing:-.035em;margin:0 0 7px}
.curated-rail-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.5;max-width:620px}
.curated-rail-heading>span,.curated-card-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid #195641;color:#195641;background:white;padding:7px 10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;white-space:nowrap}
.curated-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.curated-card-badge{position:absolute;right:12px;top:12px;z-index:3;background:#eff5ea}
.product-card{min-width:0}
.product-card-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}
.product-card-button{width:100%;min-height:40px;padding:10px 12px;font-size:12px;line-height:1.25;text-align:center}
.product-card-button.primary{background:#111b17;color:white}
.trust-row{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;padding:18px 6vw;background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust-row span{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#283830}
@media(max-width:1180px){
  .site-header{height:auto;min-height:86px;gap:14px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
  .header-search{order:3;flex:1 1 100%;max-width:none}
  .header-actions{margin-left:auto}
}
@media(max-width:900px){
  .curated-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .curated-rail-heading{align-items:flex-start;flex-direction:column}
}
@media(max-width:640px){
  body{overflow-x:hidden}
  .site-header{padding:12px 16px;align-items:flex-start}
  .brand{max-width:100%;gap:8px}
  .brand-logo img{max-width:118px}
  .klapp-header-logo{max-width:146px}
  nav{width:100%;gap:12px;flex-wrap:wrap;font-size:12px}
  .header-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-left:0}
  .language-picker,.language-picker select,.cart-button{width:100%}
  .header-actions .account-link{width:100%;padding:10px 8px}
  .header-search{order:2;width:100%;flex-basis:100%}
  .header-search button{padding-left:10px;padding-right:10px}
  .promo-service-strip{justify-content:flex-start;gap:10px;padding:10px 16px;overflow:hidden}
  .promo-service-strip span{white-space:normal;line-height:1.35}
  .curated-products{padding-left:16px;padding-right:16px}
  .curated-grid{grid-template-columns:1fr 1fr;gap:20px 8px}
  .product-card-actions{gap:7px}
  .product-card-button{min-height:42px;font-size:11px;padding:9px 8px;white-space:normal}
  .trust-row{justify-content:flex-start;padding:16px;gap:12px}
  .trust-row span{flex:1 1 180px;line-height:1.35}
}

/* Production layout fixes: keep product rail badges clear of the favorite button and let the header fit at 100% zoom. */
.site-header{height:auto;min-height:86px;gap:14px 24px;flex-wrap:wrap}
.site-header nav{display:flex;flex:1 1 320px;justify-content:center;align-items:center;gap:16px 24px;flex-wrap:wrap;text-align:center;line-height:1.2}
.site-header nav a{white-space:normal}
.header-search{flex:1 1 250px;max-width:360px}
.header-actions{flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end}
.header-actions .account-link{min-width:auto;white-space:nowrap}
.header-actions [hidden]{display:none!important}
.language-picker{position:relative;width:42px;min-width:42px;height:42px;border:1px solid var(--line);background:rgba(255,255,255,.55);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.language-picker::before{content:"";width:24px;height:24px;background:var(--ink);display:block;-webkit-mask:var(--nav-icon) center/contain no-repeat;mask:var(--nav-icon) center/contain no-repeat}
.language-picker select{position:absolute;inset:0;width:100%;height:100%;min-width:0;padding:0;opacity:0;cursor:pointer}
.header-icon-button{width:42px;min-width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:0;line-height:1}
.header-icon-button::before{content:"";width:24px;height:24px;background:var(--ink);display:block;-webkit-mask:var(--nav-icon) center/contain no-repeat;mask:var(--nav-icon) center/contain no-repeat}
.cart-button.header-icon-button{width:auto;min-width:62px;padding:0 10px;gap:7px}
.cart-button.header-icon-button::before{display:none}
.cart-button.header-icon-button .cart-label{font-size:0;line-height:1}
.cart-button.header-icon-button .cart-label::before{content:"";width:24px;height:24px;background:var(--ink);display:block;-webkit-mask:var(--nav-icon) center/contain no-repeat;mask:var(--nav-icon) center/contain no-repeat}
.header-actions [data-icon=globe]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M3 12h18M12 3c3 3 3 15 0 18M12 3c-3 3-3 15 0 18' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.header-actions [data-icon=user]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M4 21c1.4-4.4 4.1-6.5 8-6.5s6.6 2.1 8 6.5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.header-actions [data-icon=heart]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-4.7-8-11a4.8 4.8 0 0 1 8-3.6A4.8 4.8 0 0 1 20 10c0 6.3-8 11-8 11z' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E")}
.header-actions [data-icon=bag]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 8h12l-1 12H7L6 8z' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.cart-button.header-icon-button b{margin-left:0}
.curated-card-badge{right:58px;top:14px;z-index:4;max-width:calc(100% - 126px);overflow:hidden;text-overflow:ellipsis}
.favorite-toggle{z-index:6}
@media(max-width:1500px){
  .brand{flex:0 1 360px}
  .brand-logo{width:158px;max-width:24vw}
  .klapp-header-logo{width:148px;max-width:18vw}
  .site-header nav{order:3;width:100%;flex-basis:100%;gap:14px 24px}
  .header-search{max-width:420px}
}
@media(max-width:640px){
  .curated-card-badge{right:48px;top:10px;max-width:calc(100% - 100px);padding:6px 8px;font-size:9px}
  .header-actions{display:flex;width:auto;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}
  .header-actions .account-link.header-icon-button{width:42px;min-width:42px;flex:0 0 42px;padding:0}
  .language-picker{width:42px;min-width:42px;flex:0 0 42px}
  .language-picker select{width:100%;min-width:0}
  .cart-button.header-icon-button{width:auto;min-width:62px;flex:0 0 auto}
  .cart-button.header-icon-button .cart-label{display:inline}
}
