@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--cream:#f6f3e9;--paper:#fffdf7;--green:#294b3f;--green-dark:#19392f;--sage:#dce4d3;--olive:#9baa85;--text:#25392f;--muted:#64746a;--line:#d9dfd2;--gold:#c9a878;--shadow:0 20px 65px rgba(26,54,39,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #bc8d55;outline-offset:3px}.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}[hidden]{display:none!important}.no-scroll{overflow:hidden}
.announcement{background:var(--green);color:#f3f1df;text-align:center;padding:9px 16px;font-size:11px;letter-spacing:.11em;text-transform:uppercase}.announcement span{margin:0 12px;color:#d4b78b}.site-header{height:89px;background:var(--cream);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,6.5vw,112px);gap:30px;border-bottom:1px solid #e4e4d7}.brand{display:flex;align-items:center;gap:9px;flex:none}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border:1px solid var(--green);border-radius:50%;font-family:'Playfair Display',serif;font-size:23px;letter-spacing:-.12em;padding-right:5px}.brand-mark .apostrophe{color:var(--gold)}.brand-text{font-family:'Playfair Display',serif;font-size:23px;line-height:.9;white-space:nowrap}.brand-text small{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:.27em;margin-top:8px;text-align:center}.site-header nav{display:flex;gap:34px;font-size:13px;font-weight:600}.site-header nav a:hover,.text-link:hover{color:#7d8d68}.cart-trigger{border:1px solid var(--green);background:transparent;color:var(--green);padding:11px 17px;display:flex;align-items:center;gap:11px;border-radius:2px;font-weight:700;font-size:12px;white-space:nowrap}.cart-trigger:hover{background:var(--green);color:white}.cart-badge{display:grid;place-items:center;background:var(--green);color:#fff;border-radius:50%;height:20px;min-width:20px;font-size:11px}.cart-trigger:hover .cart-badge{background:#fff;color:var(--green)}
.hero{min-height:600px;display:grid;grid-template-columns:1fr 1fr;background:var(--cream);overflow:hidden}.hero-copy{padding:clamp(62px,8vw,133px) 32px 90px clamp(25px,8.5vw,145px);align-self:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.28em;color:#66816f;text-transform:uppercase;margin:0 0 20px}.rule{display:inline-block;width:33px;border-top:1px solid #91aa87;vertical-align:middle;margin-right:11px}.hero h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}.hero h1{font-size:clamp(46px,5.2vw,78px);line-height:1.07;letter-spacing:-.045em;margin:0 0 27px;max-width:660px}.hero h1 em{font-weight:400;color:#829776}.hero-copy>p:not(.eyebrow){color:#617168;line-height:1.8;font-size:15px;max-width:440px;margin:0}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;gap:29px;border-radius:2px;font-size:12px;font-weight:700;letter-spacing:.04em;padding:16px 20px;min-height:49px;transition:background .15s,transform .15s}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--green);color:#fff;border:1px solid var(--green)}.button-primary:hover{background:#416b55}.button:disabled{opacity:.46;cursor:not-allowed;transform:none}.quiet-note{font-family:'Playfair Display',serif;font-style:italic;font-size:15px;color:#889683}.hero-art{min-height:600px;position:relative;background:linear-gradient(145deg,#c5d2bb,#879f85 85%);overflow:hidden}.hero-arch{position:absolute;width:72%;height:83%;left:15%;top:9%;border-radius:48% 48% 0 0;background:#d8dfcd;box-shadow:inset 0 20px 75px #b8c7b0}.orb{position:absolute;border:1px solid rgba(255,255,255,.4);border-radius:50%}.orb-one{width:330px;height:330px;top:-180px;left:-90px}.orb-two{width:260px;height:260px;right:-140px;bottom:-60px}.display-plinth{position:absolute;bottom:30px;left:8%;width:87%;height:23%;border-radius:50% 50% 0 0 / 20% 20% 0 0;background:linear-gradient(100deg,#ece8d7,#d5d7c4);box-shadow:0 -12px 30px #294b3f24}.art-pack{position:absolute;box-shadow:16px 22px 27px #19392f38}.art-pack .pack-label{position:absolute;inset:18% 10% 11%;background:#f9f7e9;display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;gap:13px;color:var(--green)}.pack-label b,.mini-label b{font-family:'Playfair Display',serif;font-weight:500;font-size:21px}.pack-label span{font-size:9px;font-weight:700;letter-spacing:.16em;line-height:1.5}.pack-label i{font-size:6px;letter-spacing:.2em;font-style:normal}.art-pack-back{width:142px;height:302px;left:27%;bottom:18%;background:linear-gradient(90deg,#ced9c3,#f8f4e8 28%,#f3f0dd 85%,#c0cbb6);border-radius:20px 20px 11px 11px;transform:rotate(-8deg)}.art-pack-back .pack-top{position:absolute;top:-25px;left:27%;width:46%;height:28px;background:#314d3c;border-radius:5px 5px 0 0}.art-pack-jar{width:220px;height:176px;left:42%;bottom:15%;background:linear-gradient(90deg,#e3e4d6,#faf9ed 22%,#f1efe0 85%,#dad9c9);border-radius:10px 10px 30px 30px;z-index:2}.art-pack-jar .pack-top{position:absolute;top:-35px;width:104%;height:44px;left:-2%;background:linear-gradient(#496b55,#31503f);border-radius:9px 9px 5px 5px}.art-pack-jar .pack-label{inset:12% 9% 8%;gap:8px}.art-pack-jar .pack-label b{font-size:25px}.art-pack-dropper{width:78px;height:190px;left:72%;bottom:16%;z-index:3;border-radius:10px 10px 6px 6px;background:linear-gradient(90deg,#9f6941,#cf9559 30%,#bc7c45 85%,#8c552d);transform:rotate(7deg)}.art-pack-dropper .pack-top{position:absolute;top:-64px;left:24%;height:70px;width:51%;background:linear-gradient(#244434 0 35%,#d7ca9e 35% 60%,#31523c 60%);border-radius:13px 13px 2px 2px}.art-pack-dropper .pack-label{inset:28% 5% 12%;gap:7px}.art-pack-dropper .pack-label b{font-size:13px}.art-pack-dropper .pack-label span{font-size:6px}.art-pack-dropper .pack-label i{font-size:4px}.hero-art-note{position:absolute;top:32px;right:38px;color:#fff;letter-spacing:.22em;font-size:9px;font-weight:700}
.shop-section{padding:96px clamp(24px,8.5vw,145px) 112px;background:var(--paper)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:37px}.section-heading h2,.how-section h2{font-size:clamp(34px,3.4vw,49px);letter-spacing:-.035em;line-height:1.18;margin:0}.section-heading>p{max-width:260px;font-size:13px;color:var(--muted);line-height:1.7;margin:0 0 3px}.shop-toolbar{display:flex;gap:22px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}.tabs{display:flex;flex-wrap:wrap;gap:6px}.tab{border:0;background:transparent;padding:11px 14px;color:#68766b;font-size:12px;white-space:nowrap;border-radius:2px}.tab:hover{background:#f1f3eb}.tab.active{background:var(--green);color:#fff}.shop-tools{display:flex;gap:9px}.search-wrap{display:flex;align-items:center;gap:7px;border:1px solid var(--line);padding:0 11px;background:#fff}.search-wrap input{border:0;outline:0;width:135px;min-height:37px;font-size:12px;color:var(--text)}.search-wrap svg{flex:none;color:#7a8b80}.sort-wrap select{border:1px solid var(--line);background:#fff;min-height:39px;padding:0 10px;color:var(--text);font-size:12px;max-width:170px}.result-count{font-size:11px;color:#7c8a7d;margin:20px 0}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.product-card{background:#fff;border:1px solid #e8ebdf;min-width:0;transition:box-shadow .2s,transform .2s}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-art{height:270px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.tone-sage{background:#e5ebdf}.tone-olive{background:#dce4d0}.tone-cream{background:#eee9db}.tone-sand{background:#f0e7d9}.tone-honey{background:#eadfcb}.art-sparkle{position:absolute;top:23px;right:25px;font-size:27px;color:#bbc9b4}.mini-pack{height:165px;width:82px;background:linear-gradient(90deg,#d6ddcb,#f4f2e5 25%,#ecebdc 80%,#bfcab6);border-radius:10px 10px 6px 6px;position:relative;box-shadow:12px 19px 20px #25392f2c;transform:rotate(-4deg)}.mini-pack .mini-top{position:absolute;top:-16px;width:54%;height:18px;left:23%;border-radius:5px 5px 0 0;background:#31503f}.mini-label{position:absolute;inset:17% 8% 8%;background:#faf8e9;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#345343;gap:10px}.mini-label b{font-size:15px}.mini-label span{font-size:7px;font-weight:700;letter-spacing:.04em;line-height:1.25;text-transform:uppercase}.mini-label small{font-size:4px;letter-spacing:.08em}.pack-jar{width:144px;height:101px;border-radius:6px 6px 20px 20px;transform:rotate(-4deg);background:linear-gradient(90deg,#e1e0d1,#fbf9eb 20%,#ecebdd 83%,#d5d7c6)}.pack-jar .mini-top{top:-24px;height:27px;left:-2%;width:104%;background:linear-gradient(#4b6f56,#31503f)}.pack-jar .mini-label{inset:7% 11% 7%;gap:5px}.pack-jar .mini-label b{font-size:17px}.pack-dropper{width:64px;height:128px;background:linear-gradient(90deg,#86532e,#cf9861 27%,#bd804b 85%,#8d572f);border-radius:7px}.pack-dropper .mini-top{width:40%;left:30%;top:-47px;height:51px;border-radius:8px 8px 2px 2px;background:linear-gradient(#31503f 0 55%,#d7c397 55% 70%,#31503f 70%)}.pack-dropper .mini-label{inset:28% 7% 9%;gap:4px}.pack-dropper .mini-label b{font-size:12px}.pack-dropper .mini-label span{font-size:6px}.pack-shampoo{height:174px}.pack-conditioner{height:168px}.art-caption{position:absolute;bottom:14px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:.17em;color:#8f9b8b}.product-body{padding:20px 21px 18px}.product-meta{display:flex;justify-content:space-between;color:#81917f;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.product-body h3{font-size:21px;line-height:1.22;margin:12px 0 7px;min-height:52px}.product-body p{font-size:12px;color:#738073;line-height:1.55;margin:0;min-height:39px}.product-bottom{border-top:1px solid #edf0e9;margin-top:18px;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:4px}.product-bottom>strong{font-size:17px}.product-bottom>div{display:flex;align-items:center;gap:9px}.detail-link{border:0;background:none;text-decoration:underline;text-underline-offset:3px;color:#516c59;font-size:11px;padding:5px}.add-button{height:36px;width:36px;border-radius:50%;border:1px solid var(--green);background:var(--green);color:#fff;font-size:22px;line-height:1}.add-button:hover{background:#64806b}.empty-results{text-align:center;padding:70px;color:var(--muted)}
.how-section{background:#e7ece1;display:grid;grid-template-columns:40% 60%;padding:80px clamp(24px,8.5vw,145px);gap:60px}.how-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.8;max-width:400px}.text-link{display:inline-block;border-bottom:1px solid var(--green);padding-bottom:8px;margin-top:18px;font-weight:700;font-size:12px}.text-link span{margin-left:30px}.how-steps{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:18px}.how-steps>div{border-left:1px solid #bdcdbb;padding-left:19px;min-height:153px}.how-steps span{display:block;color:#87a188;font-family:'Playfair Display',serif;font-size:32px;margin-bottom:16px}.how-steps strong{font-family:'Playfair Display',serif;font-size:19px;font-weight:500}.how-steps p{font-size:12px;color:var(--muted);line-height:1.6}footer{background:var(--green-dark);padding:55px clamp(24px,8.5vw,145px);color:#e9ecdf;display:flex;align-items:center;gap:35px;flex-wrap:wrap}footer p{font-size:12px;margin:0;color:#bdcbbb}.footer-brand{font-family:'Playfair Display',serif;font-size:28px;white-space:nowrap}.footer-brand span{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:.25em}.footer-small{margin-left:auto;max-width:330px;font-size:10px;line-height:1.5}
.overlay{position:fixed;inset:0;background:#12291ec2;z-index:10}.cart-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(100%,490px);background:var(--paper);z-index:11;display:flex;flex-direction:column;box-shadow:-20px 0 55px #071b1640}.drawer-head{display:flex;justify-content:space-between;align-items:start;padding:34px 31px 23px;border-bottom:1px solid var(--line)}.drawer-head .eyebrow{margin-bottom:8px}.drawer-head h2{font-size:30px;margin:0}.drawer-head h2 span{font-family:'DM Sans',sans-serif;font-size:14px;color:var(--muted)}.icon-button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:24px;line-height:1;color:var(--green)}.cart-lines{padding:20px 30px;overflow-y:auto;flex:1}.cart-line{display:flex;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}.cart-line .product-art{width:91px;height:112px;flex:none}.cart-line .mini-pack{transform:scale(.45);flex:none}.cart-line .art-caption,.cart-line .art-sparkle{display:none}.cart-line-info{flex:1;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.cart-line-top,.cart-line-bottom{display:flex;justify-content:space-between;align-items:start;gap:10px}.cart-line-top small{font-size:10px;color:var(--muted)}.cart-line-top strong{display:block;font-family:'Playfair Display',serif;font-size:17px;font-weight:500;margin-top:5px}.remove-button{border:0;background:none;color:var(--muted);font-size:22px;padding:0 4px}.cart-line-bottom{align-items:center}.cart-line-bottom strong{font-size:13px}.qty-control{display:flex;align-items:center;border:1px solid var(--line);height:32px}.qty-control button{border:0;background:none;width:29px;height:30px;color:var(--green)}.qty-control span{min-width:25px;text-align:center;font-size:12px}.drawer-footer{padding:22px 30px 28px;border-top:1px solid var(--line);background:#f7f7ee}.subtotal-row{display:flex;align-items:center;justify-content:space-between;font-size:14px}.subtotal-row strong{font-size:22px}.checkout-note,.handoff-note{font-size:11px;color:var(--muted);line-height:1.55;margin:12px 0 18px}.handoff-note{margin:12px 0 0}.full-width{width:100%}.button-outline{background:transparent;color:var(--green);border:1px solid #a7baa7;margin-top:10px}.button-outline:hover{background:#edf1e9}.cart-empty{text-align:center;padding:70px 24px}.cart-empty>span{color:#aabb9f;font-size:47px}.cart-empty h3{font-size:26px}.cart-empty p{font-size:13px;color:var(--muted);line-height:1.6}.product-dialog{border:0;padding:0;max-width:min(820px,calc(100% - 28px));width:820px;background:var(--paper);box-shadow:var(--shadow)}.product-dialog::backdrop{background:#132c20b8}.detail-close{position:absolute;top:16px;right:16px;z-index:2}.product-dialog #detail-content{display:grid;grid-template-columns:1fr 1fr}.product-dialog .product-art{height:480px}.product-dialog .mini-pack{transform:scale(1.5)}.product-dialog .mini-pack.pack-jar{transform:scale(1.4)}.detail-copy{padding:75px 45px 38px;display:flex;flex-direction:column}.detail-copy h2{font-size:37px;line-height:1.14;margin:0 0 16px}.detail-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.75}.detail-copy .eyebrow{margin-bottom:12px}.detail-purchase{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding:25px 0 18px}.detail-purchase strong{font-size:23px}.detail-purchase label{display:flex;align-items:center;gap:9px;font-size:12px}.detail-purchase select{padding:8px;border:1px solid var(--line);background:#fff}.detail-copy>small{color:var(--muted);font-size:10px;margin-top:13px;line-height:1.5}.toast{position:fixed;z-index:30;bottom:20px;left:50%;transform:translate(-50%,20px);background:var(--green);color:#fff;padding:13px 20px;box-shadow:var(--shadow);font-size:13px;opacity:0;pointer-events:none;transition:all .2s;white-space:nowrap;max-width:95vw;text-overflow:ellipsis;overflow:hidden}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:1200px){.product-grid{grid-template-columns:repeat(3,1fr)}.shop-toolbar{align-items:stretch;flex-direction:column}.tabs{gap:3px}.shop-tools{justify-content:flex-end}.hero-copy{padding-left:7vw}}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7vw}.hero-art{min-height:460px}.hero-arch{height:88%}.art-pack-back{bottom:20%}.art-pack-jar,.art-pack-dropper{bottom:16%}.shop-section{padding:70px 5vw}.product-grid{grid-template-columns:repeat(2,1fr)}.how-section{grid-template-columns:1fr;gap:35px;padding:70px 5vw}.section-heading>p{display:none}.footer-small{margin-left:0}}@media(max-width:610px){.announcement{font-size:9px;letter-spacing:.05em}.site-header{height:72px;padding:0 17px;gap:8px}.brand-mark{width:34px;height:34px;font-size:18px}.brand-text{font-size:18px}.brand-text small{font-size:6px}.site-header nav{display:none}.cart-trigger{padding:9px 11px}.cart-trigger>span:not(.cart-badge){display:none}.hero-copy{padding:55px 24px 60px}.hero h1{font-size:48px}.hero-actions{flex-wrap:wrap;gap:18px}.hero-art{min-height:370px}.hero-arch{width:80%;left:10%}.art-pack-back{width:110px;height:235px;left:25%;bottom:20%}.art-pack-jar{width:166px;height:129px;left:42%}.art-pack-dropper{width:57px;height:141px;left:73%}.art-pack-dropper .pack-top{top:-48px;height:53px}.hero-art-note{font-size:7px;right:17px}.shop-section{padding:62px 17px}.section-heading h2{font-size:38px}.shop-toolbar{margin:0 -17px;padding:12px 17px}.tabs{overflow-x:auto;flex-wrap:nowrap;margin-right:-17px;padding-right:17px}.tab{padding:9px 11px}.shop-tools{justify-content:stretch}.search-wrap{flex:1}.search-wrap input{width:100%;min-width:0}.sort-wrap select{max-width:140px}.product-grid{gap:11px}.product-art{height:194px}.mini-pack{transform:scale(.75)}.pack-jar{transform:scale(.8)}.product-body{padding:14px 12px}.product-body h3{font-size:17px;min-height:43px}.product-body p{font-size:11px;min-height:52px}.product-meta{font-size:9px}.product-bottom{gap:3px}.product-bottom>strong{font-size:15px}.detail-link{font-size:10px}.product-bottom>div{gap:2px}.add-button{height:30px;width:30px;font-size:18px}.art-caption{font-size:6px}.how-section{padding:60px 22px}.how-steps{grid-template-columns:1fr;gap:15px}.how-steps>div{min-height:0}.how-steps span{margin:0 0 4px;font-size:24px}.how-steps p{margin:5px 0 0}footer{padding:45px 24px;display:block}footer p{margin-top:20px}.product-dialog #detail-content{grid-template-columns:1fr}.product-dialog .product-art{height:245px}.product-dialog .mini-pack{transform:scale(.85)}.product-dialog .mini-pack.pack-jar{transform:scale(.85)}.detail-copy{padding:25px 26px 32px}.detail-copy h2{font-size:29px}.detail-copy>p:not(.eyebrow){margin-top:0}.detail-purchase{margin-top:5px}.cart-lines{padding:15px 20px}.drawer-head,.drawer-footer{padding-left:20px;padding-right:20px}}

/* The featured product stays centered as the hero changes shape on small screens. */
.hero-feature{margin:0;background:#868769}
.hero-feature>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 64%}
.hero-feature figcaption{position:absolute;left:28px;bottom:28px;max-width:calc(100% - 56px);display:flex;flex-direction:column;gap:5px;padding:14px 18px;background:rgba(255,253,247,.94);color:var(--green);box-shadow:0 8px 30px rgba(28,35,23,.18)}
.hero-feature figcaption span{font-size:11px;font-weight:700;letter-spacing:.13em}
.hero-feature figcaption strong{font:500 23px/1.15 'Playfair Display',Georgia,serif}
@media(max-width:610px){.hero-feature{min-height:440px}.hero-feature>img{object-position:center 58%}.hero-feature figcaption{left:18px;bottom:18px;max-width:calc(100% - 36px);padding:11px 14px}.hero-feature figcaption strong{font-size:20px}}
/* Karina's cutout is framed by the brand's sage and cream palette. */
.hero-founder-cover{isolation:isolate;margin:0;background:linear-gradient(145deg,#dce5d6,#9eb496)}
.hero-founder-cover::before{content:"";position:absolute;left:5%;top:7%;width:90%;height:92%;border-radius:50%;background:rgba(235,239,227,.7);z-index:-1}
.hero-founder-cover::after{content:"";position:absolute;inset:auto 0 0;height:15%;background:linear-gradient(transparent,rgba(169,190,162,.38));pointer-events:none}
.hero-founder-cover>img{position:absolute;left:0;bottom:7%;width:100%;height:86%;display:block;object-fit:contain;object-position:center bottom}
.hero-founder-cover figcaption{position:absolute;z-index:1;right:6%;bottom:3%;width:min(54%,374px);display:flex;flex-direction:column;gap:5px;padding:15px 22px;background:rgba(255,253,247,.96);color:var(--green);box-shadow:0 10px 35px rgba(25,57,47,.08)}
.hero-founder-cover figcaption span{font-size:10px;font-weight:700;letter-spacing:.16em}
.hero-founder-cover figcaption strong{font:500 25px/1.15 'Playfair Display',Georgia,serif}
@media(max-width:610px){.hero-founder-cover{min-height:450px}.hero-founder-cover::before{top:8%;height:88%}.hero-founder-cover>img{height:86%;bottom:6%}.hero-founder-cover figcaption{right:4%;bottom:3%;width:min(56%,235px);padding:11px 14px}.hero-founder-cover figcaption strong{font-size:19px}.hero-founder-cover figcaption span{font-size:9px}}
.photo-art{background-size:contain;background-position:center;background-repeat:no-repeat}
/* Product photos are all portrait 3:4, apart from the square Shea cutout.
   Match the photo frame to the image so no colored card background appears at its sides. */
.photo-art{background-color:#f8f8f7}
.product-grid .photo-art,.product-dialog .photo-art{height:auto;aspect-ratio:3/4;background-size:cover}
.cart-line .photo-art{width:84px;height:112px;background-size:cover}
.product-grid .photo-art.crop-body-butter,.product-dialog .photo-art.crop-body-butter{background-size:135% auto}
.product-media{min-width:0;align-self:start}.gallery-stage{position:relative}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:42px;border:0;background:#fffffff0;color:var(--green);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 10px #14281e25}.gallery-arrow:focus-visible{outline:2px solid var(--green)}.gallery-prev{left:4px}.gallery-next{right:4px}.gallery-options{display:flex;gap:10px;padding:12px 16px;background:#f8f8f7;overflow-x:auto}.gallery-option{flex:0 0 52px;width:52px;height:66px;overflow:hidden;padding:0;border:2px solid transparent;background:white;cursor:pointer}.gallery-option.selected,.gallery-option:focus-visible{border-color:var(--green)}.gallery-option img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-caption{margin:0;padding:0 16px 14px;background:#f8f8f7;color:var(--muted);font-size:13px;line-height:1.45}
.photo-art.photo-lift,.product-media.photo-lift .gallery-option img{filter:brightness(1.20) contrast(1.07)}
.photo-art.photo-soft,.product-media.photo-soft .gallery-option img{filter:brightness(.89) contrast(1.02)}
.product-grid .photo-art.crop-repair-close{background-size:122% auto;background-position:18% 100%}
@media(max-width:610px){.product-dialog .product-media{width:min(240px,100%)}.product-dialog .product-media .photo-art{width:100%}}
@media(max-width:610px){.product-dialog #detail-content{justify-items:center}.product-dialog .photo-art{width:min(240px,100%)}.product-dialog .detail-copy{width:100%}}
.photo-art.crop-duo-left{background-size:300% auto;background-position:28% 45%}
.photo-art.crop-duo-right{background-size:300% auto;background-position:72% 45%}
.photo-art.crop-collection-leave{background-size:450% auto;background-position:20% 46%}
.photo-art.crop-collection-oil{background-size:430% auto;background-position:100% 49%}
.product-grid .photo-art.crop-catalog-fit,.product-dialog .photo-art.crop-catalog-fit,.cart-line .photo-art.crop-catalog-fit{background-size:contain;background-color:#fff}
.photo-art.crop-body-butter{background-size:150% auto;background-position:center 50%}
.variant-choice{display:flex;flex-direction:column;gap:8px;margin:18px 0;color:var(--text);font-size:14px;font-weight:600}.variant-choice select{min-height:44px;width:100%;border:1px solid var(--line);background:#fff;color:var(--text);padding:8px 12px;font:inherit;font-weight:400}
.photo-art.crop-gel-label{background-size:auto 145%;background-position:center 48%}
.photo-caption{position:absolute;left:12px;bottom:10px;padding:5px 8px;background:#fffdf7ed;color:#294b3f;font-size:10px;font-weight:700;letter-spacing:.02em}
.cart-line .photo-caption{display:none}

/* The brand mark uses its original transparent source without changing the artwork. */
.logo-viewport{position:relative;display:block;flex:none;width:172px;height:74px;overflow:hidden}
.logo-viewport img{position:absolute;left:0;top:-49px;width:172px;height:172px;max-width:none}
.prepoo-feature{display:grid;grid-template-columns:minmax(0,38%) minmax(0,62%);margin-top:64px;background:#e8ece2;border:1px solid #d9dfd2;min-height:315px}
.prepoo-feature img{height:100%;width:100%;max-height:360px;object-fit:contain;background:#f5f4ed}
.prepoo-feature>div{padding:52px clamp(24px,5vw,75px);align-self:center}
.prepoo-feature h3{font-size:clamp(26px,3vw,40px);line-height:1.15;margin:0 0 14px}
.prepoo-feature p:not(.eyebrow){font-size:13px;line-height:1.75;color:#64746a;max-width:440px}
.preview-heading{margin:64px 0 22px}.preview-heading .eyebrow{margin-bottom:10px}.preview-heading h3{font-size:clamp(27px,3vw,37px);margin:0 0 8px}.preview-heading>p:last-child{font-size:13px;line-height:1.7;color:var(--muted);max-width:680px;margin:0}
.preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.preview-grid article{background:#fff;border:1px solid #e8ebdf;min-width:0}.preview-grid img{display:block;width:100%;height:260px;object-fit:contain;background:#f0f0e9}.preview-grid article>div{padding:20px}.preview-grid small{font-size:10px;letter-spacing:.12em;color:#81917f}.preview-grid h4{font-family:'Playfair Display',serif;font-size:21px;font-weight:500;margin:10px 0 6px}.preview-grid article p{font-size:12px;color:var(--muted);margin:0}
@media(max-width:850px){.preview-grid{gap:12px}.preview-grid img{height:220px}}
.drawer-footer .subtotal-row{gap:12px;margin:0 0 9px}.drawer-footer .subtotal-row strong{font-size:16px}.drawer-footer .order-total-row{border-top:1px solid var(--line);padding-top:13px;margin-top:12px;font-weight:700}.drawer-footer .order-total-row strong{font-size:22px}
.drawer-footer{flex:none;max-height:72dvh;overflow-y:auto}.payment-options{display:flex;flex-direction:column;gap:4px;padding:12px 14px;margin:0 0 12px;background:#e9eee4;color:var(--green);font-size:12px;line-height:1.45}.payment-options strong{font-size:13px}.payment-options span{overflow-wrap:anywhere}
.product-dialog{max-height:90dvh;overflow-y:auto}.ingredient-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:8px 0 16px;padding:12px 0;color:var(--text)}.ingredient-list summary{cursor:pointer;font-size:14px;font-weight:700}.ingredient-list p{color:var(--muted);font-size:14px;line-height:1.65;margin:12px 0 2px;overflow-wrap:anywhere}
@media(max-width:610px){.logo-viewport{width:137px;height:60px}.logo-viewport img{width:137px;height:137px;top:-39px}.prepoo-feature{grid-template-columns:1fr;margin-top:42px}.prepoo-feature img{height:285px}.prepoo-feature>div{padding:30px 24px 37px}}
@media(max-width:610px){.preview-heading{margin-top:45px}.preview-grid{grid-template-columns:1fr}.preview-grid img{height:260px}}

/* Founder portrait keeps the person behind the brand visible without obscuring her curls. */
.hero-portrait{position:relative;min-height:600px;margin:0;overflow:hidden;background:#d9d9d4}
.hero-portrait>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.hero-portrait figcaption{position:absolute;right:32px;bottom:32px;display:flex;flex-direction:column;gap:5px;padding:14px 18px;background:rgba(255,253,247,.94);color:var(--green);box-shadow:0 10px 36px rgba(25,57,47,.12)}
.hero-portrait figcaption span{font-size:10px;font-weight:700;letter-spacing:.13em}
.hero-portrait figcaption strong{font:500 24px/1.1 'Playfair Display',Georgia,serif}
.hero .quiet-note{font-family:'DM Sans',sans-serif;font-style:normal;font-size:13px;white-space:nowrap}
.founder-section{max-width:1280px;margin:0 auto;padding:88px clamp(24px,7vw,100px);display:grid;grid-template-columns:minmax(250px,40%) 1fr;align-items:center;gap:clamp(35px,8vw,110px)}
.founder-section>img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 10%;background:var(--cream)}
.founder-copy h2{font-size:clamp(34px,4vw,56px);line-height:1.12;margin:0 0 22px}
.founder-copy>p:not(.eyebrow){font-size:16px;line-height:1.75;color:var(--muted);max-width:470px;margin:0}
@media(max-width:750px){.founder-section{grid-template-columns:1fr;gap:28px;padding:60px 24px}}
@media(max-width:850px){.hero-portrait{min-height:490px}}
@media(max-width:610px){.hero-portrait{min-height:420px}.hero-portrait>img{object-position:center 59%}.hero-portrait figcaption{right:16px;bottom:16px;padding:10px 12px}.hero-portrait figcaption strong{font-size:20px}.hero-portrait figcaption span{font-size:9px}.hero .quiet-note{font-size:12px}}

/* Ingredient callouts use only confirmed ingredients for that item. */
.product-body .card-ingredients{min-height:0;margin-top:12px;font-size:11px;line-height:1.5;color:#526a56}
.card-ingredients span{display:block;margin-bottom:3px;color:#788e75;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.featured-ingredients{margin:15px 0 15px}.featured-ingredients>strong{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#607961;margin-bottom:11px}
.featured-ingredients>div{display:flex;flex-wrap:wrap;gap:7px}.featured-ingredients span{display:inline-block;background:#e8efe3;border:1px solid #d4dfcd;color:#345743;padding:7px 10px;border-radius:20px;font-size:11px;font-weight:600}

/* Product information follows the same compact, readable accordion pattern on every detail page. */
.product-accordions{border-top:1px solid var(--line);margin:12px 0 8px}
.product-accordion{border-bottom:1px solid var(--line)}
.product-accordion summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 2px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--green)}
.product-accordion summary::-webkit-details-marker{display:none}
.product-accordion summary::after{content:'+';font:300 23px/1 'DM Sans',sans-serif;letter-spacing:0}
.product-accordion[open] summary::after{content:'−'}
.product-accordion summary:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.accordion-content{padding:0 2px 18px;color:var(--muted);overflow-wrap:anywhere}
.accordion-content h3{font:700 12px/1.4 'DM Sans',sans-serif;color:var(--text);margin:15px 0 6px}
.accordion-content h3:first-child{margin-top:1px}
.accordion-content p{font-size:13px;line-height:1.7;margin:0 0 8px}
.accordion-content ul{padding-left:19px;margin:0;font-size:13px;line-height:1.75}
.accordion-content li+li{margin-top:5px}

/* Editorial photographs sit apart from the product catalog's primary photos. */
.editorial-section{padding:82px clamp(24px,8.5vw,145px) 95px;background:#edf0e7;border-top:1px solid #e0e7db}
.editorial-heading{max-width:1250px;margin:0 auto 30px}.editorial-heading .eyebrow{margin-bottom:10px}
.editorial-heading h2{font-size:clamp(34px,3.6vw,52px);line-height:1.13;letter-spacing:-.035em;margin:0}
.editorial-grid{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.editorial-tile{display:block;position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;padding:0;border:0;background:#d8dece;color:#fff;text-align:left;isolation:isolate}
.editorial-tile img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .4s ease}
.editorial-tile:after{content:"";position:absolute;inset:43% 0 0;background:linear-gradient(transparent 10%,rgba(18,35,26,.82) 100%);pointer-events:none}
.editorial-tile:hover img{transform:scale(1.035)}
.editorial-caption{position:absolute;z-index:1;left:24px;right:24px;bottom:24px;display:flex;flex-direction:column;gap:6px}
.editorial-caption small{font-size:11px;font-weight:700;letter-spacing:.15em}.editorial-caption strong{font-family:'Playfair Display',Georgia,serif;font-size:clamp(23px,2.1vw,32px);font-weight:500;line-height:1.1}
.editorial-caption>span{font-size:12px;font-weight:700;margin-top:8px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:750px){.editorial-section{padding:65px 20px 75px}.editorial-grid{gap:12px}.editorial-caption{left:15px;right:15px;bottom:16px}.editorial-caption strong{font-size:22px}}
@media(max-width:620px){.editorial-grid{grid-template-columns:1fr;max-width:430px;gap:18px}.editorial-tile{aspect-ratio:4/5}.editorial-caption{left:23px;bottom:24px}.editorial-caption strong{font-size:29px}}
@media(prefers-reduced-motion:reduce){.editorial-tile img{transition:none}.editorial-tile:hover img{transform:none}}

/* Privacy controls stay visible without covering the storefront. */
.footer-small a,.footer-link{text-decoration:underline;text-underline-offset:3px}
.footer-link{background:none;border:0;padding:0;color:inherit;font:inherit}
.analytics-banner{position:fixed;z-index:1000;bottom:16px;left:16px;right:16px;max-width:900px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 20px;background:#fffdf7;color:var(--text);border:1px solid var(--line);box-shadow:0 15px 50px rgba(25,57,47,.22);border-radius:5px}
.analytics-banner p{margin:0;font-size:13px;line-height:1.5;max-width:590px}
.analytics-banner p a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.analytics-actions{display:flex;gap:8px;flex:none}
.analytics-actions button{border:1px solid var(--green);border-radius:3px;padding:10px 13px;background:transparent;color:var(--green);font-size:12px;font-weight:700;white-space:nowrap}
.analytics-actions #analytics-allow{background:var(--green);color:white}
.analytics-actions button:hover{background:#e7eee4}
.analytics-actions #analytics-allow:hover{background:#416b55}
.privacy-page{background:var(--cream)}
.privacy-page .site-header{height:auto;min-height:82px;font-size:13px;font-weight:700}
.privacy-brand{font-family:'Playfair Display',Georgia,serif;font-size:23px;line-height:1}
.privacy-brand span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:8px;letter-spacing:.2em;margin-top:5px}
.privacy-content{max-width:760px;margin:0 auto;padding:72px 24px 100px}
.privacy-content h1{font:500 clamp(38px,6vw,60px)/1.15 'Playfair Display',Georgia,serif;margin:0 0 20px}
.privacy-content h2{font-size:27px;margin:38px 0 12px}
.privacy-content p{font-size:15px;line-height:1.75;color:#506258}
.privacy-content p a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}
.privacy-content>.button{margin-top:28px}
@media(max-width:700px){.analytics-banner{left:10px;right:10px;bottom:10px;display:block;padding:15px}.analytics-banner p{font-size:12px}.analytics-actions{margin-top:13px}.analytics-actions button{flex:1}.privacy-page .site-header{padding:18px 24px}.privacy-content{padding-top:50px}}

.reviews-section{padding:88px clamp(24px,8.5vw,145px);background:#f7f6f0;display:grid;grid-template-columns:minmax(250px,.85fr) minmax(360px,1.15fr);gap:clamp(36px,7vw,110px);align-items:start}
.reviews-intro{max-width:460px;padding-top:22px}.reviews-intro h2{font-size:clamp(35px,3.6vw,52px);line-height:1.13;letter-spacing:-.035em;margin:0 0 20px}.reviews-intro>p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.7;margin:0}
.reviews-empty{margin-top:38px;padding:22px 0;border-top:1px solid #cbd8c7;display:flex;align-items:start;gap:16px}.reviews-empty span{font-size:25px;color:#829776;line-height:1}.reviews-empty p{margin:0;color:#647568;font-size:14px;line-height:1.6}
.review-card{margin-top:38px;padding:25px 28px 26px;background:#fff;border:1px solid #dce4d7;border-left:4px solid #789476;box-shadow:0 12px 32px rgba(30,56,39,.04)}.review-stars{color:#a87d38;font-size:20px;letter-spacing:.16em;line-height:1}.review-product{margin:15px 0 9px;color:#687d6b;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.review-card blockquote{font-family:'Playfair Display',Georgia,serif;font-size:clamp(22px,2vw,28px);line-height:1.45;margin:0;color:var(--text)}.review-author{margin:19px 0 0;color:#576d5b;font-size:14px;font-weight:700}
.review-card--long blockquote{font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}
.reviews-carousel{margin-top:26px;touch-action:pan-y}.review-carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px}.review-carousel-controls[hidden]{display:none}.review-carousel-controls button{width:42px;height:42px;border:1px solid #b8c9b8;background:#fff;color:var(--green-dark);border-radius:50%;font:500 23px/1 'DM Sans',Arial,sans-serif;cursor:pointer}.review-carousel-controls button:hover{background:#e9f0e6}.review-carousel-controls button:focus-visible{outline:2px solid #bc8d55;outline-offset:3px}.review-carousel-controls span{color:#687d6b;font:600 14px/1 'DM Sans',Arial,sans-serif;min-width:48px;text-align:center}.reviews-carousel .review-card{margin-top:16px}.review-card[hidden]{display:none}
.review-form{padding:clamp(25px,4vw,46px);background:#fff;border:1px solid #dce4d7;box-shadow:0 14px 40px rgba(30,56,39,.06);display:flex;flex-direction:column;gap:19px}.review-form h3{font-size:28px;margin:0}.review-form>p{font-size:14px;line-height:1.6;color:var(--muted);margin:-8px 0 1px}.review-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.review-form label:not(.review-consent){display:flex;flex-direction:column;gap:7px;color:var(--green-dark);font-size:14px;font-weight:700}.review-form input:not([type=checkbox]),.review-form select,.review-form textarea{width:100%;border:1px solid #bccbbd;border-radius:2px;background:#fff;padding:12px 13px;min-height:46px;font:400 16px/1.45 'DM Sans',Arial,sans-serif;color:var(--text)}.review-form textarea{resize:vertical;min-height:125px}.review-form input::placeholder,.review-form textarea::placeholder{color:#849187}.review-consent{display:flex;align-items:flex-start;gap:11px;color:#576b5a;font-size:14px;line-height:1.5}.review-consent input{width:18px;height:18px;flex:none;margin:2px 0;accent-color:var(--green)}.review-form .button{align-self:flex-start}.review-form small{font-size:13px;line-height:1.55;color:var(--muted);margin-top:-8px}.review-form textarea:focus-visible{outline:2px solid #bc8d55;outline-offset:3px}
@media(max-width:900px){.reviews-section{grid-template-columns:1fr;padding:70px 5vw;gap:27px}.reviews-intro{padding:0;max-width:650px}.reviews-empty{margin-top:24px}}
@media(max-width:610px){.reviews-section{padding:62px 20px}.review-form{padding:24px 19px}.review-fields{grid-template-columns:1fr;gap:19px}.review-form .button{width:100%}}
/* Square checkout in the cart */
.delivery-choice,.checkout-location label{display:block;font-size:12px;font-weight:700;color:var(--text);margin-bottom:12px}
.checkout-address-intro{font-size:14px;font-weight:700;color:var(--green);margin:20px 0 0}
.drawer-footer{max-height:72dvh;overflow-y:auto}
.delivery-choice select,.checkout-location select,.checkout-location input{display:block;width:100%;min-height:42px;background:#fff;border:1px solid var(--line);border-radius:3px;margin-top:6px;padding:8px 10px;color:var(--text)}
.checkout-location{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}
.square-error{color:#a13b37;font-size:12px;line-height:1.5;margin:8px 0}
#square-checkout-area .button{margin-top:5px}
@media(max-width:420px){.checkout-location{grid-template-columns:1fr}}
