:root {
  --ink: #2b2923;
  --forest: #e8ddc7;
  --forest-deep: #f4eee2;
  --ivory: #f9f6ef;
  --paper: #fffdf8;
  --gold: #ae8d4e;
  --gold-light: #c7a45f;
  --line: rgba(142, 111, 52, .22);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; background: #fbf9f4; color: var(--ink); font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", "Noto Sans JP", sans-serif; }
a { color: inherit; text-decoration: none; }
.skipLink { position:fixed; z-index:100; top:10px; left:10px; padding:12px 16px; background:#2b2923; color:#fff; font-size:13px; transform:translateY(-160%); transition:transform .2s; }
.skipLink:focus { transform:none; }
a:focus-visible,summary:focus-visible { outline:2px solid #9d7937; outline-offset:4px; }
.mobileOnly { display: none; }
p { line-height: 2; }
::selection { background: #bca66f; color: #101612; }

.homePage {
  --forest: #f1e6d1;
  --forest-deep: #fbf5e9;
  --ivory: #fdfaf3;
  --paper: #fffefa;
  --gold: #c19b4c;
  --gold-light: #dec276;
  --line: rgba(169, 130, 56, .23);
  background: #fffefa;
}

.hero { position: relative; min-height: 100svh; overflow: hidden; color: var(--ink); background: #eee6d7; }
.heroImage { position: absolute; inset: 0; background: url('./assets/hemp-sanctuary-hero.webp'); background-position: center; background-size: cover; transform: scale(1.015); animation: heroIn 1.6s cubic-bezier(.2,.7,.2,1) both; }
.heroShade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(250,247,239,.97) 0%, rgba(248,243,231,.87) 38%, rgba(239,226,199,.18) 73%), linear-gradient(180deg, rgba(255,252,245,.30), transparent 42%, rgba(238,226,203,.36)); }
.heroGrain { position: absolute; inset: 0; opacity: .09; pointer-events: none; background-image: radial-gradient(rgba(112,88,44,.3) .45px, transparent .45px); background-size: 4px 4px; mix-blend-mode: multiply; }
.siteHeader { position: relative; z-index: 10; height: 92px; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(24px,5vw,76px); border-bottom: 1px solid rgba(142,111,52,.24); }
.brand { display: flex; align-items: center; gap: 12px; }
.brandMark { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(142,111,52,.55); border-radius: 50%; color: #99783b; font-family: Georgia, serif; font-size: 19px; }
.brandText { font-size: 9px; letter-spacing: .23em; line-height: 1.45; }
.desktopNav { display: flex; gap: clamp(24px,3vw,48px); font-size: 11px; letter-spacing: .12em; }
.desktopNav a { position: relative; padding: 12px 0; opacity: .78; transition: opacity .25s; }
.desktopNav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 4px; height: 1px; background: var(--gold-light); transition: right .3s; }
.desktopNav a:hover { opacity: 1; }
.desktopNav a:hover::after { right: 0; }
.headerCta { min-height: 46px; display: flex; align-items: center; gap: 24px; padding: 0 18px; border: 1px solid rgba(142,111,52,.62); font-size: 12px; letter-spacing: .11em; transition: background .25s, color .25s; }
.headerCta:hover { background: var(--gold); color: #fff; }
.mobileMenu { display: none; }
.heroContent { position: relative; z-index: 2; width: min(820px,88vw); margin-left: clamp(24px,9vw,140px); padding-top: clamp(105px,17vh,188px); animation: copyIn 1.15s .2s cubic-bezier(.2,.7,.2,1) both; }
.eyebrow { margin: 0 0 24px; color: var(--gold-light); font-size: 9px; letter-spacing: .33em; line-height: 1.5; }
h1,h2,h3,blockquote { font-family: "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif; text-wrap: balance; }
h1 { margin: 0; font-size: clamp(42px,6.35vw,92px); font-weight: 400; letter-spacing: .02em; line-height: 1.23; }
h1 em { color: #d8c18a; font-style: normal; }
.heroLead { margin: 30px 0; font-family: "Yu Mincho", serif; font-size: clamp(16px,1.35vw,19px); line-height: 2; letter-spacing: .08em; }
.primaryButton { width: min(282px,100%); min-height: 60px; display: flex; align-items: center; justify-content: space-between; padding: 0 23px; background: #b39455; color: #fff; font-size: 13px; letter-spacing: .11em; transition: transform .25s, background .25s; box-shadow: 0 12px 32px rgba(137,105,45,.15); }
.primaryButton:hover { transform: translateY(-3px); background: #9f7f42; }

.homePage .heroImage { filter: brightness(1.08) saturate(.9); }
.homePage .heroShade { background: linear-gradient(90deg,rgba(255,253,247,.98) 0%,rgba(253,248,237,.9) 39%,rgba(246,232,199,.12) 74%),linear-gradient(180deg,rgba(255,255,255,.4),transparent 42%,rgba(248,237,214,.28)); }
.homePage .hero::before { content:""; position:absolute; z-index:1; top:15%; right:7%; width:min(340px,30vw); aspect-ratio:1; pointer-events:none; background:radial-gradient(circle at 24% 76%,rgba(255,239,184,.95) 0 1.2%,transparent 2.2%),radial-gradient(circle at 56% 45%,rgba(255,226,147,.78) 0 1%,transparent 2%),radial-gradient(circle at 78% 22%,rgba(255,247,217,.9) 0 .8%,transparent 1.8%),linear-gradient(138deg,transparent 35%,rgba(235,196,102,.32) 49%,transparent 50.5%); filter:drop-shadow(0 0 18px rgba(229,185,78,.32)); animation:morningRise 6.8s ease-in-out infinite; }
.homePage .hero::after { content:""; position:absolute; z-index:1; top:10%; right:4%; width:min(520px,42vw); height:min(390px,32vw); pointer-events:none; border-top:1px solid rgba(235,204,129,.4); border-radius:50%; transform:rotate(-28deg); filter:drop-shadow(0 0 24px rgba(231,192,99,.22)); }
.homePage .heroContent { width:min(940px,88vw); }
.homePage h1 { font-size:clamp(42px,5.7vw,82px); }
.homePage h1 em { color:#d9b65d; text-shadow:0 8px 34px rgba(211,170,77,.18); }
.homePage .primaryButton { background:#c2a15a; box-shadow:0 14px 36px rgba(166,126,47,.2); }
.homePage .primaryButton:hover { background:#ad8b45; }
.heroFoot { position: absolute; z-index: 2; left: clamp(24px,5vw,76px); right: clamp(24px,5vw,76px); bottom: 26px; display: flex; justify-content: space-between; font-family: "Yu Mincho", serif; font-size: 11px; letter-spacing: .14em; }
.heroFoot a { display: flex; align-items: center; gap: 13px; font-family: Arial,sans-serif; font-size: 8px; }
.heroFoot i { width: 44px; height: 1px; display: block; background: rgba(87,68,32,.58); }

.benefitRibbon { display: grid; grid-template-columns: repeat(3,1fr); background: var(--paper); border-bottom: 1px solid var(--line); }
.benefitItem { min-height: 145px; display: flex; align-items: center; gap: 24px; padding: 26px clamp(24px,4vw,66px); border-right: 1px solid var(--line); }
.benefitItem:last-child { border-right: 0; }
.benefitItem > span { color: var(--gold); font-family: Georgia,serif; font-size: 14px; }
.benefitItem p { margin: 0; color: #505753; font-family: "Yu Mincho",serif; font-size: clamp(14px,1.05vw,16px); line-height: 1.9; }
.benefitItem strong { color: var(--ink); font-size: 1.08em; font-weight: 500; }

.sectionPad { padding: clamp(100px,12vw,190px) clamp(24px,8vw,130px); }
.sectionLabel { display: flex; align-items: center; gap: 20px; color: #8f794d; font-size: 9px; letter-spacing: .3em; }
.sectionLabel i { width: 70px; height: 1px; display: block; background: #b9a57a; }
.vision { position: relative; min-height: 830px; display: grid; grid-template-columns: minmax(120px,.48fr) minmax(520px,1.3fr) .42fr; overflow: hidden; background: var(--ivory); }
.vision::after { content: ""; position: absolute; width: 680px; height: 680px; right: -310px; top: 60px; border: 1px solid rgba(173,145,91,.25); border-radius: 50%; }
.visionCopy { position: relative; z-index: 1; padding-top: 65px; }
.kicker { margin: 0 0 24px; color: #7e6a42; font-size: 11px; letter-spacing: .18em; }
.vision h2,.realization h2,.twoWaysHeading h2 { margin: 0; font-size: clamp(38px,5.2vw,72px); font-weight: 400; letter-spacing: .03em; line-height: 1.47; }
.visionBody { width: min(520px,100%); display: grid; grid-template-columns: 1fr 1.25fr; gap: 50px; margin-top: 72px; padding-top: 34px; border-top: 1px solid var(--line); }
.visionBody p { margin: 0; color: #525954; font-family: "Yu Mincho",serif; font-size: 13px; line-height: 2.1; }
.visionSeal { align-self: end; position: relative; z-index: 1; width: 156px; height: 156px; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #b7a57c; border-radius: 50%; color: #75623b; transform: translateY(30px); }
.visionSeal::before { content:""; position:absolute; inset:8px; border:1px solid rgba(173,145,91,.36); border-radius:50%; }
.visionSeal span { font-family: "Yu Mincho",serif; font-size: 28px; letter-spacing: .12em; }
.visionSeal small { margin-top: 6px; font-size: 8px; letter-spacing: .19em; }

.uncertainty { padding: clamp(100px,11vw,160px) clamp(24px,9vw,145px) 62px; background: #eee6d7; color: var(--ink); }
.uncertaintyGrid { display: grid; grid-template-columns: 1.08fr .92fr; gap: clamp(60px,10vw,170px); }
.uncertainty h2 { margin: 0; font-size: clamp(33px,4.1vw,59px); font-weight: 400; line-height: 1.65; }
.uncertaintyText { padding-top: 40px; border-top: 1px solid rgba(142,111,52,.26); }
.uncertaintyText p { margin: 0 0 35px; color: #615c51; font-family: "Yu Mincho",serif; font-size: 13px; line-height: 2.3; }
.quietLine { margin-top: 110px; display: grid; grid-template-columns: auto 1fr auto 1fr auto; align-items: center; gap: 20px; color: #758078; font-size: 9px; letter-spacing: .27em; }
.quietLine i { height: 1px; background: rgba(142,111,52,.22); }
.quietLine strong { color: var(--gold-light); font-weight: 400; }

.realization { display: grid; grid-template-columns: minmax(120px,.4fr) 1.6fr; background: var(--paper); }
.realizationContent { max-width: 920px; }
.realization h2 { font-size: clamp(36px,4.9vw,68px); }
.largeBody { margin: 62px 0 70px; color: #4b524d; font-family: "Yu Mincho",serif; font-size: clamp(16px,1.6vw,21px); line-height: 2.2; }
.statementCard { position: relative; display: grid; grid-template-columns: .55fr 1.45fr; gap: 50px; padding: 45px 48px; border: 1px solid #b9a985; background: rgba(242,238,228,.72); }
.statementCard::before { content:""; position:absolute; width:9px; height:9px; top:-5px; left:-5px; background:var(--gold); transform:rotate(45deg); }
.statementCard span { padding-top: 9px; color: #8b7445; font-size: 8px; letter-spacing: .26em; }
.statementCard p { margin: 0; font-family: "Yu Mincho",serif; font-size: clamp(21px,2.2vw,31px); line-height: 1.8; }
.statementCard em { color: #8a7142; font-style: normal; }

.shiftSection { padding: clamp(100px,11vw,160px) clamp(24px,9vw,145px); background: #dcd7ca; }
.shiftHeading { display: grid; grid-template-columns: .45fr 1.55fr; margin-bottom: 86px; }
.shiftHeading h2 { margin: 0; font-size: clamp(34px,4.5vw,64px); font-weight: 400; line-height: 1.55; }
.shiftList { border-top: 1px solid rgba(21,27,25,.25); }
.shiftRow { min-height: 146px; display: grid; grid-template-columns: .25fr .9fr .28fr 1.15fr; align-items: center; border-bottom: 1px solid rgba(21,27,25,.25); }
.shiftNumber { color: #826c43; font-family: Georgia,serif; font-size: 14px; }
.shiftRow p { margin: 0; font-family: "Yu Mincho",serif; font-size: clamp(15px,1.5vw,20px); line-height: 1.8; }
.shiftRow .before { color: #616762; }
.shiftArrow { color: #9b865c; font-size: 26px; font-weight: 200; }
.shiftRow .after { font-size: clamp(18px,1.8vw,24px); }
.shiftRow strong { color: #796239; font-weight: 500; }

.hempSection { display: grid; grid-template-columns: 1fr 1fr; min-height: 890px; background: var(--ivory); }
.craftImage { min-height: 760px; background: url('./assets/hemp-craft-hands.webp'); background-position: center; background-size: cover; }
.homePage .craftImage { background-image:linear-gradient(rgba(255,255,255,.28),rgba(255,255,255,.16)),url('./assets/hemp-craft-hands.webp'); filter:brightness(1.18) saturate(.5) contrast(.91); }
.hempContent { align-self: center; padding: 90px clamp(36px,7vw,115px); }
.hempContent .eyebrow { color: #816b41; }
.hempContent h2 { margin: 0 0 42px; font-size: clamp(38px,4.5vw,65px); font-weight: 400; line-height: 1.45; }
.hempContent > p:not(.eyebrow) { color: #535a55; font-family: "Yu Mincho",serif; font-size: 13px; line-height: 2.25; }
.hempLead { color: var(--ink)!important; font-size: clamp(15px,1.5vw,19px)!important; }
.hempName { margin: 52px 0 36px; padding: 28px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.hempName span { display: block; margin-bottom: 6px; color: #8a7449; font-size: 9px; letter-spacing: .22em; }
.hempName strong { font-family: "Yu Mincho",serif; font-size: clamp(29px,3vw,42px); font-weight: 400; letter-spacing: .11em; }
.textLink { width: fit-content; display: flex; gap: 70px; margin-top: 48px; padding-bottom: 12px; border-bottom: 1px solid #8c7548; font-size: 12px; letter-spacing: .12em; }

.ultimateFuture { position: relative; min-height: 900px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; padding: 130px 24px; text-align: center; background: #f7f2e8; color: var(--ink); }
.homePage .ultimateFuture { background:radial-gradient(circle at 50% 43%,#fffef9 0%,#fbf5e8 48%,#f3e7d2 100%); }
.homePage .ultimateFuture::before,.homePage .ultimateFuture::after { content:""; position:absolute; top:47%; width:min(38vw,490px); height:min(23vw,290px); border-top:1px solid rgba(211,174,91,.5); border-radius:50%; filter:drop-shadow(0 0 28px rgba(226,195,124,.26)); }
.homePage .ultimateFuture::before { left:-7vw; transform:rotate(18deg); }
.homePage .ultimateFuture::after { right:-7vw; transform:rotate(-18deg); }
.futureOrb { position: absolute; width: min(720px,78vw); aspect-ratio: 1; border: 1px solid rgba(196,172,114,.24); border-radius: 50%; box-shadow: 0 0 130px rgba(163,141,88,.08), inset 0 0 100px rgba(178,151,90,.05); }
.homePage .futureOrb { border-color:rgba(216,181,98,.34); background:radial-gradient(circle,rgba(255,255,255,.78),rgba(255,250,235,.16) 58%,transparent 72%); box-shadow:0 0 155px rgba(205,167,78,.15),inset 0 0 110px rgba(224,195,127,.1); animation:futureGlow 6s ease-in-out infinite; }
.futureOrb::before,.futureOrb::after { content:""; position:absolute; border:1px solid rgba(196,172,114,.11); border-radius:50%; }
.futureOrb::before { inset: 7%; }
.futureOrb::after { inset: 21%; }
.ultimateFuture > *:not(.futureOrb) { position: relative; z-index: 1; }
.ultimateFuture h2 { margin: 0 0 50px; font-size: clamp(36px,5.2vw,70px); font-weight: 400; line-height: 1.6; }
.ultimateFuture > p:not(.eyebrow) { margin: 4px 0; color: #625e54; font-family: "Yu Mincho",serif; font-size: 13px; line-height: 2.2; }
.futureProgress { width: min(760px,90vw); display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; align-items: center; gap: 18px; margin-top: 80px; color: #7d867f; font-size: 9px; letter-spacing: .19em; }
.futureProgress i { height: 1px; background: rgba(142,111,52,.22); }
.futureProgress strong { color: var(--gold-light); font-weight: 400; }

.twoWays { display: grid; grid-template-columns: minmax(120px,.34fr) 1.66fr; gap: 0; background: var(--paper); }
.twoWaysHeading { margin-bottom: 70px; }
.twoWaysHeading h2 { font-size: clamp(38px,4.5vw,62px); }
.wayCards { grid-column: 2; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.wayCard { min-height: 550px; display: flex; flex-direction: column; padding: 45px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .35s, color .35s; }
.wayCard:hover { background: var(--forest); color: var(--ink); }
.wayNumber { color: #8d7648; font-family: Georgia,serif; font-size: 14px; }
.wayCard > div { margin: auto 0 42px; }
.wayCard > div p { margin: 0 0 13px; color: #927a4d; font-size: 8px; letter-spacing: .25em; }
.wayCard h3 { margin: 0; font-size: clamp(29px,2.8vw,41px); font-weight: 400; line-height: 1.65; }
.wayCard > p { min-height: 90px; margin: 0 0 30px; color: #59605b; font-family: "Yu Mincho",serif; font-size: 12px; line-height: 2; }
.wayCard:hover > p { color: #5f5a50; }
.wayCard > a { display: flex; justify-content: space-between; padding-top: 19px; border-top: 1px solid currentColor; font-size: 12px; letter-spacing: .12em; }

.makerVoice { position: relative; min-height: 720px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; padding: 110px 24px; text-align: center; background: #d7d1c2; }
.makerMonogram { position: absolute; color: rgba(255,255,255,.23); font-family: Georgia,serif; font-size: min(55vw,700px); line-height: 1; transform: translateY(2%); }
.makerVoice > *:not(.makerMonogram) { position: relative; z-index: 1; }
.makerVoice .eyebrow { color: #7b6842; }
.makerVoice blockquote { margin: 22px 0 42px; font-size: clamp(27px,3.6vw,51px); font-weight: 400; letter-spacing: .05em; line-height: 1.8; }
.makerNote { margin: 0; color: #555c57; font-family: "Yu Mincho",serif; font-size: 12px; line-height: 2.1; }

.beginSection { position: relative; min-height: 760px; display: grid; place-items: center; overflow: hidden; padding: 110px 24px; background: #eee3cf; color: var(--ink); }
.beginSection::before { content:""; position:absolute; width:min(640px,90vw); aspect-ratio:1; border:1px solid rgba(160,125,59,.25); border-radius:50%; }
.beginInner { position: relative; z-index: 1; width: min(860px,100%); text-align: center; }
.beginInner h2 { margin: 0 0 30px; font-size: clamp(42px,5.4vw,74px); font-weight: 400; line-height: 1.55; }
.beginInner > p:not(.eyebrow) { color: #615c51; font-family: "Yu Mincho",serif; font-size: 13px; line-height: 2.1; }
.beginActions { display: flex; align-items: center; justify-content: center; gap: 45px; margin-top: 54px; }
.darkButton { background: #ad8b4d; color: #fff; }
.homePage .darkButton { background:#c2a15a; }
.instagramLink { padding-bottom: 9px; border-bottom: 1px solid #837858; font-size: 12px; letter-spacing: .11em; }
.homePurchaseLinks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; margin-top:42px; text-align:left; }
.homePurchaseCard { min-height:132px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:8px 22px; padding:24px 26px; border:1px solid rgba(168,129,53,.36); background:rgba(255,254,250,.78); box-shadow:0 14px 36px rgba(149,109,35,.08); transition:transform .3s,background .3s,box-shadow .3s; }
.homePurchaseCard:hover { transform:translateY(-5px); background:#fff; box-shadow:0 22px 48px rgba(149,109,35,.15); }
.homePurchaseCard span { display:flex; flex-direction:column; gap:5px; }
.homePurchaseCard b { font-family:Georgia,"Yu Mincho",serif; font-size:29px; font-weight:400; }
.homePurchaseCard small { color:#796b50; font-size:10px; letter-spacing:.12em; }
.homePurchaseCard strong { font-family:Georgia,"Yu Mincho",serif; font-size:22px; font-weight:400; }
.homePurchaseCard i { grid-column:1/-1; display:flex; justify-content:space-between; padding-top:12px; border-top:1px solid var(--line); color:#8b6c32; font-size:11px; font-style:normal; letter-spacing:.13em; }
.verticalPromise { position: absolute; right: 45px; margin: 0; writing-mode: vertical-rl; color: #7d867f; font-family: "Yu Mincho",serif; font-size: 10px; letter-spacing: .25em; }

.nextPages { padding:clamp(82px,9vw,128px) clamp(24px,8vw,130px); background:#fffefa; border-top:1px solid var(--line); }
.nextPagesHeading { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:48px; }
.nextPagesHeading .eyebrow { margin:0; }
.nextPagesHeading h2 { margin:0; font-size:clamp(30px,3.5vw,48px); font-weight:400; line-height:1.5; }
.nextPageLinks { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.nextPageCard { position:relative; min-height:245px; display:flex; flex-direction:column; justify-content:center; padding:40px clamp(28px,4vw,58px); border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(249,241,221,.5)); transition:transform .3s,background .3s,box-shadow .3s; }
.nextPageCard:hover { z-index:1; transform:translateY(-5px); background:linear-gradient(135deg,#fff,#f4e5c4); box-shadow:0 22px 50px rgba(144,106,35,.13); }
.nextPageCard > span { margin-bottom:23px; color:var(--gold); font-family:Georgia,serif; font-size:9px; letter-spacing:.22em; }
.nextPageCard strong { font-family:"Yu Mincho",serif; font-size:clamp(23px,2.3vw,34px); font-weight:400; letter-spacing:.05em; }
.nextPageCard small { margin-top:13px; color:#6b6b62; font-family:"Yu Mincho",serif; font-size:11px; letter-spacing:.05em; }
.nextPageCard i { position:absolute; right:32px; bottom:30px; width:38px; height:38px; display:grid; place-items:center; border:1px solid rgba(168,129,53,.4); border-radius:50%; color:#9e792f; font-style:normal; }

footer { min-height: 150px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 35px; padding: 35px clamp(24px,5vw,76px); background: #faf7f0; color: var(--ink); border-top: 1px solid rgba(142,111,52,.22); }
.footerBrand .brandMark { border-color: rgba(142,111,52,.48); }
footer nav { display: flex; gap: 34px; font-size: 9px; letter-spacing: .14em; }
footer small { justify-self: end; color: #8c806a; font-size: 8px; letter-spacing: .12em; }
.mobileStickyCta { display: none; }

.notFoundPage { min-height:100svh; display:grid; place-items:center; padding:40px 24px; background:radial-gradient(circle at 50% 40%,#fffef9,#f3e7d2); text-align:center; }
.notFoundInner { width:min(680px,100%); }
.notFoundCode { margin:0 0 26px; color:#c19b4c; font-family:Georgia,serif; font-size:14px; letter-spacing:.28em; }
.notFoundInner h1 { margin:0 0 25px; font-size:clamp(35px,6vw,66px); font-weight:400; line-height:1.5; }
.notFoundInner>p:not(.notFoundCode) { margin:0 auto 38px; color:#625e54; font-family:"Yu Mincho",serif; font-size:15px; }
.notFoundInner .primaryButton { margin:0 auto; }

@keyframes heroIn { from { opacity:0; transform:scale(1.08); } to { opacity:1; transform:scale(1.015); } }
@keyframes copyIn { from { opacity:0; transform:translateY(25px); } to { opacity:1; transform:none; } }
@keyframes futureGlow { 0%,100% { transform:translateY(4px) scale(.985); opacity:.78; } 50% { transform:translateY(-7px) scale(1.015); opacity:1; } }
@keyframes morningRise { 0%,100% { transform:translate(-8px,10px) rotate(-2deg); opacity:.58; } 50% { transform:translate(8px,-12px) rotate(2deg); opacity:1; } }

@media (max-width: 900px) {
  .desktopNav { display: none; }
  .vision { grid-template-columns: .3fr 1.4fr; }
  .visionSeal { display:none; }
  .uncertaintyGrid { gap: 55px; }
  .hempSection { grid-template-columns: .92fr 1.08fr; }
  .shiftHeading { grid-template-columns: .3fr 1.7fr; }
  .twoWays { grid-template-columns: .26fr 1.74fr; }
}

@media (max-width: 720px) {
  body { padding-bottom: 62px; }
  p { line-height: 1.9; }
  .siteHeader { height: 72px; padding: 0 20px; }
  .brandMark { width: 34px; height: 34px; }
  .brandText { font-size: 8px; }
  .headerCta { display: none; }
  .mobileMenu { display: block; }
  .mobileMenu summary { width: 46px; height: 46px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; cursor: pointer; list-style: none; border:1px solid rgba(111,87,41,.42); border-radius:50%; background:rgba(255,253,248,.72); box-shadow:0 4px 18px rgba(66,48,18,.12); }
  .mobileMenu summary:focus-visible { outline:2px solid #b18f4e; outline-offset:3px; }
  .mobileMenu summary::-webkit-details-marker { display:none; }
  .mobileMenu summary span { width: 24px; height: 2px; border-radius:2px; background:#3f2d12; box-shadow:0 0 0 .2px rgba(255,255,255,.35); transition: transform .25s, opacity .2s; }
  .mobileMenu[open] summary span:first-child { transform:translateY(7px) rotate(45deg); }
  .mobileMenu[open] summary span:nth-child(2) { opacity:0; }
  .mobileMenu[open] summary span:last-child { transform:translateY(-7px) rotate(-45deg); }
  .mobileMenu nav { position:absolute; left:0; right:0; top:72px; display:flex; flex-direction:column; padding:34px 24px 42px; background:rgba(251,248,240,.98); border-top:1px solid rgba(142,111,52,.18); }
  .mobileMenu nav a { min-height:54px; display:flex; align-items:center; border-bottom:1px solid rgba(142,111,52,.18); font-family:"Yu Mincho",serif; font-size:15px; }
  .heroImage { background-position: 62% center; }
  .heroShade { background: linear-gradient(180deg,rgba(251,248,240,.28),rgba(248,242,229,.54) 48%,rgba(246,239,225,.96)); }
  .heroContent { width:auto; margin:0 22px; padding-top:clamp(150px,27svh,270px); }
  .mobileOnly { display:block; }
  .eyebrow { margin-bottom:17px; font-size:9px; }
  h1 { font-size:clamp(32px,8.7vw,36px); line-height:1.42; letter-spacing:.015em; }
  .homePage .heroContent { width:auto; }
  .homePage h1 { font-size:clamp(28px,7.2vw,31px); line-height:1.46; }
  .homePage .hero::before { top:12%; right:-4%; width:58vw; opacity:.76; }
  .homePage .hero::after { top:10%; right:-30%; width:88vw; height:54vw; }
  .heroLead { margin:24px 0 25px; font-size:16px; line-height:1.9; letter-spacing:.06em; }
  .primaryButton { width:100%; min-height:60px; font-size:14px; }
  .heroFoot { left:22px; right:22px; bottom:18px; }
  .heroFoot > span { display:none; }

  .benefitRibbon { grid-template-columns:1fr; padding:9px 22px; }
  .benefitItem { min-height:104px; padding:19px 0; border-right:0; border-bottom:1px solid var(--line); }
  .benefitItem:last-child { border-bottom:0; }
  .benefitItem > span { width:34px; font-size:15px; }
  .benefitItem p { font-size:16px; }

  .sectionPad { padding:90px 24px; }
  .sectionLabel { margin-bottom:47px; }
  .vision { min-height:auto; display:block; }
  .vision::after { width:330px; height:330px; right:-220px; top:120px; }
  .visionCopy { padding:0; }
  .kicker { margin-bottom:18px; font-size:9px; }
  .vision h2,.realization h2,.twoWaysHeading h2 { font-size:clamp(28px,7.3vw,31px); line-height:1.55; }
  .visionBody { display:block; margin-top:46px; padding-top:24px; }
  .visionBody p { margin-bottom:22px; font-size:15px; }

  .uncertainty { padding:90px 24px 48px; }
  .uncertaintyGrid { display:block; }
  .uncertainty h2 { font-size:clamp(27px,7vw,30px); line-height:1.55; }
  .uncertaintyText { margin-top:50px; padding-top:28px; }
  .uncertaintyText p { font-size:15px; line-height:2; }
  .quietLine { margin-top:65px; gap:10px; font-size:7px; }

  .realization { display:block; }
  .largeBody { margin:40px 0 48px; font-size:16px; }
  .statementCard { display:block; padding:27px 23px; }
  .statementCard span { display:block; margin-bottom:20px; }
  .statementCard p { font-size:20px; line-height:1.85; }

  .shiftSection { padding:90px 24px; }
  .shiftHeading { display:block; margin-bottom:50px; }
  .shiftHeading h2 { font-size:clamp(26px,6.9vw,29px); line-height:1.55; }
  .shiftRow { min-height:154px; grid-template-columns:34px 1fr 25px 1.1fr; gap:7px; }
  .shiftNumber { font-size:15px; }
  .shiftRow p { font-size:15px; }
  .shiftRow .after { font-size:16px; }
  .shiftArrow { font-size:18px; }

  .hempSection { display:flex; flex-direction:column; min-height:auto; }
  .craftImage { min-height:66svh; background-position:center 45%; }
  .hempContent { padding:80px 24px 90px; }
  .hempContent h2 { font-size:clamp(29px,7.7vw,32px); line-height:1.55; }
  .hempContent > p:not(.eyebrow) { font-size:15px; }
  .hempLead { font-size:16px!important; }
  .hempName { margin:38px 0 30px; }
  .textLink { width:100%; justify-content:space-between; font-size:13px; }

  .ultimateFuture { min-height:820px; padding:110px 24px; }
  .futureOrb { width:96vw; }
  .ultimateFuture h2 { margin-bottom:38px; font-size:clamp(27px,7.2vw,30px); line-height:1.6; }
  .ultimateFuture > p:not(.eyebrow) { font-size:14px; }
  .futureProgress { gap:8px; margin-top:55px; font-size:7px; }

  .twoWays { display:block; }
  .twoWaysHeading { margin-bottom:50px; }
  .wayCards { grid-column:auto; display:block; border-left:1px solid var(--line); }
  .wayCard { min-height:510px; padding:32px 27px; }
  .wayCard > div { margin:auto 0 35px; }
  .wayCard h3 { font-size:27px; line-height:1.65; }
  .wayCard > p { min-height:auto; font-size:14px; }

  .makerVoice { min-height:690px; padding:90px 22px; }
  .makerMonogram { font-size:115vw; }
  .makerVoice blockquote { font-size:21px; line-height:1.9; letter-spacing:.02em; }
  .makerNote { font-size:14px; }

  .beginSection { min-height:760px; padding:95px 24px; }
  .beginInner h2 { font-size:clamp(31px,8.2vw,35px); line-height:1.6; }
  .beginInner > p:not(.eyebrow) { font-size:14px; }
  .beginActions { display:block; margin-top:42px; }
  .instagramLink { display:inline-block; margin-top:34px; font-size:13px; }
  .homePurchaseLinks { grid-template-columns:1fr; gap:12px; margin-top:35px; }
  .homePurchaseCard { min-height:116px; padding:20px; }
  .homePurchaseCard b { font-size:27px; }
  .homePurchaseCard strong { font-size:21px; }
  .beginActions .instagramLink { margin-top:0; }
  .verticalPromise { display:none; }

  .nextPages { padding:76px 22px; }
  .nextPagesHeading { display:block; margin-bottom:34px; }
  .nextPagesHeading .eyebrow { margin-bottom:15px; }
  .nextPagesHeading h2 { font-size:27px; }
  .nextPageLinks { grid-template-columns:1fr; }
  .nextPageCard { min-height:205px; padding:31px 25px; }
  .nextPageCard > span { margin-bottom:18px; font-size:8px; }
  .nextPageCard strong { max-width:250px; font-size:24px; line-height:1.55; }
  .nextPageCard small { font-size:11px; }
  .nextPageCard i { right:22px; bottom:24px; }

  footer { min-height:245px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:45px 24px; }
  footer nav { display:flex; flex-wrap:wrap; gap:17px 24px; }
  footer small { align-self:flex-start; }
  .mobileStickyCta { position:fixed; z-index:30; left:0; right:0; bottom:0; min-height:62px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; background:#d2bc87; color:#101612; font-size:13px; letter-spacing:.11em; box-shadow:0 -8px 30px rgba(9,13,11,.18); }
  .homePage .mobileStickyCta { background:#e2cc91; }
}

@media (max-width: 370px) {
  h1 { font-size:31px; }
  .heroContent { margin:0 18px; }
  .heroLead { font-size:15px; }
  .sectionPad,.uncertainty,.shiftSection,.hempContent { padding-left:20px; padding-right:20px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}

/* Hemp plaster page */
.hempPage{--forest:#f1e6d1;--forest-deep:#fbf5e9;--ivory:#fdfaf3;--paper:#fffefa;--gold:#c19b4c;--gold-light:#dec276;--line:rgba(169,130,56,.23);background:var(--paper)}
.hempPage .desktopNav .isCurrent{opacity:1}.hempPage .desktopNav .isCurrent::after{right:0}
.hempPageHero{position:relative;min-height:100svh;overflow:hidden;background:#fffdf8}
.hempPageHeroImage{position:absolute;inset:0;background:url('./assets/hemp-white-wall-v2.webp');background-position:center;background-size:cover;transform:scale(1.015)}
.hempPage .hempPageHeroImage{filter:brightness(1.12) saturate(.82) contrast(.95)}
.hempPageHeroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,253,247,.87) 40%,rgba(255,248,232,.05) 76%),linear-gradient(180deg,rgba(255,255,255,.22),transparent 55%,rgba(253,248,237,.3))}
.hempPageHeroCopy{position:relative;z-index:2;width:min(720px,76vw);margin-left:clamp(24px,9vw,140px);padding-top:clamp(130px,19vh,210px)}
.hempPageHeroCopy h1{font-size:clamp(50px,7vw,94px);line-height:1.28}.hempPageHeroCopy h1 em{color:#d9b65d;text-shadow:0 8px 34px rgba(211,170,77,.16)}
.hempPage .primaryButton{background:#c2a15a;box-shadow:0 14px 36px rgba(166,126,47,.18)}.hempPage .primaryButton:hover{background:#ad8b45}
.hempPageHeroCopy>p:not(.eyebrow){margin:32px 0 38px;font-family:"Yu Mincho",serif;font-size:clamp(16px,1.4vw,20px);line-height:2.15;letter-spacing:.06em}
.hempPageHeroNumber{position:absolute;z-index:1;right:clamp(20px,6vw,90px);bottom:-.13em;color:rgba(255,252,244,.45);font-family:Georgia,serif;font-size:min(30vw,430px);line-height:1}
.hempPageIndex{display:grid;grid-template-columns:repeat(3,1fr);background:#fffdf8;border-bottom:1px solid var(--line)}
.hempPageIndex>div{min-height:150px;display:flex;align-items:center;gap:26px;padding:28px clamp(24px,4vw,64px);border-right:1px solid var(--line)}.hempPageIndex>div:last-child{border-right:0}
.hempPageIndex span{color:var(--gold);font-family:Georgia,serif;font-size:14px}.hempPageIndex p{margin:0;font-family:Georgia,serif;font-size:16px;letter-spacing:.13em;line-height:1.5}.hempPageIndex small{display:block;margin-top:7px;color:#6d7069;font-family:"Yu Mincho",serif;font-size:12px;letter-spacing:.04em}
.materialIntro{position:relative;display:grid;grid-template-columns:.45fr 1.35fr .4fr;gap:clamp(30px,6vw,90px);overflow:hidden;padding:clamp(110px,13vw,195px) clamp(24px,8vw,130px);background:var(--ivory)}
.materialIntroLabel{display:flex;align-items:flex-start;gap:18px;padding-top:14px;color:#8d7648;font-size:9px;letter-spacing:.28em}.materialIntroLabel i{width:56px;height:1px;margin-top:6px;background:#b9a57a}
.materialIntroCopy h2,.qualityHeading h2,.materialTouchCopy h2,.stepsHeading h2,.faqHeading h2,.materialConsultInner h2{margin:0;font-weight:400;line-height:1.5}
.materialIntroCopy h2{font-size:clamp(42px,5.1vw,70px)}.materialIntroBody{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:68px;padding-top:35px;border-top:1px solid var(--line)}
.materialIntroBody p,.oneWallReasonBody p{margin:0;color:#555b56;font-family:"Yu Mincho",serif;font-size:15px;line-height:2.2}
.materialCircle{align-self:end;width:min(210px,18vw);aspect-ratio:1;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(157,128,70,.4);border-radius:50%;color:#806a3d;font-family:"Yu Mincho",serif;font-size:clamp(15px,1.5vw,21px)}.materialCircle i{width:15px;height:1px;background:#b9a57a}
.materialQualities{padding:clamp(100px,11vw,170px) clamp(24px,7vw,110px);background:#f5eddd}.qualityHeading{display:grid;grid-template-columns:.42fr 1.58fr;margin-bottom:82px}.qualityHeading h2{font-size:clamp(40px,4.8vw,67px)}
.qualityGrid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(91,75,47,.28);border-left:1px solid rgba(91,75,47,.28)}
.qualityCard{min-height:470px;display:flex;flex-direction:column;padding:40px clamp(24px,3vw,44px);border-right:1px solid rgba(91,75,47,.28);border-bottom:1px solid rgba(91,75,47,.28)}
.qualityNumber{color:#876e3f;font-family:Georgia,serif;font-size:15px}.qualityLabel{margin:10px 0 0;color:#8e7c5c;font-size:9px;letter-spacing:.28em}.qualityCard h3{margin:auto 0 28px;font-size:clamp(25px,2.3vw,34px);font-weight:400;line-height:1.65}.qualityCard>p:last-child{min-height:110px;margin:0;color:#5e625c;font-family:"Yu Mincho",serif;font-size:14px;line-height:2}
.materialTouch{display:grid;grid-template-columns:1fr 1fr;min-height:900px;background:#fffdfa}.materialTouchImage{min-height:760px;background:url('./assets/hemp-white-wall-v2.webp');background-position:center;background-size:cover}.hempPage .materialTouchImage{filter:brightness(1.1) saturate(.82) contrast(.95)}.materialTouchCopy{align-self:center;padding:90px clamp(34px,7vw,112px)}.materialTouchCopy h2{margin-bottom:38px;font-size:clamp(38px,4.5vw,63px)}
.materialTouchCopy>p:not(.eyebrow){color:#585e59;font-family:"Yu Mincho",serif;font-size:14px;line-height:2.2}.materialTouchLead{color:#2f2d27!important;font-size:clamp(18px,1.7vw,23px)!important}.materialTouchCopy blockquote{margin:48px 0 0;padding:30px 0 0;border-top:1px solid var(--line);color:#806a3d;font-size:clamp(20px,2vw,28px);line-height:1.9}
.oneWallReason{position:relative;min-height:820px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:120px 24px;text-align:center;background:radial-gradient(circle at 50% 46%,#fffef9 0%,#f7f0e3 49%,#eee2ce 100%)}.oneWallReason::before{content:"";position:absolute;width:min(680px,84vw);aspect-ratio:1;border:1px solid rgba(211,174,91,.28);border-radius:50%;box-shadow:0 0 130px rgba(205,167,78,.1),inset 0 0 100px rgba(224,195,127,.07)}.oneWallReason>*:not(.oneWallMark){position:relative;z-index:1}.oneWallReason h2{margin:0 0 54px;font-size:clamp(46px,6vw,82px);font-weight:400;line-height:1.5}.oneWallReason h2 em{color:#b18a3e;font-style:normal}
.oneWallReasonBody{width:min(820px,100%);display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:36px;border-top:1px solid rgba(83,69,43,.26);text-align:left}.oneWallMark{position:absolute;color:rgba(255,255,255,.24);font-family:Georgia,serif;line-height:.78;transform:translateY(8%)}.oneWallMark b{display:block;font-size:min(38vw,560px);font-weight:400}.oneWallMark span{display:block;text-align:center;font-size:min(8vw,110px);letter-spacing:.45em;transform:translateX(.22em)}
.materialSteps{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(50px,8vw,120px);padding:clamp(110px,12vw,180px) clamp(24px,8vw,130px);background:#fffdf8}.stepsHeading h2{margin-bottom:30px;font-size:clamp(40px,4.5vw,64px)}.stepsHeadingText{margin:0;color:#60655f;font-family:"Yu Mincho",serif;font-size:14px;line-height:2.1}.stepsDmLink{width:fit-content;display:flex;align-items:center;gap:46px;margin-top:34px;padding-bottom:10px;border-bottom:1px solid #8c7548;color:#705a31;font-size:12px;letter-spacing:.1em}.stepsList{border-top:1px solid var(--line)}
.stepRow{min-height:145px;display:grid;grid-template-columns:55px .65fr 1.2fr 22px;gap:25px;align-items:center;border-bottom:1px solid var(--line)}.stepRow>span{color:#907747;font-family:Georgia,serif;font-size:14px}.stepRow h3{margin:0;font-size:clamp(20px,1.8vw,27px);font-weight:400}.stepRow p{margin:0;color:#626761;font-family:"Yu Mincho",serif;font-size:13px;line-height:2}.stepRow i{color:#9a8150;font-style:normal;font-size:20px}
.materialFaq{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(50px,9vw,140px);padding:clamp(105px,11vw,165px) clamp(24px,8vw,130px);background:#fbf5e9}.faqHeading h2{font-size:clamp(40px,4.5vw,63px)}.faqList{border-top:1px solid rgba(95,77,45,.28)}.faqList details{border-bottom:1px solid rgba(95,77,45,.28)}
.faqList summary{min-height:112px;display:grid;grid-template-columns:50px 1fr 24px;gap:18px;align-items:center;cursor:pointer;list-style:none;font-family:"Yu Mincho",serif;font-size:17px}.faqList summary::-webkit-details-marker{display:none}.faqList summary span{color:#8d7445;font-family:Georgia,serif;font-size:13px}.faqList summary i{color:#8d7445;font-style:normal;font-size:22px;transition:transform .2s}.faqList details[open] summary i{transform:rotate(45deg)}.faqList details>p{margin:0;padding:0 42px 32px 68px;color:#5b605a;font-family:"Yu Mincho",serif;font-size:14px;line-height:2.1}
.materialConsult{position:relative;min-height:760px;display:grid;place-items:center;overflow:hidden;padding:110px 24px;background:radial-gradient(circle at 50% 45%,#fffef9,#f8efdd 62%,#eee0c5)}.consultOrb{position:absolute;width:min(650px,90vw);aspect-ratio:1;border:1px solid rgba(211,174,91,.35);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.72),rgba(255,250,235,.12) 60%,transparent 72%);box-shadow:0 0 145px rgba(205,167,78,.13),inset 0 0 100px rgba(224,195,127,.08);animation:futureGlow 6s ease-in-out infinite}.materialConsultInner{position:relative;z-index:1;width:min(760px,100%);text-align:center}.materialConsultInner h2{margin-bottom:32px;font-size:clamp(42px,5.2vw,72px)}.materialConsultInner>p:not(.eyebrow){color:#5e5b53;font-family:"Yu Mincho",serif;font-size:15px;line-height:2.15}.materialConsultInner .primaryButton{margin:48px auto 0;width:min(330px,100%)}
@media(max-width:720px){
.hempPageHeader{background:linear-gradient(180deg,rgba(255,255,255,.56),transparent)}.hempPageHeroImage{background-position:center}.hempPageHeroShade{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.38) 48%,rgba(250,250,247,.96))}.hempPageHeroCopy{width:auto;margin:0 22px;padding-top:clamp(185px,31svh,300px)}.hempPageHeroCopy h1{font-size:clamp(38px,11.5vw,48px);line-height:1.4}.hempPageHeroCopy>p:not(.eyebrow){margin:25px 0 30px;font-size:16px;line-height:2;letter-spacing:.03em}.hempPageHeroNumber{right:10px;bottom:36px;font-size:42vw}
.hempPageIndex{grid-template-columns:1fr;padding:8px 22px}.hempPageIndex>div{min-height:96px;padding:17px 0;border-right:0;border-bottom:1px solid var(--line)}.hempPageIndex>div:last-child{border-bottom:0}.hempPageIndex span{width:35px;font-size:15px}.hempPageIndex p{font-size:16px}.hempPageIndex small{font-size:13px}
.materialIntro{display:block;padding:92px 24px}.materialIntroLabel{margin-bottom:50px}.materialIntroCopy h2,.qualityHeading h2,.materialTouchCopy h2,.stepsHeading h2,.faqHeading h2{font-size:clamp(31px,8vw,35px);line-height:1.6}.materialIntroBody{display:block;margin-top:45px;padding-top:25px}.materialIntroBody p{margin-bottom:26px;font-size:15px}.materialCircle{width:180px;margin:44px auto 0;font-size:17px}
.materialQualities{padding:90px 24px}.qualityHeading{display:block;margin-bottom:48px}.qualityGrid{grid-template-columns:1fr}.qualityCard{min-height:390px;padding:32px 27px}.qualityCard h3{margin:auto 0 25px;font-size:27px}.qualityCard>p:last-child{min-height:auto;font-size:15px}
.materialTouch{display:flex;flex-direction:column;min-height:auto}.materialTouchImage{min-height:66svh}.materialTouchCopy{padding:82px 24px 92px}.materialTouchCopy>p:not(.eyebrow){font-size:15px}.materialTouchLead{font-size:18px!important}.materialTouchCopy blockquote{font-size:21px}
.oneWallReason{min-height:790px;padding:100px 24px}.oneWallReason h2{margin-bottom:44px;font-size:clamp(38px,10vw,44px)}.oneWallReasonBody{display:block;padding-top:28px}.oneWallReasonBody p{margin-bottom:27px;font-size:15px}.oneWallMark b{font-size:92vw}.oneWallMark span{font-size:19vw}
.materialSteps{display:block;padding:92px 24px}.stepsHeading{margin-bottom:52px}.stepsHeadingText{font-size:15px}.stepsDmLink{width:100%;justify-content:space-between;margin-top:30px;font-size:14px}.stepRow{min-height:178px;grid-template-columns:34px 1fr 18px;gap:12px;padding:25px 0}.stepRow>span{grid-column:1;grid-row:1/span 2;align-self:start;font-size:15px}.stepRow h3{grid-column:2;font-size:22px}.stepRow p{grid-column:2;font-size:14px}.stepRow i{grid-column:3;grid-row:1/span 2}
.materialFaq{display:block;padding:92px 24px}.faqHeading{margin-bottom:50px}.faqList summary{min-height:105px;grid-template-columns:35px 1fr 20px;gap:10px;font-size:16px;line-height:1.8}.faqList details>p{padding:0 4px 30px 45px;font-size:14px}
.materialConsult{min-height:720px;padding:100px 24px}.materialConsultInner h2{font-size:clamp(32px,8.4vw,36px)}.materialConsultInner>p:not(.eyebrow){font-size:15px}
}

.ingredientSection{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(50px,8vw,120px);padding:clamp(105px,12vw,180px) clamp(24px,8vw,130px);background:#fffdf8}
.ingredientHeading h2,.preparationIntro h2{margin:0;font-size:clamp(40px,4.6vw,65px);font-weight:400;line-height:1.55}
.ingredientHeading>p:last-child,.preparationIntro>p:last-child{margin-top:34px;color:#5c625c;font-family:"Yu Mincho",serif;font-size:15px;line-height:2.15}
.ingredientGrid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.ingredientGrid article{min-height:220px;padding:28px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.ingredientGrid article:last-child{grid-column:1/-1}
.ingredientGrid span{color:#947949;font-family:Georgia,serif;font-size:14px}.ingredientGrid h3{margin:35px 0 14px;font-size:clamp(22px,2vw,29px);font-weight:400}.ingredientGrid p{margin:0;color:#626761;font-family:"Yu Mincho",serif;font-size:13px;line-height:1.9}
.preparationGuide{padding:clamp(105px,11vw,165px) clamp(24px,8vw,130px);background:#f5eee2}
.preparationIntro{width:min(820px,100%);margin-bottom:70px}.preparationList{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(91,75,47,.25);border-left:1px solid rgba(91,75,47,.25)}
.preparationList article{min-height:330px;padding:30px 25px;border-right:1px solid rgba(91,75,47,.25);border-bottom:1px solid rgba(91,75,47,.25)}
.preparationList span{color:#8d7445;font-family:Georgia,serif;font-size:14px}.preparationList h3{margin:80px 0 18px;font-size:clamp(19px,1.7vw,25px);font-weight:400;line-height:1.6}.preparationList p{margin:0;color:#5d625c;font-family:"Yu Mincho",serif;font-size:13px;line-height:2}
.preparationNote{margin:25px 0 0;color:#716b60;font-family:"Yu Mincho",serif;font-size:12px;line-height:1.8}
@media(max-width:720px){
.ingredientSection{display:block;padding:92px 24px}.ingredientHeading{margin-bottom:52px}.ingredientHeading h2,.preparationIntro h2{font-size:clamp(31px,8vw,35px)}.ingredientHeading>p:last-child,.preparationIntro>p:last-child{font-size:15px}
.ingredientGrid{grid-template-columns:1fr}.ingredientGrid article,.ingredientGrid article:last-child{grid-column:auto;min-height:190px;padding:25px 24px}.ingredientGrid h3{margin:28px 0 12px;font-size:24px}.ingredientGrid p{font-size:14px}
.preparationGuide{padding:92px 24px}.preparationIntro{margin-bottom:50px}.preparationList{grid-template-columns:1fr}.preparationList article{min-height:auto;display:grid;grid-template-columns:35px 1fr;padding:28px 24px}.preparationList article div{grid-column:2}.preparationList h3{margin:0 0 12px;font-size:22px}.preparationList p{font-size:14px}.preparationNote{font-size:13px}
.hempPageHeroCopy h1{font-size:clamp(32px,8.7vw,36px)}
}

.productPurchase{padding:clamp(105px,12vw,180px) clamp(24px,8vw,130px);background:#fdf9f1}
.purchaseHeading{width:min(900px,100%);margin-bottom:70px}.purchaseHeading h2{margin:0;font-size:clamp(42px,5vw,70px);font-weight:400;line-height:1.5}.purchaseHeading>p:last-child{margin:28px 0 0;color:#5d625c;font-family:"Yu Mincho",serif;font-size:15px}
.productGrid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.productCard{padding:42px clamp(28px,4vw,54px);background:linear-gradient(145deg,#fff,#fbf4e5);border:1px solid rgba(169,130,56,.3);box-shadow:0 18px 45px rgba(144,106,35,.07)}
.productTop{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--line)}.productTop span{color:#887345;font-size:11px;letter-spacing:.14em}.productTop b{font-family:Georgia,serif;font-size:clamp(36px,4vw,56px);font-weight:400}
.productPrice{display:flex;align-items:baseline;gap:12px;margin:42px 0 24px;line-height:1}.productPrice strong{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(35px,4vw,56px);font-weight:400}.productPrice small{color:#756b59;font-size:11px}
.productCard>p:not(.productPrice){min-height:72px;margin:0;color:#575d57;font-family:"Yu Mincho",serif;font-size:15px;line-height:2}
.productSpecs{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.productSpecs span{padding:7px 10px;border:1px solid rgba(142,111,52,.3);color:#715e39;font-size:10px;letter-spacing:.08em}
.productBuyButton{width:100%;min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border:1px solid rgba(151,112,40,.32);background:#d7b866;color:#3f3522;font-family:inherit;font-size:14px;letter-spacing:.11em;box-shadow:0 12px 28px rgba(148,107,31,.12);transition:transform .25s,background .25s,box-shadow .25s}.productBuyButton:hover{transform:translateY(-3px);background:#caa751;box-shadow:0 18px 34px rgba(148,107,31,.2)}.productBuyButton i{font-style:normal}
.hempPage .mobileStickyCta{background:#e2cc91}
.hempNextPages{background:#fffefa}
.coverageNote{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:18px 34px;margin-top:38px;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.coverageNote strong{color:#826b3e;font-family:"Yu Mincho",serif;font-size:15px;font-weight:500}.coverageNote p{margin:0;color:#5d625c;font-family:"Yu Mincho",serif;font-size:13px;line-height:2}
.consultActions{display:flex;flex-direction:column;align-items:center;gap:24px;margin-top:48px}.consultActions .primaryButton{margin:0}.consultActions .instagramLink{font-size:13px}
@media(max-width:720px){
.productPurchase{padding:92px 24px}.purchaseHeading{margin-bottom:50px}.purchaseHeading h2{font-size:clamp(31px,8vw,35px)}.purchaseHeading>p:last-child{font-size:15px;line-height:2}
.productGrid{grid-template-columns:1fr}.productCard{padding:32px 24px}.productTop b{font-size:42px}.productPrice{margin:35px 0 22px}.productPrice strong{font-size:41px}.productCard>p:not(.productPrice){min-height:auto;font-size:15px}.productBuyButton{font-size:15px}
.coverageNote{grid-template-columns:1fr;gap:12px;margin-top:35px}.coverageNote strong{margin-top:12px;font-size:16px}.coverageNote p{font-size:14px}.consultActions{margin-top:42px}
}


/* Hemp plaster art page */
.artPage{--forest:#f1e6d1;--forest-deep:#fbf5e9;--ivory:#fdfaf3;--paper:#fffefa;--gold:#c19b4c;--gold-light:#dec276;--line:rgba(169,130,56,.23);background:var(--paper)}
.artPage .desktopNav .isCurrent{opacity:1}.artPage .desktopNav .isCurrent::after{right:0}
.artPageHero{position:relative;min-height:100svh;overflow:hidden;background:#fffdfa}
.artPageHeroImage{position:absolute;inset:0;background:url('./assets/hemp-art-hero.jpg') center/cover no-repeat;transform:scale(1.01);animation:heroIn 1.6s cubic-bezier(.2,.7,.2,1) both}
.artPageHeroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,254,250,.99) 0%,rgba(255,252,244,.94) 38%,rgba(255,248,231,.14) 69%),linear-gradient(180deg,rgba(255,255,255,.28),transparent 55%,rgba(249,239,217,.2))}
.artPageHeroCopy{position:relative;z-index:2;width:min(760px,78vw);margin-left:clamp(24px,9vw,140px);padding-top:clamp(112px,16vh,180px)}
.artPageHeroCopy h1{margin:0;font-size:clamp(47px,6vw,84px);line-height:1.35}.artPageHeroCopy h1 em{color:#d9b65d;font-style:normal;text-shadow:0 8px 34px rgba(211,170,77,.16)}
.artPageHeroCopy>p:not(.eyebrow){margin:30px 0 36px;font-family:"Yu Mincho",serif;font-size:clamp(16px,1.35vw,19px);line-height:2.1;letter-spacing:.06em}
.artPageHeroNumber{position:absolute;z-index:1;right:clamp(16px,5vw,78px);bottom:-.13em;color:rgba(255,251,241,.58);font-family:Georgia,serif;font-size:min(29vw,420px);line-height:1}
.artPage .primaryButton{background:#c2a15a;box-shadow:0 14px 36px rgba(166,126,47,.18)}.artPage .primaryButton:hover{background:#ad8b45}
.artBenefitRibbon{display:grid;grid-template-columns:repeat(3,1fr);background:#fffefa;border-bottom:1px solid var(--line)}
.artBenefitRibbon>div{min-height:150px;display:flex;align-items:center;gap:25px;padding:28px clamp(24px,4vw,64px);border-right:1px solid var(--line)}.artBenefitRibbon>div:last-child{border-right:0}
.artBenefitRibbon span{color:var(--gold);font-family:Georgia,serif;font-size:14px}.artBenefitRibbon p{margin:0}.artBenefitRibbon strong{display:block;font-family:"Yu Mincho",serif;font-size:17px;font-weight:400;line-height:1.6}.artBenefitRibbon small{display:block;margin-top:6px;color:#676b65;font-family:"Yu Mincho",serif;font-size:12px;line-height:1.65}
.rentalArt{display:grid;grid-template-columns:minmax(130px,.42fr) minmax(0,1.58fr);gap:0;padding:clamp(108px,12vw,180px) clamp(24px,8vw,130px);background:#fdf9f1}
.rentalArtLabel{display:flex;align-items:flex-start;gap:18px;padding-top:13px;color:#987d49;font-size:9px;letter-spacing:.27em}.rentalArtLabel i{width:55px;height:1px;margin-top:6px;background:#c4a967}
.rentalArtCopy{max-width:930px}.rentalArtCopy h2,.artValuesHeading h2,.artWorksCopy h2{margin:0;font-size:clamp(40px,5vw,69px);font-weight:400;line-height:1.5}
.rentalArtLead{margin:56px 0 20px!important;color:#312f29!important;font-size:clamp(18px,1.6vw,22px)!important}.rentalArtCopy>p:last-child{width:min(670px,100%);margin:0;color:#5b605a;font-family:"Yu Mincho",serif;font-size:15px;line-height:2.2}
.rentalBenefits{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);margin-top:76px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.rentalBenefits article{min-height:330px;padding:34px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.42)}
.rentalBenefits span,.artValuesGrid span{color:var(--gold);font-family:Georgia,serif;font-size:14px}.rentalBenefits h3{margin:84px 0 18px;font-size:clamp(20px,1.8vw,27px);font-weight:400;line-height:1.6}.rentalBenefits p{margin:0;color:#626761;font-family:"Yu Mincho",serif;font-size:13px;line-height:2}
.artTexture{display:grid;grid-template-columns:1.08fr .92fr;min-height:900px;background:#fffefa}.artTextureImage{min-height:760px;background:url('./assets/hemp-art-hero.jpg') 73% center/cover no-repeat}.artTextureCopy{align-self:center;padding:90px clamp(34px,7vw,112px)}
.artTextureCopy h2{margin:0 0 38px;font-size:clamp(39px,4.7vw,66px);font-weight:400;line-height:1.5}.artTextureCopy>p:not(.eyebrow){color:#5b605a;font-family:"Yu Mincho",serif;font-size:14px;line-height:2.2}.artTextureLead{color:#302e28!important;font-size:clamp(18px,1.7vw,23px)!important}.artTextureCopy blockquote{margin:48px 0 0;padding:30px 0 0;border-top:1px solid var(--line);color:#9a7938;font-size:clamp(20px,2vw,28px);line-height:1.9}
.artValues{padding:clamp(105px,11vw,165px) clamp(24px,8vw,130px);background:#f4ead8}.artValuesHeading{display:grid;grid-template-columns:.4fr 1.6fr;margin-bottom:76px}.artValuesHeading h2{font-size:clamp(40px,4.7vw,65px)}
.artValuesGrid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(116,88,39,.26);border-left:1px solid rgba(116,88,39,.26)}.artValuesGrid article{min-height:390px;display:flex;flex-direction:column;padding:36px clamp(25px,3vw,42px);border-right:1px solid rgba(116,88,39,.26);border-bottom:1px solid rgba(116,88,39,.26)}.artValuesGrid h3{margin:auto 0 24px;font-size:clamp(24px,2.2vw,32px);font-weight:400}.artValuesGrid p{min-height:88px;margin:0;color:#5d625c;font-family:"Yu Mincho",serif;font-size:14px;line-height:2}
.artWorks{display:grid;grid-template-columns:1.12fr .88fr;min-height:860px;background:#fffefa}.artWorksVisual{min-height:720px;background:url('./assets/hemp-art-hero.jpg') 63% center/cover no-repeat;filter:brightness(1.04) saturate(.9)}.artWorksCopy{align-self:center;padding:90px clamp(34px,7vw,105px)}.artWorksCopy h2{font-size:clamp(38px,4.4vw,61px)}.artWorksCopy>p{margin:38px 0;color:#5b605a;font-family:"Yu Mincho",serif;font-size:15px;line-height:2.2}.artWorksCopy .primaryButton{margin-top:36px}.artWorksCopy>small{display:block;margin-top:22px;color:#7a7469;font-family:"Yu Mincho",serif;font-size:11px;line-height:1.8}
.artVoice{position:relative;min-height:790px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:110px 24px;text-align:center;background:radial-gradient(circle at 50% 44%,#fffef9,#f8efde 61%,#eddebf)}.artVoiceOrb{position:absolute;width:min(680px,90vw);aspect-ratio:1;border:1px solid rgba(211,174,91,.34);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.7),rgba(255,250,235,.12) 60%,transparent 72%);box-shadow:0 0 145px rgba(205,167,78,.13),inset 0 0 100px rgba(224,195,127,.08);animation:futureGlow 6s ease-in-out infinite}.artVoice>*:not(.artVoiceOrb){position:relative;z-index:1}.artVoice blockquote{margin:22px 0 36px;font-size:clamp(28px,3.5vw,49px);font-weight:400;line-height:1.8;letter-spacing:.03em}.artVoice>p:last-child{margin:0;color:#5c605a;font-family:"Yu Mincho",serif;font-size:14px;line-height:2.1}
.artPage .mobileStickyCta{background:#e2cc91}.artNextPages{background:#fffefa}
@media(max-width:720px){
.artPageHeroImage{background-position:69% center}.artPageHeroShade{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,253,247,.32) 42%,rgba(253,248,237,.97) 78%)}.artPageHeroCopy{width:auto;margin:0 22px;padding-top:clamp(130px,22svh,205px)}.artPageHeroCopy h1{font-size:clamp(31px,8.3vw,35px);line-height:1.5}.artPageHeroCopy>p:not(.eyebrow){margin:23px 0 28px;font-size:15px;line-height:1.95}.artPageHeroNumber{right:8px;bottom:34px;font-size:42vw}
.artBenefitRibbon{grid-template-columns:1fr;padding:8px 22px}.artBenefitRibbon>div{min-height:102px;padding:18px 0;border-right:0;border-bottom:1px solid var(--line)}.artBenefitRibbon>div:last-child{border-bottom:0}.artBenefitRibbon span{width:35px;font-size:15px}.artBenefitRibbon strong{font-size:16px}.artBenefitRibbon small{font-size:13px}
.rentalArt{display:block;padding:92px 24px}.rentalArtLabel{margin-bottom:48px}.rentalArtCopy h2,.artValuesHeading h2,.artWorksCopy h2{font-size:clamp(30px,7.8vw,34px);line-height:1.6}.rentalArtLead{margin-top:40px!important;font-size:18px!important}.rentalArtCopy>p:last-child{font-size:15px}.rentalBenefits{display:block;margin-top:50px}.rentalBenefits article{min-height:280px;padding:29px 25px}.rentalBenefits h3{margin:65px 0 16px;font-size:23px}.rentalBenefits p{font-size:14px}
.artTexture{display:flex;flex-direction:column;min-height:auto}.artTextureImage{min-height:67svh;background-position:73% center}.artTextureCopy{padding:82px 24px 92px}.artTextureCopy h2{font-size:clamp(31px,8vw,35px)}.artTextureCopy>p:not(.eyebrow){font-size:15px}.artTextureLead{font-size:18px!important}.artTextureCopy blockquote{font-size:21px}
.artValues{padding:92px 24px}.artValuesHeading{display:block;margin-bottom:48px}.artValuesGrid{grid-template-columns:1fr}.artValuesGrid article{min-height:315px;padding:30px 26px}.artValuesGrid h3{margin:auto 0 20px;font-size:26px}.artValuesGrid p{min-height:auto;font-size:14px}
.artWorks{display:flex;flex-direction:column;min-height:auto}.artWorksVisual{min-height:65svh;background-position:64% center}.artWorksCopy{padding:82px 24px 92px}.artWorksCopy>p{font-size:15px}.artWorksCopy .primaryButton{width:100%}.artWorksCopy>small{font-size:12px}
.artVoice{min-height:760px;padding:100px 24px}.artVoice blockquote{font-size:clamp(22px,5.9vw,26px);line-height:1.9}.artVoice>p:last-child{font-size:14px}
}
