/* Original Herba Lux visual direction, layered over the current store. */
:root{--forest:#153c32;--forest2:#245545;--ink:#173d33;--cream:#eadab4;--ivory:#fafaf7;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
.site-header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.wordmark{font-family:var(--serif);font-size:28px;letter-spacing:3px;white-space:nowrap;text-decoration:none}
.wordmark small{display:block;font-family:var(--sans);font-size:12px;letter-spacing:4px;text-align:center;margin-top:8px}
.site-header nav{display:flex;gap:36px;font-size:14px}.site-header nav a{text-decoration:none;padding:12px 0}
.site-header .bag-button{position:static;box-shadow:none;border:1px solid #d5dcd6;border-radius:30px;background:transparent;color:var(--ink);padding:12px 19px;min-height:46px}
.site-header .bag-button span{border:0;border-radius:50%;background:var(--forest);color:white}
.hero{grid-template-columns:1.1fr 1fr;min-height:650px}.hero-copy{min-height:650px;padding:70px 8% 28px}
.hero h1{margin:28px 0 0;font-size:clamp(48px,5.3vw,80px);line-height:1.08;letter-spacing:-2px}.hero h1 em{margin:0}
.hero-description{color:#d3ded6;line-height:1.75;margin-top:24px}.hero-meta{font-weight:400;font-size:12px;letter-spacing:2px;padding-top:48px;color:#d2d9ca}
.hero-image{min-height:650px}.hero-image-caption span{font-family:var(--sans);font-weight:400;font-size:14px;letter-spacing:1px}
.collection{max-width:none;padding:96px 7% 30px}.section-heading{display:flex;justify-content:space-between;gap:25px;margin-bottom:44px}
.section-heading h2{font-size:42px;line-height:1.2;letter-spacing:-1px}.collection-eyebrow{margin-bottom:18px;color:#5a6d61!important}
.product-art{height:420px;min-height:0;aspect-ratio:auto;background:#fff;border:1px solid #e4e9e4;padding:54px 20px 20px}
.product-index{font-size:12px;font-weight:400;letter-spacing:2px;top:23px;left:26px}
.product-photo{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.oil-photo{max-width:315px;max-height:315px}
.product-copy{font-size:16px;line-height:1.6;min-height:52px}.product-line p{font-family:var(--sans);font-size:14px}
.add-button,.details-link{font-size:14px;font-weight:400}.add-button{padding:17px 24px}
.detail-row .product-description{margin-top:18px;text-transform:none;letter-spacing:0;line-height:1.7;font-size:16px;color:#526057}
.verification-note,.bag-note,.order-status{font-size:14px}.customer-fields label,.payment-note{font-size:14px;letter-spacing:0;text-transform:none}.customer-fields input,.customer-fields textarea{font-size:16px}.optional{font-size:12px}
.site-footer{background:var(--forest);color:white;padding:42px 7%;display:flex;align-items:center;justify-content:space-between;gap:25px}.site-footer>span,.site-footer>a:last-child{font-size:14px}.site-footer>a:last-child{text-decoration:none}
@media(max-width:900px){.hero-copy{padding:50px 8% 28px}.hero,.hero-copy,.hero-image{min-height:570px}.hero h1{font-size:56px}.section-heading{align-items:start;flex-direction:column}.product-actions{grid-template-columns:1fr}.product-line{align-items:start;flex-direction:column;gap:10px}.site-footer>span{display:none}}
@media(min-width:621px) and (max-width:850px){.hero{margin:0 24px}.product-grid{grid-template-columns:1fr 1fr;gap:28px}.hero-copy{padding-left:30px;padding-right:25px}.hero h1{font-size:48px}.product-art{height:350px}}
@media(max-width:620px){.site-header{height:86px;padding:0 6%}.site-header .wordmark{font-size:23px}.site-header nav{display:none}.hero{margin:0 12px;grid-template-columns:1fr}.hero-copy{padding:44px 8% 25px;min-height:0}.hero h1{font-size:clamp(42px,13vw,54px)}.hero-description{font-size:16px}.hero-meta{padding-top:32px}.hero-image{min-height:270px}.hero-image-caption{left:25px;bottom:25px}.collection{padding:60px 6% 30px}.section-heading h2{font-size:34px}.product-grid{grid-template-columns:1fr;gap:45px}.product-art{height:360px}.product-line{flex-direction:row;align-items:center}.product-line h3{font-size:18px}.product-actions{grid-template-columns:1fr auto;gap:16px}.add-button{padding:16px}.product-copy{min-height:0}.site-footer{flex-direction:column;align-items:flex-start;padding:35px 6%}.detail-row h2{font-size:34px}}

/* Keep bag controls comfortable on touchscreens and narrow displays. */
.qty button{min-width:44px;min-height:44px}.close-button{min-width:44px;min-height:44px}
.bag-item{overflow-wrap:anywhere}.bag-panel{max-height:100dvh}
@media(max-width:380px){.product-actions{grid-template-columns:1fr}.product-line{align-items:flex-start;flex-direction:column}.site-header{gap:10px}.site-header .bag-button{padding:10px 14px}}
