@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root {
  --ink:#171510;
  --black:#100f0b;
  --gold:#dda72c;
  --gold-light:#f6d984;
  --gold-dark:#9a6513;
  --cream:#fffaf2;
  --line:#ead9be;
  --muted:#6d665c;
  --shadow:0 12px 30px rgba(58,38,10,.09);
  --serif:'Playfair Display',Georgia,serif;
  --sans:'DM Sans',Arial,sans-serif
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth
}
body {
  margin:0;
  background:#fff;
  color:var(--ink);
  font:15px/1.6 var(--sans)
}
a {
  color:inherit;
  text-decoration:none
}
button,input,textarea,select {
  font:inherit
}
.site-header {
  position:relative;
  z-index:5;
  min-height:82px;
  padding:12px clamp(20px,5vw,76px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  background:var(--black);
  color:#fff;
  border-bottom:1px solid rgba(226,177,70,.6)
}
.brand {
  display:flex;
  align-items:center;
  gap:11px;
  min-width:210px;
  color:var(--gold-light)
}
.brand-mark {
  position:relative;
  width:53px;
  height:53px;
  display:grid;
  place-items:center;
  border:1px solid var(--gold);
  border-radius:50%;
  font:600 23px var(--serif);
  color:var(--gold-light);
  box-shadow:inset 0 0 0 3px rgba(217,165,48,.15)
}
.brand-mark span {
  position:absolute;
  font-size:19px;
  transform:translate(5px,4px);
  color:#fff1b7;
  text-shadow:0 0 6px #b07d1e
}
.brand-copy {
  display:grid;
  line-height:1.04;
  letter-spacing:.13em
}
.brand-copy strong {
  font:500 24px/1 var(--serif);
  letter-spacing:.07em
}
.brand-copy>span {
  font:500 12px var(--serif);
  letter-spacing:.16em
}
.brand-copy small {
  font-size:9px;
  letter-spacing:.3em;
  margin-top:3px
}
.main-nav {
  display:flex;
  align-items:center;
  gap:clamp(7px,2vw,28px)
}
.main-nav a {
  padding:9px 15px;
  border-radius:30px;
  font-size:13px;
  transition:background .2s,color .2s
}
.main-nav a:hover,.main-nav a.active {
  background:linear-gradient(135deg,#f9df92,#d69a24);
  color:#18130a
}
.header-social {
  display:flex;
  gap:9px
}
.header-social a {
  height:30px;
  width:30px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-weight:700;
  font-size:15px
}
.menu-toggle {
  display:none;
  background:none;
  border:0;
  color:white
}
.hero {
  position:relative;
  isolation:isolate;
  overflow:hidden
}
.hero-home {
  min-height:470px;
  padding:60px clamp(24px,8vw,120px);
  display:grid;
  grid-template-columns:1fr 1.15fr;
  align-items:center;
  background:radial-gradient(ellipse at 77% 55%,#5a3c12 0,#251d11 37%,#110f0b 76%);
  color:white
}
.hero-home:before,.page-hero:before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:radial-gradient(ellipse at 90% 5%,rgba(226,175,63,.18),transparent 25%),linear-gradient(105deg,rgba(8,8,7,.25),transparent 65%)
}
.hero-content {
  max-width:530px;
  position:relative;
  z-index:1
}
.eyebrow {
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:10px;
  font-weight:700;
  color:var(--gold-dark);
  margin:0 0 11px
}
.hero .eyebrow,.page-hero .eyebrow,.why-band .eyebrow,.journey-band .eyebrow,.range-note .eyebrow,.inquiry-form .eyebrow {
  color:var(--gold-light)
}
h1,h2,h3,p {
  margin-top:0
}
h1,h2 {
  font-family:var(--serif);
  line-height:1.08
}
.hero h1,.page-hero h1 {
  font-size:clamp(40px,5.1vw,68px);
  margin:0;
  color:#f8d884;
  font-weight:600;
  letter-spacing:-.03em
}
.hero h1 span {
  display:block;
  color:white;
  font-size:.57em;
  letter-spacing:0;
  font-weight:500;
  margin-top:7px
}
.hero-script {
  font:italic 31px/1.05 var(--serif);
  margin:22px 0 15px
}
.hero-description {
  max-width:390px;
  color:#e5dfd3;
  font-size:14px;
  line-height:1.65
}
.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:25px
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px solid transparent;
  border-radius:999px;
  padding:12px 21px;
  font-weight:700;
  font-size:13px;
  transition:transform .2s,box-shadow .2s,background .2s;
  cursor:pointer
}
.button:hover {
  transform:translateY(-2px);
  box-shadow:0 7px 18px rgba(173,117,18,.2)
}
.button-gold {
  background:linear-gradient(135deg,#ffe6a1,#d99c27);
  color:#201708
}
.button-outline {
  border-color:var(--gold);
  background:rgba(255,255,255,.03);
  color:inherit
}
.button-dark {
  background:var(--black);
  color:#fff;
  border-color:var(--gold)
}
.hero-art {
  min-height:350px;
  position:relative;
  display:grid;
  place-items:center
}
.product-scene {
  position:relative;
  z-index:1;
  width:min(100%,520px);
  height:330px;
  display:flex;
  align-items:end;
  justify-content:center;
  gap:17px;
  padding-bottom:35px
}
.product-plinth {
  position:absolute;
  bottom:15px;
  left:2%;
  right:2%;
  height:34px;
  background:linear-gradient(#fff4d5,#c6a579);
  border-radius:50%;
  box-shadow:0 15px 20px rgba(0,0,0,.4)
}
.pack {
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:end;
  flex:none;
  width:111px;
  height:200px;
  border-radius:16px 16px 20px 20px;
  background:linear-gradient(90deg,#d9bd98,#fff8eb 24%,#fffdfa 70%,#d1b695);
  box-shadow:inset -8px 0 13px rgba(109,74,25,.1),0 15px 22px rgba(0,0,0,.2);
  color:#33230d
}
.pack-label {
  width:78%;
  height:62%;
  margin-bottom:13px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  border:1px solid rgba(175,129,49,.46);
  font:10px/1.2 var(--serif);
  padding:4px
}
.pack-label b {
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  border:1px solid #ba8c36;
  border-radius:50%;
  font:11px var(--serif);
  margin-bottom:8px;
  color:#a26b14
}
.pack-label strong {
  font:600 12px/1.15 var(--serif)
}
.pack-label small {
  font:7px var(--sans);
  margin-top:4px
}
.pack-cap {
  position:absolute;
  top:-31px;
  width:35px;
  height:34px;
  border-radius:7px 7px 2px 2px;
  background:linear-gradient(90deg,#9f6b17,#ffe08a 40%,#ba8116 70%,#f8d777);
  box-shadow:inset 0 0 0 1px rgba(105,65,4,.35)
}
.pack-cap:before {
  content:"";
  position:absolute;
  top:-12px;
  left:10px;
  width:15px;
  height:12px;
  border-radius:4px 4px 0 0;
  background:linear-gradient(90deg,#b77d1d,#ffe294,#b77d1d)
}
.pack-jar {
  height:142px;
  width:155px;
  border-radius:7px 7px 22px 22px;
  background:linear-gradient(90deg,#070706,#29251a 35%,#090908);
  color:#efc962
}
.pack-jar .pack-cap {
  top:-22px;
  width:100%;
  height:25px;
  border-radius:4px 4px 2px 2px
}
.pack-jar .pack-label {
  height:75%;
  width:79%;
  margin-bottom:7px;
  border-color:#96762d
}
.pack-dark .pack-label b {
  color:#f3ce68;
  border-color:#a47e25
}
.pack-dark .pack-label strong {
  font-size:12px
}
.pack-dropper {
  height:191px;
  width:105px;
  border-radius:15px 15px 17px 17px
}
.pack-dropper .pack-cap {
  top:-42px;
  width:23px;
  height:46px;
  border-radius:10px 10px 4px 4px
}
.pack-dropper .pack-cap:before {
  top:-27px;
  left:8px;
  width:7px;
  height:28px;
  border-radius:4px;
  background:linear-gradient(90deg,#d9d4c8,#fff,#d5c9b3)
}
.pack-dropper .pack-neck {
  position:absolute;
  top:-10px;
  width:43px;
  height:16px;
  background:linear-gradient(90deg,#b47b19,#ffe28a,#b47b19);
  border-radius:3px
}
.pack-dropper .pack-label {
  height:60%
}
.pack-lotion {
  height:225px;
  width:120px;
  border-radius:22px 22px 25px 25px
}
.pack-lotion .pack-cap {
  top:-33px;
  width:39px;
  height:35px
}
.pack-lotion .pack-neck {
  position:absolute;
  top:-18px;
  width:52px;
  height:15px;
  background:linear-gradient(90deg,#a66c14,#ffe18a,#bb801d);
  border-radius:3px
}
.pack-lotion .pack-label {
  height:58%;
  width:77%
}
.pack-oil {
  height:174px;
  width:63px;
  background:linear-gradient(90deg,#17130a,#70480e 25%,#a56d13 48%,#261906);
  color:#f6d77f
}
.pack-oil .pack-cap {
  top:-22px;
  height:26px;
  width:25px
}
.pack-oil .pack-cap:before {
  display:none
}
.pack-oil .pack-neck {
  position:absolute;
  top:-11px;
  width:27px;
  height:11px;
  background:linear-gradient(90deg,#a66c14,#ffe18a,#bb801d)
}
.pack-oil .pack-label {
  height:76%;
  border-color:#d6aa4c
}
.pack-tub {
  width:126px;
  height:92px;
  margin-top:72px;
  border-radius:19px 19px 25px 25px;
  background:linear-gradient(90deg,#e1d7c8,#fff 25%,#f9f2e7 72%,#d4c7b5)
}
.pack-tub .pack-cap {
  height:19px;
  top:-17px;
  width:100%;
  background:linear-gradient(#fdfbf8,#d6cdc0);
  border-radius:7px 7px 2px 2px
}
.pack-tub .pack-label {
  height:68%;
  width:80%;
  margin-bottom:5px
}
.pack-tub .pack-label strong {
  font-size:9px
}
.pack-tub.cream-tub .pack-label {
  background:#fffaf0
}
.mini {
  transform:scale(.75);
  transform-origin:center bottom;
  margin-bottom:0
}
.mini.pack-jar {
  transform:scale(.82)
}
.mini.pack-oil {
  transform:scale(.82)
}
.mini.pack-tub {
  transform:scale(.9);
  margin-top:45px
}
.mini.butter .pack-label {
  background:linear-gradient(90deg,#16130d,#352813)
}
.hero-note {
  position:absolute;
  z-index:2;
  right:3%;
  bottom:8%;
  color:#f7d67f;
  font:italic 14px var(--serif)
}
.hero-note span {
  font-size:22px
}
.leaf {
  position:absolute;
  width:135px;
  height:42px;
  border-radius:100% 0 100% 0;
  background:linear-gradient(135deg,#315523,#88a64a);
  transform:rotate(-25deg);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)
}
.leaf:after {
  content:"";
  position:absolute;
  left:12%;
  top:50%;
  width:80%;
  height:1px;
  background:rgba(231,218,156,.7);
  transform:rotate(-7deg)
}
.leaf-one {
  top:12%;
  right:4%
}
.leaf-two {
  bottom:13%;
  left:0;
  transform:rotate(25deg) scale(.8)
}
.trust-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin:-1px auto 0;
  padding:20px clamp(20px,7vw,100px);
  background:#fff;
  border-bottom:1px solid var(--line);
  box-shadow:0 6px 16px rgba(0,0,0,.04)
}
.trust-strip>div {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-right:1px solid var(--line)
}
.trust-strip>div:last-child {
  border:0
}
.trust-strip p {
  margin:0;
  font-size:12px;
  line-height:1.35
}
.trust-strip p b {
  font-weight:600
}
.trust-icon,.stat-icon {
  font-size:27px;
  color:var(--gold-dark)
}
.section {
  padding:70px clamp(20px,6vw,92px)
}
.section-heading {
  text-align:center;
  margin:0 auto 34px
}
.section-heading h2 {
  font-size:39px;
  margin:0 0 9px
}
h2 em,h1 em {
  font-style:normal;
  color:var(--gold-dark)
}
.section-heading>p:last-child {
  color:var(--muted);
  margin:0
}
.product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px
}
.product-grid-five {
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:13px
}
.product-card {
  position:relative;
  padding:14px 14px 17px;
  text-align:center;
  border:1px solid #eee3d2;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#fffaf3);
  box-shadow:0 5px 15px rgba(70,50,21,.045);
  transition:transform .2s,box-shadow .2s
}
.product-card:hover {
  transform:translateY(-4px);
  box-shadow:var(--shadow)
}
.product-visual {
  height:160px;
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  border-radius:13px;
  background:radial-gradient(ellipse at 50% 85%,#f0e2cb,transparent 58%),linear-gradient(145deg,#fff,#fffaf1)
}
.product-grid-five .product-visual {
  height:138px
}
.product-visual:after {
  content:"";
  position:absolute;
  bottom:18px;
  left:13%;
  right:13%;
  height:9px;
  border-radius:50%;
  background:#c9b18b;
  filter:blur(7px)
}
.product-visual .pack {
  z-index:1
}
.product-card h3 {
  font:600 17px/1.2 var(--serif);
  margin:10px 0 5px
}
.product-card p {
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
  margin:0 auto 11px;
  max-width:220px
}
.text-link {
  font-size:12px;
  font-weight:700;
  color:#7a4c08;
  border-bottom:1px solid #dcb35b;
  padding-bottom:2px
}
.text-link span {
  margin-left:7px
}
.why-band,.journey-band,.range-note,.review-cta {
  margin:0 clamp(20px,4vw,60px);
  padding:28px clamp(24px,5vw,70px);
  border-radius:24px;
  background:radial-gradient(ellipse at 90% 0,#493313,#17140d 52%,#0d0c09);
  color:white;
  display:flex;
  align-items:center;
  gap:30px
}
.years-badge {
  flex:none;
  width:115px;
  height:115px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:2px solid #d8a535;
  border-radius:50%;
  color:#ffdc76;
  text-align:center;
  line-height:1
}
.years-badge span {
  font:58px/.86 var(--serif)
}
.years-badge b {
  font:20px var(--serif)
}
.years-badge small {
  margin-top:5px;
  text-transform:uppercase;
  font-size:9px;
  letter-spacing:.15em
}
.why-title {
  min-width:210px
}
.why-title h2,.journey-band h2,.range-note h2,.review-cta h2 {
  font-size:30px;
  margin:0
}
.why-title h2 em,.journey-band h2 em,.range-note h2 em {
  color:#f6ce66
}
.why-title .eyebrow {
  margin-bottom:5px
}
.check-list {
  list-style:none;
  padding:0;
  margin:0 auto;
  display:grid;
  gap:8px;
  color:#eee7dc;
  font-size:13px
}
.check-list li:before {
  content:"✓";
  color:#e5b441;
  font-size:19px;
  margin-right:10px
}
.why-band>.button {
  flex:none
}
.closing-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:52px clamp(24px,8vw,120px)
}
.closing-cta h2 {
  font-size:28px;
  margin:0
}
.closing-cta .eyebrow {
  margin-bottom:7px
}
.site-footer {
  background:#11100c;
  color:#eee8db;
  padding:35px clamp(20px,6vw,92px);
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:18px 30px
}
.site-footer p {
  margin:0;
  color:#b9b1a3;
  font-size:12px
}
.site-footer nav {
  display:flex;
  gap:20px;
  font-size:12px
}
.site-footer>small {
  grid-column:1/-1;
  border-top:1px solid #39342a;
  padding-top:13px;
  color:#aaa08d;
  font-size:11px
}
.brand-footer {
  min-width:0
}
.brand-footer .brand-mark {
  width:43px;
  height:43px;
  font-size:19px
}
.brand-footer .brand-copy strong {
  font-size:19px
}
.brand-footer .brand-copy>span {
  font-size:10px
}
.page-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:305px;
  padding:45px clamp(24px,8vw,120px);
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  background:radial-gradient(ellipse at 78% 50%,#4a3415,#1e1911 45%,#11100c 78%);
  color:#fff
}
.page-hero h1 {
  font-size:clamp(43px,5vw,65px)
}
.page-hero>div:first-child>p:last-child {
  max-width:460px;
  margin:14px 0 0;
  color:#e9e1d5
}
.page-hero-art {
  min-height:220px;
  display:grid;
  place-items:center
}
.hero-product {
  position:relative;
  width:100%;
  height:225px;
  display:flex;
  justify-content:center;
  align-items:end;
  gap:4px;
  padding-bottom:18px
}
.hero-product:after {
  content:"";
  position:absolute;
  bottom:5px;
  left:10%;
  right:10%;
  height:22px;
  background:linear-gradient(#fff0cc,#c9ad84);
  border-radius:50%;
  z-index:0
}
.hero-product .pack {
  transform:scale(.82);
  transform-origin:bottom center
}
.hero-product .pack-jar {
  transform:scale(.8);
  margin-right:-12px
}
.hero-product .pack-lotion {
  transform:scale(.86);
  margin-left:-8px
}
.about-hero {
  min-height:300px
}
.section-split {
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  align-items:center;
  gap:32px
}
.story-image {
  min-height:260px;
  position:relative;
  overflow:hidden;
  border-radius:22px;
  background:radial-gradient(ellipse at 70% 22%,rgba(217,169,66,.5),transparent 19%),linear-gradient(120deg,#24351c,#0b0c08 45%,#57401d);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#eac45c;
  box-shadow:var(--shadow)
}
.story-image:before,.story-image:after {
  content:"";
  position:absolute;
  width:180px;
  height:70px;
  border-radius:100% 0 100% 0;
  background:linear-gradient(135deg,#263f19,#82934a);
  opacity:.8;
  transform:rotate(34deg);
  left:-30px;
  top:15px
}
.story-image:after {
  left:auto;
  top:auto;
  right:-30px;
  bottom:10px;
  transform:rotate(-25deg)
}
.story-seal {
  position:relative;
  z-index:1;
  width:84px;
  height:84px;
  border:2px solid #d6aa38;
  border-radius:50%;
  display:grid;
  place-items:center;
  font:36px var(--serif);
  text-shadow:0 0 10px #c28e20
}
.story-seal span {
  position:absolute;
  font-size:28px;
  transform:translate(10px,8px)
}
.story-image p {
  position:relative;
  z-index:1;
  margin:13px 0 0;
  font:19px var(--serif);
  letter-spacing:.08em;
  text-align:center
}
.story-image small {
  display:block;
  font:9px var(--sans);
  letter-spacing:.24em;
  margin-top:4px
}
.story-copy h2 {
  font-size:38px;
  margin-bottom:16px
}
.story-copy>p:not(.eyebrow) {
  color:var(--muted);
  font-size:14px
}
.story-copy .text-link {
  display:inline-block;
  margin-top:4px
}
.stats-row,.hours-row {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  margin:0 clamp(20px,4vw,60px);
  padding:21px 16px;
  border:1px solid var(--line);
  border-radius:19px;
  background:#fffdfa;
  box-shadow:0 8px 20px rgba(63,41,9,.05)
}
.stats-row>div,.hours-row>div {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:4px 9px;
  border-right:1px solid #e8d6b7
}
.stats-row>div:last-child,.hours-row>div:last-child {
  border:0
}
.stats-row p,.hours-row p {
  margin:0;
  font-size:11px;
  line-height:1.4
}
.stats-row strong,.hours-row strong {
  display:block;
  font-size:13px;
  color:var(--ink)
}
.stat-icon {
  font-size:30px
}
.values-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  padding-top:38px;
  padding-bottom:38px
}
.value-card {
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:22px;
  border:1px solid #eee1cf;
  border-radius:20px;
  background:#fffdfa;
  box-shadow:var(--shadow)
}
.value-icon {
  flex:none;
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#17140e;
  color:#efc55c;
  font-size:28px;
  border:1px solid #d7a93f
}
.value-card h3 {
  font:600 21px var(--serif);
  margin:0 0 7px
}
.value-card p,.plain-checks {
  font-size:12px;
  color:var(--muted);
  margin:0
}
.plain-checks {
  padding:0;
  list-style:none;
  display:grid;
  gap:4px
}
.plain-checks li:before {
  content:"✓";
  color:#bd8319;
  margin-right:7px
}
.journey-band {
  margin-top:0;
  margin-bottom:55px;
  min-height:210px
}
.journey-band>div:last-child {
  max-width:620px
}
.journey-band h2 {
  margin-bottom:9px
}
.journey-band>div:last-child>p:last-child {
  color:#e5ddd0;
  font-size:13px;
  margin:0
}
.products-hero {
  min-height:275px
}
.catalog {
  padding-top:25px
}
.filter-bar {
  display:flex;
  justify-content:center;
  gap:0;
  overflow:auto;
  margin:0 auto 24px;
  padding:7px;
  width:max-content;
  max-width:100%;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fffdf9;
  box-shadow:0 5px 15px rgba(69,46,15,.07)
}
.filter-button {
  white-space:nowrap;
  border:0;
  background:transparent;
  color:var(--ink);
  padding:11px 20px;
  border-right:1px solid #eadbc5;
  font-size:12px;
  cursor:pointer
}
.filter-button:last-child {
  border-right:0
}
.filter-button.active {
  border-radius:999px;
  background:linear-gradient(130deg,#ffe4a0,#dda32b);
  font-weight:700;
  border-right-color:transparent
}
.catalog-grid {
  grid-template-columns:repeat(4,minmax(0,1fr))
}
.catalog-grid .product-card {
  padding:11px 13px 13px
}
.catalog-grid .product-visual {
  height:165px
}
.product-tag {
  position:absolute;
  z-index:2;
  left:10px;
  top:10px;
  color:#7a581b;
  background:#fff8e9;
  border:1px solid #eddbb6;
  border-radius:20px;
  padding:3px 9px;
  font-size:9px
}
.button-small {
  padding:7px 14px;
  font-size:11px;
  margin:0 auto 7px;
  color:var(--ink);
  width:max-content
}
.whatsapp-link {
  display:block;
  width:max-content;
  margin:auto;
  padding:5px 12px;
  background:#12833c;
  color:white;
  border-radius:30px;
  font-size:10px;
  font-weight:700
}
.range-note {
  margin-top:25px;
  margin-bottom:0;
  padding:23px 32px;
  justify-content:space-between
}
.range-note h2 {
  font-size:27px
}
.range-note>p {
  max-width:370px;
  margin:0;
  color:#e7dfd1;
  font-size:12px
}
.range-note .button {
  font-size:11px
}
.reviews-hero {
  min-height:276px
}
.review-hero-mark {
  justify-self:center;
  display:grid;
  gap:9px;
  padding:22px 28px;
  border:1px solid #b98c30;
  border-radius:20px;
  background:rgba(7,7,5,.36);
  text-align:center;
  transform:rotate(2deg)
}
.review-hero-mark span,.stars {
  color:#e6ac24;
  letter-spacing:3px;
  font-size:22px
}
.review-hero-mark b {
  font:600 18px var(--serif);
  color:#fff0c1
}
.review-stats {
  grid-template-columns:repeat(4,1fr);
  margin-top:16px
}
.review-section {
  padding-top:48px
}
.review-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px
}
.review-grid-secondary {
  grid-template-columns:repeat(2,1fr);
  max-width:800px;
  margin:16px auto 0
}
.review-card {
  position:relative;
  min-height:220px;
  padding:25px 22px 20px 80px;
  border:1px solid #ecdfcc;
  border-radius:20px;
  background:linear-gradient(145deg,#fff,#fffaf2);
  box-shadow:var(--shadow)
}
.review-avatar {
  position:absolute;
  left:20px;
  top:24px;
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 30% 30%,#fff5cd,#c68f2a);
  border:2px solid white;
  box-shadow:0 0 0 1px #d5ab4d;
  color:#44300f;
  font:600 19px var(--serif)
}
.reviewer h3 {
  font:600 17px var(--serif);
  margin:0
}
.stars {
  display:block;
  font-size:16px;
  letter-spacing:2px
}
.review-card blockquote {
  margin:18px 0 15px;
  color:#39342b;
  font:italic 15px/1.55 var(--serif)
}
.review-card>small {
  font-size:10px;
  color:#8e7c5e
}
.review-cta {
  margin-top:0;
  margin-bottom:55px
}
.review-bubble {
  flex:none;
  width:90px;
  height:62px;
  border:2px solid #e5ba58;
  border-radius:18px;
  color:#f5ce6c;
  display:grid;
  place-items:center;
  font-size:15px;
  letter-spacing:2px;
  position:relative
}
.review-bubble span {
  position:absolute;
  right:-12px;
  bottom:-17px;
  font-size:32px
}
.review-cta>div:nth-child(2) {
  flex:1
}
.review-cta h2 {
  margin-bottom:7px
}
.review-cta>div:nth-child(2)>p:last-child {
  color:#e1d8c8;
  font-size:13px;
  margin:0
}
.contact-hero {
  min-height:270px
}
.contact-hero-art {
  height:240px;
  display:flex;
  align-items:end;
  justify-content:center;
  gap:10px;
  padding-bottom:13px
}
.contact-hero-art:after {
  content:"";
  position:absolute;
  right:7%;
  bottom:28px;
  width:44%;
  height:27px;
  border-radius:50%;
  background:linear-gradient(#fff0cf,#c4a579)
}
.contact-hero-art .pack {
  transform:scale(.82);
  transform-origin:bottom center
}
.contact-hero-art .pack-jar {
  transform:scale(.8)
}
.contact-layout {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:30px;
  padding-top:48px;
  padding-bottom:38px
}
.contact-info h2,.inquiry-form h2 {
  font-size:34px;
  margin-bottom:10px
}
.contact-intro,.inquiry-form>p:not(.eyebrow) {
  color:var(--muted);
  font-size:13px
}
.contact-card {
  display:flex;
  align-items:center;
  gap:14px;
  padding:13px 15px;
  margin-top:10px;
  border:1px solid #ebddc8;
  border-radius:15px;
  background:#fffdfa;
  box-shadow:0 4px 12px rgba(73,51,13,.045)
}
.contact-icon {
  width:43px;
  height:43px;
  flex:none;
  display:grid;
  place-items:center;
  background:#fff0cc;
  border-radius:13px;
  color:#895b13;
  font-size:23px
}
.contact-card>span:nth-child(2) {
  display:grid;
  line-height:1.35
}
.contact-card small {
  color:#74695b;
  font-size:10px
}
.contact-card strong {
  font:600 16px var(--serif)
}
.contact-arrow {
  margin-left:auto;
  color:#a16c17
}
.social-card {
  margin-top:18px;
  padding:17px;
  border-radius:17px;
  background:#fffaf1;
  border:1px solid #eadcc4
}
.social-card h3 {
  font:600 20px var(--serif);
  margin:0
}
.social-card>p {
  margin:3px 0 12px;
  color:var(--muted);
  font-size:11px
}
.social-links {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px
}
.social-links a {
  display:flex;
  align-items:center;
  gap:7px;
  padding:9px;
  background:#fff;
  border:1px solid #f0e5d4;
  border-radius:10px;
  font-weight:700;
  color:#6b4610
}
.social-links a span {
  font-size:10px;
  color:#342e24;
  font-weight:500
}
.social-links a b {
  margin-left:auto
}
.inquiry-form {
  padding:27px;
  border-radius:20px;
  background:radial-gradient(ellipse at 100% 0,#403319,#12110d 46%);
  color:white;
  box-shadow:0 15px 35px rgba(30,24,12,.14)
}
.inquiry-form>p:not(.eyebrow) {
  color:#d8d0c2
}
.inquiry-form h2 em {
  color:#f0c75d
}
.form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px
}
.form-grid label {
  display:grid;
  gap:5px;
  color:#f6ecd9;
  font-size:11px;
  font-weight:700
}
.form-grid label span {
  color:#e5af39
}
.form-grid input,.form-grid select,.form-grid textarea {
  width:100%;
  min-width:0;
  border:1px solid #d9c9ad;
  border-radius:8px;
  padding:11px 12px;
  background:#fffaf2;
  color:#29241c;
  font-size:12px;
  outline:none
}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus {
  border-color:#e1ae3b;
  box-shadow:0 0 0 3px rgba(225,174,59,.18)
}
.form-grid textarea {
  resize:vertical;
  min-height:86px
}
.form-wide {
  grid-column:1/-1
}
.form-submit {
  display:flex;
  width:80%;
  margin:16px auto 7px
}
.form-note {
  text-align:center;
  font-size:10px!important;
  margin:6px 0 0
}
.hours-row {
  grid-template-columns:repeat(3,1fr);
  margin-bottom:35px
}
.toast {
  position:fixed;
  z-index:10;
  bottom:20px;
  left:50%;
  transform:translate(-50%,20px);
  padding:12px 20px;
  border-radius:30px;
  background:#17140e;
  color:white;
  box-shadow:var(--shadow);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s,transform .2s
}
.toast.visible {
  opacity:1;
  transform:translate(-50%,0)
}
[hidden] {
  display:none!important
}
@media(max-width:1000px) {
  .site-header {
    padding-inline:24px
  }
  .brand {
    min-width:180px
  }
  .brand-copy strong {
    font-size:20px
  }
  .main-nav {
    gap:2px
  }
  .main-nav a {
    padding:8px 10px;
    font-size:12px
  }
  .header-social {
    gap:5px
  }
  .product-grid-five {
    grid-template-columns:repeat(3,1fr)
  }
  .why-band {
    gap:20px
  }
  .why-band>.button {
    padding-inline:15px
  }
  .catalog-grid {
    grid-template-columns:repeat(3,1fr)
  }
}
@media(max-width:760px) {
  .site-header {
    min-height:70px;
    padding:9px 19px;
    gap:10px
  }
  .brand {
    min-width:0
  }
  .brand-mark {
    width:45px;
    height:45px;
    font-size:21px
  }
  .brand-copy strong {
    font-size:19px
  }
  .brand-copy>span {
    font-size:10px
  }
  .brand-copy small {
    font-size:8px
  }
  .menu-toggle {
    display:grid;
    gap:5px;
    padding:10px
  }
  .menu-toggle span {
    display:block;
    width:23px;
    height:2px;
    background:#f6d984
  }
  .main-nav {
    display:none;
    position:absolute;
    top:69px;
    left:0;
    right:0;
    padding:12px 18px 18px;
    background:#11100c;
    border-top:1px solid #493a1e;
    flex-direction:column;
    align-items:stretch
  }
  .main-nav.open {
    display:flex
  }
  .main-nav a {
    padding:12px 14px
  }
  .header-social {
    display:none
  }
  .hero-home {
    min-height:0;
    padding:50px 24px 23px;
    grid-template-columns:1fr
  }
  .hero-content {
    max-width:580px
  }
  .hero h1 {
    font-size:47px
  }
  .hero-script {
    font-size:27px
  }
  .hero-description {
    font-size:13px
  }
  .hero-art {
    min-height:290px
  }
  .product-scene {
    height:280px;
    transform:scale(.88)
  }
  .trust-strip {
    grid-template-columns:1fr 1fr;
    gap:16px 5px;
    padding:19px 14px
  }
  .trust-strip>div {
    justify-content:flex-start;
    padding-left:9px;
    border-right:0
  }
  .trust-strip p {
    font-size:11px
  }
  .section {
    padding:53px 20px
  }
  .section-heading h2 {
    font-size:33px
  }
  .product-grid-five {
    grid-template-columns:repeat(2,1fr)
  }
  .product-grid-five article:last-child {
    display:none
  }
  .product-grid-five .product-visual {
    height:130px
  }
  .why-band,.journey-band,.range-note,.review-cta {
    margin-inline:16px;
    padding:23px;
    flex-wrap:wrap;
    gap:18px
  }
  .years-badge {
    width:92px;
    height:92px
  }
  .years-badge span {
    font-size:48px
  }
  .years-badge b {
    font-size:17px
  }
  .why-title {
    min-width:0;
    flex:1
  }
  .why-title h2,.journey-band h2 {
    font-size:26px
  }
  .check-list {
    flex-basis:100%
  }
  .why-band>.button {
    margin-left:auto
  }
  .closing-cta {
    padding:38px 23px;
    align-items:flex-start;
    flex-direction:column
  }
  .closing-cta h2 {
    font-size:25px
  }
  .site-footer {
    grid-template-columns:auto 1fr;
    gap:14px
  }
  .site-footer p {
    grid-column:1/-1;
    grid-row:2
  }
  .site-footer nav {
    grid-column:1/-1;
    flex-wrap:wrap;
    gap:14px
  }
  .site-footer>small {
    grid-column:1/-1
  }
  .page-hero {
    min-height:0;
    padding:40px 24px 20px;
    grid-template-columns:1fr
  }
  .page-hero h1 {
    font-size:48px
  }
  .page-hero-art {
    min-height:200px
  }
  .hero-product {
    height:205px
  }
  .section-split {
    grid-template-columns:1fr;
    gap:23px
  }
  .story-image {
    min-height:220px
  }
  .story-copy h2 {
    font-size:33px
  }
  .stats-row {
    grid-template-columns:repeat(2,1fr);
    gap:8px;
    margin-inline:16px
  }
  .stats-row>div {
    justify-content:flex-start;
    border:0;
    border-bottom:1px solid #eee1cf;
    padding:8px
  }
  .stats-row>div:last-child {
    border:0
  }
  .values-grid {
    grid-template-columns:1fr;
    padding-block:28px
  }
  .journey-band {
    margin-bottom:38px
  }
  .filter-bar {
    justify-content:flex-start;
    width:100%;
    border-radius:15px
  }
  .filter-button {
    padding:10px 14px
  }
  .catalog-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px
  }
  .catalog-grid .product-visual {
    height:142px
  }
  .catalog-grid .product-card {
    padding:8px
  }
  .catalog-grid .product-card h3 {
    font-size:15px
  }
  .catalog-grid .product-card p {
    font-size:11px;
    min-height:34px
  }
  .product-tag {
    font-size:8px;
    left:6px;
    top:7px
  }
  .range-note>div,.range-note>p {
    flex:1 1 40%
  }
  .range-note>.button {
    margin-left:auto
  }
  .review-stats {
    grid-template-columns:repeat(2,1fr)
  }
  .review-grid,.review-grid-secondary {
    grid-template-columns:1fr;
    max-width:none
  }
  .review-card {
    min-height:190px
  }
  .review-cta .button {
    margin-left:auto
  }
  .contact-layout {
    grid-template-columns:1fr;
    padding:38px 20px 28px
  }
  .contact-hero-art {
    height:200px
  }
  .contact-hero-art .pack {
    transform:scale(.68);
    transform-origin:bottom center
  }
  .contact-hero-art .pack-jar {
    transform:scale(.66)
  }
  .contact-hero-art:after {
    width:80%;
    right:10%;
    bottom:19px
  }
  .hours-row {
    grid-template-columns:1fr;
    margin-inline:16px;
    gap:5px
  }
  .hours-row>div {
    justify-content:flex-start;
    border:0;
    border-bottom:1px solid #eee1cf;
    padding:10px 16px
  }
  .hours-row>div:last-child {
    border:0
  }
}
@media(max-width:430px) {
  .hero-actions .button {
    font-size:11px;
    padding:11px 13px
  }
  .hero-art {
    min-height:250px
  }
  .product-scene {
    transform:scale(.76);
    width:125%;
    margin-left:-12.5%
  }
  .trust-strip .trust-icon {
    font-size:23px
  }
  .trust-strip p {
    font-size:10px
  }
  .product-grid-five .product-card {
    padding:9px
  }
  .product-grid-five .product-card p {
    font-size:10px
  }
  .product-grid-five .product-card h3 {
    font-size:14px
  }
  .product-grid-five .product-visual {
    height:112px
  }
  .product-grid-five .mini {
    transform:scale(.62)
  }
  .product-grid-five .mini.pack-jar {
    transform:scale(.7)
  }
  .product-grid-five .mini.pack-oil {
    transform:scale(.7)
  }
  .page-hero h1 {
    font-size:42px
  }
  .hero-product .pack {
    transform:scale(.68);
    transform-origin:bottom center;
    margin-inline:-9px
  }
  .hero-product .pack-jar {
    transform:scale(.68)
  }
  .hero-product .pack-lotion {
    transform:scale(.72)
  }
  .filter-button {
    font-size:10px;
    padding:9px 11px
  }
  .catalog-grid .mini {
    transform:scale(.65)
  }
  .catalog-grid .mini.pack-jar {
    transform:scale(.7)
  }
  .catalog-grid .mini.pack-oil {
    transform:scale(.68)
  }
  .form-grid {
    grid-template-columns:1fr
  }
  .form-wide {
    grid-column:auto
  }
  .inquiry-form {
    padding:21px 17px
  }
  .social-links {
    grid-template-columns:1fr
  }
  .range-note {
    display:grid
  }
  .range-note>div,.range-note>p {
    width:100%
  }
  .range-note>.button {
    margin:0
  }
  .review-cta {
    align-items:flex-start
  }
  .review-cta .button {
    margin:0
  }
  .contact-info h2,.inquiry-form h2 {
    font-size:30px
  }
}
.page-hero h1 em {
  color:var(--gold-light)
}
@media(max-width:760px) {
  .product-grid-five article:last-child {
    display:block
  }
}
.hero-home>* {
  min-width:0
}
@media(max-width:760px) {
  .product-grid-five {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}
.brand-mark {
  overflow:hidden;
  padding:0;
  border:0;
  box-shadow:none
}
.brand-mark img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%
}
.care-section {
  padding-top:55px;
  padding-bottom:65px;
  background:#fff
}
.care-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  max-width:1100px;
  margin:0 auto
}
.care-card {
  display:flex;
  align-items:flex-start;
  gap:15px;
  padding:22px;
  border:1px solid #eadfcf;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#fffaf2);
  box-shadow:0 7px 22px rgba(58,38,10,.06);
  transition:transform .2s,box-shadow .2s
}
.care-card:hover {
  transform:translateY(-3px);
  box-shadow:var(--shadow)
}
.care-icon {
  display:grid;
  place-items:center;
  flex:none;
  width:48px;
  height:48px;
  border:1px solid #b78a34;
  border-radius:50%;
  background:var(--black);
  color:var(--gold-light);
  font-size:24px
}
.care-copy {
  display:grid;
  gap:5px
}
.care-copy strong {
  font:600 19px/1.2 var(--serif)
}
.care-copy small {
  color:var(--muted);
  font-size:12px;
  line-height:1.5
}
.care-copy .text-link {
  width:max-content;
  margin-top:5px
}
@media(max-width:760px) {
  .care-grid {
    grid-template-columns:1fr;
    gap:11px
  }
  .care-card {
    padding:17px
  }
}
body {
  min-height:100vh;
  display:flex;
  flex-direction:column
}
body>main {
  flex:1 0 auto
}
body>.site-footer {
  margin-top:auto
}
.home-page,.inner-page {
  width:100%
}
.hero-home h1 {
  max-width:540px
}
.hero-home .hero-description {
  max-width:460px
}
.hero-product-grid {
  position:relative;
  z-index:1;
  width:min(100%,560px);
  min-height:255px;
  padding:22px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:12px;
  border:1px solid rgba(233,194,103,.38);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(8,8,7,.82),rgba(67,47,19,.78));
  box-shadow:0 20px 60px #0007
}
.hero-product-photo {
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  text-align:center
}
.hero-product-photo>strong {
  color:#fff1ce;
  font:500 13px var(--serif)
}
.product-placeholder {
  width:100%;
  min-height:155px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:9px;
  overflow:hidden;
  border:1px dashed #c9a95d;
  border-radius:13px;
  background:radial-gradient(ellipse at center,#342817,#17140e 72%);
  color:#edca76;
  text-align:center
}
.placeholder-monogram {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid #d5aa45;
  border-radius:50%;
  font:18px var(--serif)
}
.product-placeholder small {
  font-size:9px;
  letter-spacing:.06em;
  color:#e4d7b6
}
.product-visual>.product-placeholder {
  position:absolute;
  inset:8px;
  width:auto;
  min-height:0;
  z-index:1;
  border-color:#e6d5b6;
  background:radial-gradient(ellipse at center,#fff9ed,#f2e7d5);
  color:#9a6513
}
.product-visual>.product-placeholder .placeholder-monogram {
  color:#9a6513
}
.product-visual>.product-placeholder small {
  color:#74695b
}
.product-visual>img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  object-fit:cover;
  border-radius:13px
}
.hero-product-photo>.product-placeholder {
  flex:1;
  min-height:155px
}
.hero-product-photo>.product-placeholder img {
  width:100%;
  height:100%;
  object-fit:cover
}
.content-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px
}
.content-card {
  padding:26px;
  border:1px solid #eee3d2;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#fffaf2);
  box-shadow:0 8px 24px rgba(58,38,10,.055)
}
.content-card .eyebrow {
  margin-bottom:8px
}
.content-card h2 {
  margin:0 0 11px;
  font:600 24px/1.2 var(--serif)
}
.content-card>p:last-child {
  margin:0;
  color:var(--muted);
  font-size:14px
}
.team-photo {
  width:min(100%,330px);
  aspect-ratio:4/5;
  padding:10px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #cfa549;
  border-radius:20px;
  background:linear-gradient(145deg,#fff9ea,#73531d);
  color:#fff3d4;
  text-align:center
}
.team-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:13px
}
.team-photo span {
  font:italic 16px var(--serif)
}
.team-content {
  grid-template-columns:1fr;
  max-width:900px;
  margin:auto
}
.team-content .content-card:first-child {
  padding:36px
}
.product-page-mark,.gallery-mark {
  width:230px;
  height:230px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:10px;
  border:1px solid #d6aa46;
  border-radius:50%;
  background:radial-gradient(circle,#523b16,#17140e 69%);
  color:#f6d984;
  box-shadow:inset 0 0 0 8px #d6aa4622,0 16px 35px #0004
}
.product-page-mark span {
  font:600 92px/.9 var(--serif)
}
.product-page-mark small,.gallery-mark small {
  font-size:10px;
  letter-spacing:.15em
}
.gallery-mark span {
  font:600 82px/.9 var(--serif)
}
.catalog-grid .product-placeholder {
  position:absolute;
  inset:7px;
  min-height:0;
  background:radial-gradient(ellipse at center,#fffaf0,#f1e4ce)
}
.catalog-grid .product-placeholder .placeholder-monogram {
  color:#976717
}
.catalog-grid .product-placeholder small {
  color:#776446
}
.product-visual img:not(.product-placeholder img) {
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:13px
}
.product-option {
  color:#785817!important;
  font-size:10px!important;
  margin:0 auto 5px!important
}
.product-price {
  color:#211d15!important;
  font-weight:700;
  font-size:13px!important
}
.catalog-grid>.content-card {
  grid-column:1/-1;
  margin-top:14px
}
.gallery-intro {
  margin-bottom:28px
}
.gallery-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px
}
.gallery-item {
  margin:0;
  aspect-ratio:1/1;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fffaf1
}
.gallery-item>img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease
}
.gallery-item:hover>img {
  transform:scale(1.05)
}
.gallery-placeholder {
  width:100%;
  height:100%;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:7px;
  background:linear-gradient(145deg,#fff,#f8efdf);
  color:#997a46
}
.gallery-placeholder span {
  font:600 32px var(--serif)
}
.gallery-placeholder small {
  font-size:10px;
  letter-spacing:.08em
}
.review-hero-mark span {
  font:600 58px/1 var(--serif);
  color:var(--gold-light)
}
.review-section+.content-card {
  margin:0 clamp(20px,6vw,92px) 25px
}
.contact-hero-mark {
  display:grid;
  justify-items:center;
  gap:11px;
  color:#fff3d1;
  font:italic 14px var(--serif)
}
.contact-hero-mark img {
  width:min(100%,210px);
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:50%;
  box-shadow:0 12px 30px #0008
}
.map-section {
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:25px;
  align-items:center;
  margin:0 clamp(20px,5vw,70px) 35px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fffdf9
}
.map-section h2 {
  font:600 27px/1.2 var(--serif);
  margin:0 0 10px
}
.map-section>div>p:last-child {
  margin:0;
  color:var(--muted);
  font-size:13px
}
.map-section iframe {
  width:100%;
  min-height:280px;
  border:0;
  border-radius:12px;
  background:#f3eee4
}
.why-copy {
  flex:1;
  max-width:450px;
  margin:0 auto;
  color:#e5ddd0;
  font-size:13px
}
.error-page {
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:#fff
}
.error-content {
  width:min(100%,620px);
  padding:45px;
  border:1px solid var(--line);
  border-radius:20px
}
.error-content h1 {
  font:600 42px/1.1 var(--serif)
}
.error-content>p:not(.eyebrow) {
  color:var(--muted)
}
@media(max-width:1000px) {
  .gallery-grid {
    grid-template-columns:repeat(4,minmax(0,1fr))
  }
}
@media(max-width:760px) {
  .hero-product-grid {
    min-height:0;
    padding:13px;
    gap:8px
  }
  .hero-product-photo>.product-placeholder {
    min-height:100px
  }
  .content-grid {
    grid-template-columns:1fr;
    padding-top:38px;
    padding-bottom:38px
  }
  .content-card {
    padding:20px
  }
  .team-content .content-card:first-child {
    padding:24px
  }
  .product-page-mark,.gallery-mark {
    width:190px;
    height:190px
  }
  .gallery-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px
  }
  .map-section {
    grid-template-columns:1fr;
    margin-inline:16px;
    padding:18px
  }
  .map-section iframe {
    min-height:240px
  }
  .why-band .why-copy {
    flex-basis:100%
  }
}
@media(max-width:430px) {
  .hero-product-grid {
    padding:9px;
    gap:6px
  }
  .hero-product-photo {
    gap:9px
  }
  .hero-product-photo>strong {
    font-size:10px
  }
  .gallery-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .product-page-mark,.gallery-mark {
    width:165px;
    height:165px
  }
}
.site-header {
  position:sticky;
  top:0
}
.gallery-trigger {
  display:block;
  width:100%;
  height:100%;
  padding:0;
  overflow:hidden;
  border:0;
  background:transparent;
  cursor:zoom-in
}
.gallery-trigger>img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease
}
.gallery-trigger:hover>img {
  transform:scale(1.06)
}
.reveal-on-scroll {
  opacity:0;
  transform:translateY(15px);
  transition:opacity .55s ease,transform .55s ease
}
.reveal-on-scroll.in-view {
  opacity:1;
  transform:translateY(0)
}
.floating-whatsapp {
  position:fixed;
  z-index:6;
  right:22px;
  bottom:22px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:11px 16px;
  border:1px solid #46a75d;
  border-radius:999px;
  background:#12833c;
  color:white;
  font-size:12px;
  font-weight:700;
  box-shadow:0 10px 24px #071a0b38;
  transition:transform .2s ease,box-shadow .2s ease
}
.floating-whatsapp:hover {
  transform:translateY(-3px);
  box-shadow:0 13px 28px #071a0b55
}
.floating-whatsapp::first-letter {
  font-size:18px
}
.back-to-top {
  position:fixed;
  z-index:6;
  right:28px;
  bottom:83px;
  width:39px;
  height:39px;
  display:grid;
  place-items:center;
  border:1px solid var(--gold);
  border-radius:50%;
  background:#17140e;
  color:var(--gold-light);
  font-size:20px;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:opacity .2s,visibility .2s,transform .2s
}
.back-to-top.visible {
  opacity:1;
  visibility:visible;
  transform:translateY(0)
}
.image-modal {
  position:fixed;
  max-width:min(94vw,1100px);
  max-height:92vh;
  padding:15px;
  border:1px solid #d5aa45;
  border-radius:17px;
  background:#11100c;
  color:white;
  box-shadow:0 20px 70px #000b
}
.image-modal::backdrop {
  background:#0b0a08d9;
  backdrop-filter:blur(5px)
}
.image-modal>img {
  display:block;
  max-width:calc(94vw - 30px);
  max-height:80vh;
  object-fit:contain;
  border-radius:9px
}
.image-modal>p {
  margin:10px 35px 0 0;
  color:#e4d7b6;
  font-size:12px
}
.image-modal form {
  position:absolute;
  z-index:1;
  top:10px;
  right:10px
}
.image-modal-close {
  width:36px;
  height:36px;
  border:1px solid #d5aa45;
  border-radius:50%;
  background:#11100ce8;
  color:#ffe3a0;
  font-size:23px;
  cursor:pointer
}
.product-card,.care-card,.review-card,.value-card,.content-card {
  transition:transform .24s ease,box-shadow .24s ease
}
.product-card:hover,.care-card:hover,.review-card:hover,.value-card:hover,.content-card:hover {
  box-shadow:0 15px 34px rgba(58,38,10,.12)
}
.product-visual>img:hover {
  transform:scale(1.035);
  transition:transform .35s ease
}
.button:focus-visible,.main-nav a:focus-visible,.text-link:focus-visible,.filter-button:focus-visible,.floating-whatsapp:focus-visible,.back-to-top:focus-visible {
  outline:3px solid #b9811b;
  outline-offset:3px
}
@media(max-width:760px) {
  .site-header {
    position:sticky
  }
  .floating-whatsapp {
    right:12px;
    bottom:12px;
    padding:10px 13px
  }
  .back-to-top {
    right:18px;
    bottom:66px
  }
}
@media(min-width:761px) and (max-width:840px) {
  .site-header {
    padding:9px 20px;
    gap:10px
  }
  .brand {
    min-width:0
  }
  .menu-toggle {
    display:grid;
    gap:5px;
    padding:10px
  }
  .menu-toggle span {
    display:block;
    width:23px;
    height:2px;
    background:#f6d984
  }
  .main-nav {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    padding:12px 18px 18px;
    background:#11100c;
    border-top:1px solid #493a1e;
    flex-direction:column;
    align-items:stretch
  }
  .main-nav.open {
    display:flex
  }
  .main-nav a {
    padding:12px 14px
  }
  .header-social {
    display:none
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important
  }
}
