@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');:root{--sage:#a8b8a2;--sage-dark:#536954;--blue:#cbdde8;--blue-deep:#6e8999;--ivory:#f7f7f1;--ink:#27342e;--muted:#66716a;--line:#dce2d9;--white:#fffefa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.announcement{background:var(--sage-dark);color:white;text-align:center;padding:10px;font-size:11px;letter-spacing:.1em}.header{display:flex;align-items:center;gap:26px;justify-content:space-between;padding:18px 5%;position:sticky;top:0;background:rgba(247,247,241,.97);border-bottom:1px solid var(--line);z-index:20}.brand{font-family:'Playfair Display',Georgia,serif;font-size:23px;letter-spacing:.2em;white-space:nowrap}.brand span{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.2em;margin-top:4px}.nav{display:flex;gap:22px;align-items:center;font-size:12px}.nav a:hover,.footer a:hover{color:var(--blue-deep)}.cart-button{border:1px solid var(--sage-dark);background:transparent;padding:10px 14px;font-size:12px;white-space:nowrap}.cart-button span{background:var(--sage);padding:3px 7px;border-radius:50%;margin-left:4px}.menu-toggle{display:none;border:0;background:none;font-size:23px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.hero-copy{padding:70px 10% 70px 13%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:var(--sage-dark);margin-bottom:18px}.hero h1,.page-hero h1{font:400 clamp(42px,5.4vw,74px)/1.06 'Playfair Display',Georgia,serif;letter-spacing:-.035em;margin:0 0 22px}.hero h1 em,.page-hero h1 em{color:var(--sage-dark)}.hero p,.page-hero p,.prose p{font-size:14px;line-height:1.9;color:var(--muted);max-width:500px}.hero-media{background:var(--blue);padding:28px;display:flex;align-items:center}.hero-media img{width:100%;max-height:480px;object-fit:contain;mix-blend-mode:multiply}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--sage-dark);color:white;padding:15px 22px;border:1px solid var(--sage-dark);font-size:11px;letter-spacing:.06em;margin-top:14px}.button:hover{background:#405642}.button.secondary{background:transparent;color:var(--ink);border-color:var(--sage-dark)}.button.blue{background:var(--blue);border-color:var(--blue);color:var(--ink)}.section{padding:76px 7%}.section.soft-blue{background:var(--blue)}.section.soft-sage{background:#e6ebe1}.section-head{text-align:center;max-width:680px;margin:0 auto 38px}.section-head h2,.split-copy h2,.prose h2{font:400 clamp(32px,4vw,48px)/1.15 'Playfair Display',Georgia,serif;margin:0 0 15px}.section-head p{color:var(--muted);font-size:14px;line-height:1.8}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-card{background:var(--white);border:1px solid var(--line);padding:0 0 20px;display:flex;flex-direction:column}.product-card .image-link{background:#edf0e9;display:block;padding:16px;aspect-ratio:1/1}.product-card img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.product-info{padding:18px 18px 0;display:flex;flex-direction:column;align-items:flex-start;flex:1}.product-info h3{font:400 24px 'Playfair Display',Georgia,serif;margin:0 0 8px}.product-info p{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 12px}.price{font-weight:700;font-size:15px;margin:0 0 8px}.was{font-size:12px;color:#89918b;text-decoration:line-through;margin-left:7px}.product-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:12px}.product-actions .button{margin:0;padding:11px 13px;font-size:10px}.pill{display:inline-block;padding:6px 9px;background:var(--blue);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.split-media{background:#e8ece4;min-height:430px;display:grid;place-items:center;padding:24px}.split-media img{width:100%;height:100%;max-height:500px;object-fit:contain;mix-blend-mode:multiply}.split-copy{padding:60px 10%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.bullets{padding-left:18px;color:var(--muted);font-size:13px;line-height:2}.page-hero{background:var(--blue);padding:70px 8%;text-align:center}.page-hero p{margin:0 auto 18px}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:65px 8%;align-items:center}.product-detail-image{background:#e8ece4;padding:22px;aspect-ratio:1/1;display:grid;place-items:center;min-width:0}.product-detail-image img{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}.product-detail-copy h1{font:400 clamp(36px,4vw,52px)/1.12 'Playfair Display',Georgia,serif;margin:14px 0}.product-detail-copy .description{font-size:14px;line-height:1.9;color:var(--muted)}.quantity{display:flex;align-items:center;gap:12px;margin:20px 0}.quantity button{width:34px;height:34px;border:1px solid var(--line);background:white}.quantity input{width:45px;text-align:center;border:1px solid var(--line);padding:8px}.prose{max-width:850px;margin:auto;padding:65px 7%;min-height:45vh}.prose h1{font:400 clamp(38px,5vw,58px)/1.1 'Playfair Display',Georgia,serif}.prose h2{margin-top:35px}.prose li{font-size:14px;line-height:1.9;color:var(--muted)}.faq-item{border-top:1px solid var(--line);padding:18px 0}.faq-item summary{font:400 21px 'Playfair Display',Georgia,serif;cursor:pointer}.faq-item p{color:var(--muted);font-size:13px;line-height:1.8}.form{display:grid;gap:13px;max-width:650px}.form label{font-size:12px}.form input,.form textarea,.form select{width:100%;padding:13px;border:1px solid var(--line);background:white;margin-top:6px}.form textarea{min-height:120px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journal-card{background:white;padding:24px;border:1px solid var(--line)}.journal-card h3{font:400 25px 'Playfair Display',Georgia,serif}.journal-card p{font-size:13px;line-height:1.8;color:var(--muted)}.footer{background:#e7ece3;padding:45px 6% 20px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:28px}.footer h4{font-size:11px;letter-spacing:.12em;text-transform:uppercase}.footer>div>a:not(.brand){display:block;font-size:12px;margin:12px 0}.footer p{font-size:12px;line-height:1.8;color:var(--muted)}.copyright{grid-column:1/-1;border-top:1px solid #cbd5c8;padding-top:18px;color:var(--muted);font-size:11px}.cart-overlay{display:none;position:fixed;inset:0;background:#17231c88;z-index:50;justify-content:flex-end}.cart-overlay.open{display:flex}.cart-panel{width:min(440px,100%);height:100%;overflow:auto;background:var(--ivory);padding:24px}.cart-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.cart-head h2{font:400 30px 'Playfair Display',Georgia,serif}.cart-head button{border:0;background:none;font-size:28px}.cart-line{display:grid;grid-template-columns:70px 1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}.cart-line img{width:70px;height:70px;object-fit:contain;background:#e8ece4}.cart-line h3{font:400 16px 'Playfair Display',Georgia,serif;margin:0 0 6px}.cart-line p{font-size:12px;color:var(--muted);margin:0 0 6px}.cart-line button{border:0;background:none;text-decoration:underline;font-size:11px;padding:0}.cart-total{display:flex;justify-content:space-between;font-weight:700;padding:18px 0}.small{font-size:11px;line-height:1.7}.muted{color:var(--muted)}.full{width:100%}.text-button{border:0;background:none;text-decoration:underline;display:block;margin:16px auto}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--sage-dark);color:white;padding:12px 18px;z-index:80;display:none;font-size:12px}.notice{padding:16px;background:#f3f0e6;border-left:3px solid var(--blue-deep);font-size:12px;line-height:1.8;color:var(--muted)}.hero-mini{padding:48px 7%;background:#e6ebe1}.hero-mini h1{font:400 clamp(38px,5vw,58px) 'Playfair Display',Georgia,serif;margin:0 0 12px}.empty{padding:28px 0;text-align:center;color:var(--muted)}@media(max-width:900px){.header{gap:12px}.nav{gap:12px}.nav a{font-size:11px}.brand{font-size:20px}.footer{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.header{flex-wrap:wrap;padding:14px 5%}.menu-toggle{display:block;margin-left:auto}.nav{display:none;order:4;width:100%;flex-direction:column;align-items:flex-start;padding:14px 0}.nav.open{display:flex}.hero,.split,.product-detail{grid-template-columns:1fr}.hero-copy{padding:52px 8%}.hero-media{min-height:300px}.section{padding:54px 6%}.product-grid,.journal-grid{grid-template-columns:1fr}.product-card .image-link{aspect-ratio:1/1}.split-media{min-height:300px}.split-copy{padding:45px 8%}.product-detail{padding:40px 6%;gap:30px}.page-hero{padding:50px 7%}.footer{grid-template-columns:1fr 1fr;gap:20px}.footer>div:first-child{grid-column:1/-1}.cart-button{padding:9px}.product-actions .button{flex:1}.prose{padding:45px 6%}}
/* Founder story / Our Journey */
.founder-story{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,84px);align-items:start;max-width:1240px;margin:0 auto;padding:72px 7% 84px}
.founder-photo-wrap{position:sticky;top:120px}
.founder-photo{display:block;width:100%;height:auto;max-height:740px;object-fit:contain;object-position:center top;background:#f0f0f0}
.founder-caption{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:14px 0 0}
.founder-copy h2{font:400 clamp(30px,3.4vw,45px)/1.15 'Playfair Display',Georgia,serif;margin:0 0 22px}
.founder-copy p{font-size:14px;line-height:1.95;color:var(--muted);margin:0 0 17px}
.founder-copy .button{margin-top:10px}
.journey-hero{background:var(--blue)}
.journey-hero p{max-width:620px;margin:0 auto}
.journey-values{background:#e8eee6}
.section-heading{text-align:center;max-width:760px;margin:0 auto 30px}
.section-heading h2{font:400 clamp(30px,4vw,46px)/1.15 'Playfair Display',Georgia,serif;margin:0}
.value-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1100px;margin:0 auto}
.value-cards article{padding:25px;background:var(--ivory);border:1px solid var(--line)}
.value-cards h3{font:400 22px 'Playfair Display',Georgia,serif;margin:0 0 12px}
.value-cards p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
@media(max-width:700px){.founder-story{grid-template-columns:1fr;padding:42px 6% 56px}.founder-photo-wrap{position:static;max-width:520px;margin:0 auto}.founder-photo{max-height:none}.value-cards{grid-template-columns:1fr}.journey-values{padding:48px 6%}}

/* Focused product details and benefits */
.benefits-heading{font:400 25px 'Playfair Display',Georgia,serif;margin:22px 0 12px;color:var(--ink)}
.benefits-list{margin:0 0 22px;padding-left:20px;color:var(--muted);font-size:14px;line-height:1.9}
.benefits-list li{padding-left:4px;margin-bottom:5px}

.cart-qty-controls{display:flex;align-items:center;gap:8px}.cart-qty-controls button{width:28px;height:28px;border:1px solid var(--line);background:var(--white);text-decoration:none;font-size:16px}.cart-qty-controls span{font-size:12px;min-width:12px;text-align:center}.checkout-form{margin:16px 0;padding:18px;background:#edf1e9;border:1px solid var(--line)}.checkout-form[hidden]{display:none}.checkout-form .button{margin-top:6px}

/* Mobile-first usability refinements */
img{max-width:100%;}
html,body{max-width:100%;overflow-x:hidden;}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;}
button,.button,.cart-button{min-height:42px;}
@media(max-width:650px){
  .announcement{font-size:10px;letter-spacing:.06em;padding:9px 12px;line-height:1.5;}
  .header{gap:10px;padding:12px 4%;}
  .brand{font-size:19px;letter-spacing:.16em;}
  .brand span{font-size:8px;letter-spacing:.14em;}
  .menu-toggle{padding:6px 8px;min-width:42px;min-height:42px;}
  .cart-button{padding:8px 10px;font-size:11px;}
  .nav.open{gap:0;border-top:1px solid var(--line);margin-top:6px;}
  .nav.open a{display:block;width:100%;padding:12px 4px;font-size:14px;border-bottom:1px solid var(--line);}
  .hero{min-height:0;}
  .hero-copy{padding:42px 6%;}
  .hero h1,.page-hero h1{font-size:clamp(39px,11vw,58px);}
  .hero p,.page-hero p,.prose p{font-size:14px;line-height:1.8;}
  .hero-copy .button{width:100%;text-align:center;padding:14px 12px;}
  .hero-media{padding:18px;min-height:240px;}
  .section{padding:44px 5%;}
  .section-head{margin-bottom:26px;}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .product-card{min-width:0;padding-bottom:14px;}
  .product-card .image-link{aspect-ratio:1/1;padding:9px;}
  .product-info{padding:12px 10px 0;}
  .product-info h3{font-size:18px;line-height:1.2;overflow-wrap:anywhere;}
  .product-info p{font-size:11px;line-height:1.55;}
  .price{font-size:13px;}
  .was{display:block;margin:4px 0 0;}
  .pill{font-size:8px;padding:5px 6px;}
  .product-actions{width:100%;flex-direction:column;gap:7px;}
  .product-actions .button{width:100%;flex:auto;font-size:10px;padding:10px 7px;}
  .split-media{min-height:240px;padding:18px;}
  .split-copy{padding:36px 6%;}
  .product-detail{padding:28px 5%;gap:22px;}
  .product-detail-image{padding:12px;}
  .product-detail-copy h1{font-size:clamp(34px,9vw,46px);}
  .product-detail-copy .button{width:100%;}
  .page-hero{padding:40px 5%;}
  .journal-grid{grid-template-columns:1fr;}
  .footer{grid-template-columns:1fr 1fr;padding:34px 5% 18px;gap:16px;}
  .footer h4{line-height:1.5;}
  .cart-panel{padding:18px 16px;}
  .cart-line{grid-template-columns:54px minmax(0,1fr);gap:10px;}
  .cart-line img{width:54px;height:54px;}
  .cart-line>div:last-child{grid-column:2;justify-self:start;}
  .checkout-form{padding:14px 12px;}
  .checkout-form .button{width:100%;white-space:normal;}
  .form input,.form textarea,.form select,.checkout-form input,.checkout-form textarea,.checkout-form select{font-size:16px;}
  .toast{width:calc(100% - 32px);text-align:center;bottom:12px;}
  .founder-story{padding:34px 5% 44px;}
}
@media(max-width:380px){
  .brand{font-size:17px;letter-spacing:.12em;}
  .header{gap:6px;}
  .menu-toggle{font-size:20px;min-width:38px;padding:5px;}
  .cart-button{padding:7px 8px;}
  .product-grid{gap:9px;}
  .product-info h3{font-size:16px;}
  .product-info{padding-left:8px;padding-right:8px;}
  .product-actions .button{font-size:9px;}
}
