@font-face { font-family: "Cormorant Garamond"; src: url('../fonts/cormorant-garamond-600.ttf') format('truetype'); font-display: swap; font-style: normal; font-weight: 600; }
@font-face { font-family: "Cormorant Garamond"; src: url('../fonts/cormorant-garamond-700.ttf') format('truetype'); font-display: swap; font-style: normal; font-weight: 700; }
@font-face { font-family: Inter; src: url('../fonts/inter-400.ttf') format('truetype'); font-display: swap; font-style: normal; font-weight: 400; }
@font-face { font-family: Inter; src: url('../fonts/inter-500.ttf') format('truetype'); font-display: swap; font-style: normal; font-weight: 500; }
@font-face { font-family: Inter; src: url('../fonts/inter-600.ttf') format('truetype'); font-display: swap; font-style: normal; font-weight: 600; }
@font-face { font-family: Inter; src: url('../fonts/inter-700.ttf') format('truetype'); font-display: swap; font-style: normal; font-weight: 700; }

:root {
  --paper: #f1f1ef; --card: #f8f8f6; --white: #fff; --ink: #0b0b0a;
  --muted: #686865; --line: #d9d9d4; --acid: #c8f56b; --red: #e74257;
  --max: 1460px; --pad: clamp(18px, 4vw, 68px); --radius: 24px;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink); background: var(--paper); font-synthesis: none;
}
* { box-sizing: border-box; }
html { overflow-x: clip; scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100vh; overflow-x: clip; background: var(--paper); -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid #8db933; outline-offset: 3px; }
.app-shell { min-height: 100vh; overflow: clip; }
.age-gate-open { overflow: hidden; }
.age-gate[hidden] { display: none; }
.age-gate { position: fixed; z-index: 1000; inset: 0; padding: 24px; display: grid; place-items: center; }
.age-gate__backdrop { position: absolute; inset: 0; background: rgb(8 8 7 / 82%); backdrop-filter: blur(8px); }
.age-gate__dialog { position: relative; width: min(660px, 100%); max-height: calc(100vh - 48px); padding: clamp(28px, 5vw, 58px); overflow: auto; border: 1px solid #ddd7ca; border-radius: 28px; background: #f8f7f2; box-shadow: 0 30px 90px #0008; text-align: center; }
.age-gate__languages { width: max-content; margin: 0 auto 8px; padding: 4px; display: flex; gap: 3px; border: 1px solid #d8d1c3; border-radius: 99px; background: #fff; }
.age-gate__languages a { min-width: 86px; padding: 8px 14px; border-radius: 99px; color: #4f4d47; font-size: 12px; font-weight: 800; text-decoration: none; }
.age-gate__languages a[aria-current="true"] { background: #111; color: #fff; }
.age-gate__logo { width: 150px; height: 150px; margin: -28px auto -4px; display: block; object-fit: contain; }
.age-gate__wordmark { margin: 0 0 25px; font: 700 42px "Cormorant Garamond", Georgia, serif; }
.age-gate__eyebrow { margin: 0 0 10px; color: #8d672c; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.age-gate h2 { margin: 0; font: 700 clamp(36px, 5vw, 54px)/.98 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; }
.age-gate__question > p:not(.age-gate__eyebrow), .age-gate__denied p { margin: 18px 0 24px; color: var(--muted); font-size: 18px; line-height: 1.5; }
.age-gate__remember { width: max-content; max-width: 100%; margin: 0 auto 28px; display: flex; align-items: center; gap: 11px; color: #393936; font-size: 13px; text-align: left; cursor: pointer; }
.age-gate__remember input { width: 20px; height: 20px; margin: 0; accent-color: #111; }
.age-gate__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.age-gate__actions button, .age-gate__denied a { min-height: 54px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #111; border-radius: 99px; font-size: 13px; font-weight: 800; text-decoration: none; cursor: pointer; }
.age-gate__accept { background: #111; color: #fff; }
.age-gate__decline { background: transparent; color: #111; }
.age-gate__denied a { background: #111; color: #fff; }

.promo-bar { height: 38px; overflow: hidden; border-bottom: 1px solid #c9c9c6; background: #e9e9e6; text-transform: uppercase; }
.promo-runner { width: max-content; height: 100%; display: flex; align-items: center; gap: clamp(50px, 8vw, 150px); animation: marquee 34s linear infinite; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.promo-runner span::before { content: "✦"; margin-right: 12px; }
@keyframes marquee { to { transform: translateX(-50%); } }
.site-navigation-shell { position: sticky; z-index: 40; top: 0; border-bottom: 1px solid rgb(201 201 198 / 78%); background: rgb(243 243 240 / 94%); box-shadow: 0 8px 24px rgb(17 17 17 / 5%); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.site-header { width: min(var(--max), 100%); height: 80px; margin: auto; padding: 0 var(--pad); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
.admin-bar .site-navigation-shell { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-navigation-shell { top: 46px; } }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) { .site-navigation-shell { background: #f3f3f0; } }
.brand { width: max-content; padding: 0; border: 0; background: none; font: 700 clamp(28px, 2.5vw, 42px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; cursor: pointer; }
.brand-logo { width: 66px; height: 66px; display: block; object-fit: contain; }
.desktop-nav { position: relative; display: flex; align-items: center; gap: clamp(20px, 2.2vw, 38px); }
.desktop-nav button { padding: 8px 0; display: flex; align-items: center; gap: 5px; border: 0; border-bottom: 1px solid transparent; background: none; font-size: 14px; cursor: pointer; }
.desktop-nav button:hover, .desktop-nav button.active { border-bottom-color: var(--ink); }
.header-actions { justify-self: end; display: flex; gap: 11px; align-items: center; }
.language-switch { min-width: 38px; height: 32px; padding: 0 10px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #b8b3a8; border-radius: 99px; color: var(--ink); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-decoration: none; }
.language-switch:hover, .language-switch:focus-visible { border-color: #111; background: #111; color: #fff; }
.icon-control { width: 38px; height: 38px; padding: 0; display: grid; place-items: center; border: 0; background: transparent; cursor: pointer; }
.cart-icon { position: relative; }
.cart-icon span { position: absolute; top: 0; right: -1px; min-width: 17px; height: 17px; padding: 0 4px; display: grid; place-items: center; border-radius: 99px; background: var(--ink); color: #fff; font-size: 9px; font-weight: 700; }
.menu-icon { display: none; }
.mobile-menu { margin: -8px 16px 16px; padding: 10px; display: none; border-radius: 14px; background: #fff; box-shadow: 0 15px 40px #0001; }
.mobile-menu button { width: 100%; padding: 14px 10px; border: 0; border-bottom: 1px solid var(--line); background: transparent; text-align: left; }

main:not(.checkout-page):not(.success-page) { padding: 0 var(--pad); }
.home-main > .hero,
.home-main > .benefits,
.home-main > .product-section,
.home-main > .journey-section,
.home-main > .packing-video-section,
.home-main > .trust-section,
.home-main > .reviews { width: min(var(--max), 100%); margin-inline: auto; }
.hero { position: relative; aspect-ratio: 2.25; min-height: 470px; margin-bottom: 18px; overflow: hidden; border-radius: 28px; background: #fff url('../images/home-hero-v3-real-products.webp') center 56% / cover no-repeat; }
.hero::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, rgb(255 255 255 / 48%) 0%, transparent 48%); pointer-events: none; }
.hero-copy { position: relative; z-index: 1; width: min(1120px, 92%); margin: 4.5% auto 0; text-align: center; }
.hero-kicker-row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.hero-copy p { grid-column: 2; margin: 0; font-size: clamp(18px, 1.65vw, 27px); font-weight: 400; letter-spacing: .01em; }
.hero-copy p strong { font-family: "Cormorant Garamond", Georgia, serif; }
.hero-rotator { display: flex; align-items: baseline; justify-content: center; gap: .3em; white-space: nowrap; }
.hero-rotator__words { min-width: 13.5em; display: inline-grid; color: #6b4a1e; font-weight: 700; text-align: left; }
.hero-rotator__words > span { grid-area: 1 / 1; opacity: 0; transform: translateY(.45em); animation: hero-word-play 15s cubic-bezier(.2, .7, .2, 1) infinite; }
.hero-rotator__words > span:nth-child(2) { animation-delay: 3s; }
.hero-rotator__words > span:nth-child(3) { animation-delay: 6s; }
.hero-rotator__words > span:nth-child(4) { animation-delay: 9s; }
.hero-rotator__words > span:nth-child(5) { animation-delay: 12s; }
@keyframes hero-word-play {
  0% { opacity: 0; transform: translateY(.45em); }
  4%, 16% { opacity: 1; transform: translateY(0); }
  20%, 100% { opacity: 0; transform: translateY(-.45em); }
}
.hero-kicker-row .outline-button { grid-column: 3; min-width: 122px; min-height: 44px; padding: 0 20px; justify-self: end; justify-content: center; border-color: #111; background: #111; color: #fff; font-size: 12px; white-space: nowrap; }
.hero-kicker-row .outline-button .dashicons { width: 16px; height: 16px; font-size: 16px; }
.hero h1 { max-width: 1050px; margin: 13px auto 0; font: 700 clamp(44px, 4.8vw, 74px)/.96 "Cormorant Garamond", Georgia, serif; letter-spacing: -.045em; }
.outline-button { min-height: 52px; padding: 0 27px; display: inline-flex; align-items: center; gap: 12px; border: 1.5px solid var(--ink); border-radius: 99px; background: #fff; color: var(--ink); font-weight: 650; text-decoration: none; cursor: pointer; transition: .2s; }
.outline-button:hover { background: var(--ink); color: #fff; }
.benefits { margin-bottom: 110px; padding: 26px clamp(22px, 4vw, 70px); display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border-radius: 18px; background: #fff; }
.benefits article { min-height: 64px; padding: 0 30px; display: flex; justify-content: center; align-items: center; gap: 17px; }
.benefits article + article { border-left: 1px solid var(--line); }
.benefits h3 { margin: 0 0 5px; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; }
.benefits p { margin: 0; color: var(--muted); font-size: 12px; }

.product-section, .story-section, .packing-video-section, .trust-section, .recommended { width: min(var(--max), 100%); margin: 0 auto 120px; }
.journey-section { margin-bottom: 94px; }
.section-title { margin-bottom: 42px; text-align: center; }
.section-title p, .shop-intro p, .product-story p, .trust-heading p { margin: 0 0 12px; color: var(--muted); font-size: 11px; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; }
.section-title h2, .story-section h2, .trust-heading h2, .recommended h2, .product-story h2, .faq h2 { margin: 0; font: 700 clamp(40px, 4.4vw, 64px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; }
.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(14px, 2vw, 30px); }
.product-card { min-width: 0; }
.product-image-wrap { position: relative; }
.product-image { position: relative; width: 100%; aspect-ratio: 1; padding: 0; overflow: hidden; border: 0; border-radius: 22px; background: #f7f7f5; cursor: pointer; }
.product-image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .35s ease; }
.product-image:hover img { transform: scale(1.025); }
.quick-add { position: absolute; right: 14px; bottom: 14px; padding: 10px 13px; display: flex; align-items: center; gap: 6px; border-radius: 99px; background: #fff; box-shadow: 0 7px 25px #0002; font-size: 11px; font-weight: 750; opacity: 0; transform: translateY(10px); transition: .2s; }
.product-image:hover .quick-add { opacity: 1; transform: none; }
.product-line { margin: 12px 0 9px; display: flex; align-items: center; justify-content: space-between; }
.pill { padding: 5px 9px; border-radius: 4px; background: #111; color: #fff; font-size: 10px; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.rating { padding: 4px 7px; display: flex; align-items: center; gap: 3px; border: 1px solid var(--line); border-radius: 4px; font-size: 10px; }
.rating svg, .stars, .detail-rating span { color: #f5c900; }
.product-name { width: 100%; max-width: 100%; min-height: 46px; padding: 0; display: block; border: 0; background: none; color: #30302d; font-size: clamp(16px, 1.2vw, 19px); font-weight: 700; line-height: 1.35; text-align: left; white-space: normal; cursor: pointer; }
.product-name:hover { color: #8d672c; }
.product-price { margin-top: 7px; font-size: 18px; }
.product-price del { margin-right: 4px; color: #777; font-size: 14px; }
.localsmokes-comparison-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 5px 7px; }
.localsmokes-comparison-price del { color: #8a8882; }
.localsmokes-comparison-price ins { color: #171715; font-weight: 750; text-decoration: none; }
.localsmokes-discount-badge { position: absolute; z-index: 2; top: 12px; left: 12px; padding: 6px 9px; border-radius: 5px; background: #ece5d8; color: #684817; box-shadow: 0 4px 14px rgb(0 0 0 / 10%); font-size: 12px; font-weight: 800; letter-spacing: .04em; line-height: 1; text-transform: uppercase; }
.localsmokes-merch-rating { padding: 5px 7px; display: inline-flex; align-items: center; gap: 4px; border: 1px solid var(--line); border-radius: 4px; color: #6b604c; font-size: 11px; font-weight: 750; }
.localsmokes-merch-rating__stars { display: inline-flex; align-items: center; gap: 0; color: #d5a000; }
.localsmokes-merch-rating__stars .dashicons { width: 13px; height: 13px; font-size: 13px; line-height: 1; }
.woocommerce div.product .summary .localsmokes-merch-rating { margin: 0 0 16px; padding: 7px 9px; font-size: 11px; }
.woocommerce div.product .summary .localsmokes-merch-rating__stars .dashicons { width: 15px; height: 15px; font-size: 15px; }
.wide-button { width: min(620px, 100%); min-height: 62px; margin: 62px auto 0; display: flex; justify-content: center; align-items: center; gap: 12px; border: 0; border-radius: 9px; background: var(--ink); color: #fff; font: 700 25px "Cormorant Garamond", Georgia, serif; text-decoration: none; cursor: pointer; }

.reviews { margin-bottom: 130px; padding: clamp(27px, 4vw, 54px); overflow: hidden; border-radius: 28px; background: #0b0b0b; color: #fff; box-shadow: 0 14px 30px #0002; }
.reviews-head { padding-bottom: 30px; display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; border-bottom: 1px solid #555; }
.reviews-head > div > span { color: #a7a7a7; font-size: 10px; font-weight: 750; letter-spacing: .14em; }
.reviews-head h2 { max-width: 660px; margin: 10px 0 0; font: 700 clamp(28px, 3.4vw, 48px)/1.05 "Cormorant Garamond", Georgia, serif; }
.reviews-head p { max-width: 330px; margin: 0; color: #aaa; font-size: 12px; line-height: 1.55; text-align: right; }
.review-carousel { position: relative; }
.review-grid { margin: 0; padding: 35px 2px 23px; display: flex; gap: 18px; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; scroll-padding-inline: 2px; overscroll-behavior-inline: contain; scrollbar-width: none; }
.review-grid::-webkit-scrollbar { display: none; }
.review-grid .review-card { flex: 0 0 calc((100% - 18px) / 2); min-width: 0; min-height: 330px; padding: clamp(22px, 2.5vw, 32px); display: flex; flex-direction: column; scroll-snap-align: start; border: 1px solid #2c2c2c; border-radius: 19px; background: linear-gradient(145deg, #171717, #111); box-shadow: 0 12px 30px rgb(0 0 0 / 22%); }
.review-grid article + article { border-left: 1px solid #2c2c2c; }
.review-meta { display: flex; justify-content: space-between; color: #888; font-size: 11px; }
.review-card__content { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: clamp(18px, 2.3vw, 28px); }
.review-card--with-photo .review-card__content { grid-template-columns: minmax(0, 1fr) clamp(112px, 11vw, 148px); }
.review-card__body { min-width: 0; }
.review-card__photo { width: 100%; aspect-ratio: .9; margin: 0; overflow: hidden; align-self: start; justify-self: end; border: 1px solid #383838; border-radius: 13px; background: #222; }
.review-card__photo img { width: 100%; height: 100%; display: block; object-fit: cover; }
.review-grid h3 { margin: 18px 0 0; color: #d3d3d0; font: 700 13px/1.35 Inter, Arial, sans-serif; }
.review-card__quote { max-width: 29ch; margin: 18px 0 0; color: #f1f1ee; font: 600 clamp(23px, 2.2vw, 31px)/1.18 "Cormorant Garamond", Georgia, serif; letter-spacing: -.01em; }
.review-card__person { margin-top: auto; padding-top: 18px; display: flex; align-items: center; gap: 13px; border-top: 1px solid #2e2e2e; }
.review-card__person > div { display: grid; gap: 3px; }
.review-card__person strong { color: #eee; font-size: 11px; }
.review-card__person span { color: #8f8f8f; font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.review-controls { display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.review-controls button { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid #4b4b4b; border-radius: 50%; background: #181818; color: #fff; cursor: pointer; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.review-controls button:hover, .review-controls button:focus-visible { border-color: #b88c4c; background: #29231a; transform: translateY(-1px); }
.review-controls button .dashicons { width: 18px; height: 18px; font-size: 18px; }
.review-controls > span { min-width: 44px; color: #aaa; font-size: 11px; text-align: center; }
.review-carousel.is-static .review-controls { display: none; }
.verified { margin-top: 18px; display: flex; align-items: center; gap: 8px; color: #aaa; font-size: 11px; }
.stars { display: inline-flex; gap: 1px; }
.stars .dashicons { width: 15px; height: 15px; font-size: 15px; }

.story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.story-grid article { position: relative; min-height: 460px; padding: clamp(25px, 3vw, 48px); overflow: hidden; display: grid; grid-template-columns: 1fr 1.05fr; align-items: end; gap: 25px; border-radius: 24px; background: #e4dbc9; }
.story-grid article:nth-child(2) { background: #dbe4dc; }
.story-grid article > span { position: absolute; top: 30px; left: 35px; font: 700 13px "Cormorant Garamond", Georgia, serif; }
.story-grid h3 { margin: 0 0 13px; font: 700 clamp(28px, 3vw, 40px)/1 "Cormorant Garamond", Georgia, serif; }
.story-grid p { color: #50504c; font-size: 13px; line-height: 1.6; }
.story-grid a { width: max-content; padding: 0; display: flex; align-items: center; gap: 8px; border: 0; border-bottom: 1px solid; background: transparent; color: var(--ink); font-size: 12px; font-weight: 700; text-decoration: none; cursor: pointer; }
.story-grid img { width: 100%; height: 265px; object-fit: cover; border-radius: 16px; }
.journey-list { display: grid; gap: 18px; }
.journey-card { min-height: 286px; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; border-radius: 22px; background: #eadcc7; }
.journey-card--reverse .journey-copy { order: 2; }
.journey-copy { padding: clamp(28px, 4vw, 50px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.journey-copy > span { margin-bottom: 18px; color: #746f66; font: 700 11px "Cormorant Garamond", Georgia, serif; }
.journey-copy h3 { margin: 0 0 13px; font: 700 clamp(29px, 3vw, 42px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.035em; }
.journey-copy p { max-width: 520px; margin: 0 0 20px; color: #55514b; font-size: 13px; line-height: 1.62; }
.journey-copy a { display: inline-flex; align-items: center; gap: 8px; border-bottom: 1px solid currentColor; color: var(--ink); font-size: 12px; font-weight: 750; text-decoration: none; }
.journey-copy a .dashicons { width: 16px; height: 16px; font-size: 16px; }
.journey-card > img { width: 100%; height: 286px; min-height: 0; display: block; object-fit: cover; }
.journey-card:nth-child(2) { background: #dfe5df; }
.journey-card:nth-child(3) { background: #e5e2d9; }
.packing-video-section { padding: clamp(24px, 4vw, 56px); display: grid; grid-template-columns: .72fr 1.28fr; align-items: center; gap: clamp(30px, 5vw, 80px); border-radius: 26px; background: #10100f; color: #fff; }
.packing-video-copy p { margin: 0 0 13px; color: #aaa; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.packing-video-copy h2 { margin: 0 0 20px; font: 700 clamp(38px, 4vw, 60px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; }
.packing-video-copy > span { color: #aaa; font-size: 13px; line-height: 1.7; }
.packing-video-media { position: relative; min-height: 390px; overflow: hidden; border-radius: 18px; background: #242422; }
.packing-video-media > img, .packing-video-media video, .packing-video-media .wp-video { width: 100% !important; height: 100%; min-height: 390px; display: block; object-fit: cover; }
.packing-video-media > img { opacity: .58; }
.packing-video-placeholder { position: absolute; inset: 0; display: grid; place-content: center; gap: 13px; text-align: center; }
.packing-video-placeholder .dashicons { width: 42px; height: 42px; margin: auto; font-size: 42px; }
.packing-video-placeholder strong { font: 700 20px "Cormorant Garamond", Georgia, serif; }
.trust-section { padding: 62px clamp(25px, 5vw, 80px); display: grid; grid-template-columns: .8fr 1.2fr; gap: 72px; border-radius: 26px; background: #e6e6e2; }
.trust-heading h2 { font-size: clamp(39px, 4.4vw, 61px); }
.trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px 50px; }
.trust-grid article { border-top: 1px solid #aaa; padding-top: 20px; }
.trust-grid article > .dashicons { width: 27px; height: 27px; font-size: 27px; }
.trust-grid h3 { margin: 15px 0 8px; font: 700 20px "Cormorant Garamond", Georgia, serif; }
.trust-grid p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.newsletter { margin: 0 calc(var(--pad) * -1); padding: 65px max(var(--pad), calc((100vw - var(--max)) / 2 + var(--pad))); display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 50px; border-top: 1px solid var(--line); background: #f8f8f6; }
.newsletter p { margin: 0 0 8px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.newsletter h2 { margin: 0; font: 700 clamp(30px, 3vw, 44px)/1 "Cormorant Garamond", Georgia, serif; }
.newsletter form { display: grid; grid-template-columns: 1fr auto; }
.newsletter input { min-width: 0; height: 56px; padding: 0 18px; border: 1px solid var(--line); border-radius: 9px 0 0 9px; background: #fff; }
.newsletter button { min-width: 160px; display: flex; justify-content: center; align-items: center; gap: 8px; border: 0; border-radius: 0 9px 9px 0; background: #111; color: #fff; font-weight: 700; cursor: pointer; }

.site-footer { width: 100%; margin: 0; padding: 75px max(var(--pad), calc((100vw - var(--max)) / 2 + var(--pad))) 30px; background: #0a0a09; color: #fff; }
.footer-top { display: grid; grid-template-columns: 2fr repeat(3, 1fr); gap: 60px; }
.footer-brand-column { min-width: 0; }
.footer-brand-details > p { margin-top: 12px; }
.footer-brand { color: #fff; font-size: 35px; }
.footer-logo { width: 116px; height: 116px; display: block; object-fit: contain; filter: drop-shadow(0 5px 18px rgb(210 145 45 / 18%)); }
.footer-top p { color: #999; font-size: 12px; }
.footer-address { max-width: 240px; margin-top: 18px; display: grid; gap: 5px; color: #aaa; font-size: 12px; font-style: normal; line-height: 1.55; }
.footer-address strong { color: #fff; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.footer-top h3 { margin: 3px 0 18px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.footer-top div > button:not(.brand) { margin: 10px 0; padding: 0; display: block; border: 0; background: transparent; color: #aaa; font-size: 12px; cursor: pointer; }
.footer-top div > button:hover { color: #fff; }
.footer-payments { display: grid; justify-items: end; gap: 7px; }
.footer-payments > strong { color: #fff; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.footer-payment-brands { display: flex; align-items: center; gap: 8px; }
.footer-payment-brands img { width: auto; height: 34px; display: block; }
.footer-payment-brands .footer-payment-brand--interac { border-radius: 5px; }
.footer-support-links { display: block; }
.footer-bottom { margin-top: 60px; padding-top: 18px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: end; gap: 18px 32px; border-top: 1px solid #333; color: #777; font-size: 10px; }
.footer-legal { text-align: center; }

.shop-page { padding-top: 40px !important; }
.shop-intro { width: min(var(--max), 100%); margin: 0 auto 60px; text-align: center; }
.shop-intro h1 { margin: 0 0 17px; font: 700 clamp(48px, 6vw, 88px)/.94 "Cormorant Garamond", Georgia, serif; letter-spacing: -.05em; }
.shop-intro span { color: var(--muted); }
.shop-toolbar { width: min(var(--max), 100%); margin: 0 auto 35px; padding: 20px 0; display: flex; justify-content: space-between; align-items: center; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.filters { display: flex; gap: 9px; flex-wrap: wrap; }
.filters button { min-height: 36px; padding: 0 15px; border: 1px solid var(--line); border-radius: 99px; background: transparent; font-size: 11px; cursor: pointer; }
.filters button.active { border-color: var(--ink); background: var(--ink); color: #fff; }
.shop-toolbar p { color: var(--muted); font-size: 11px; }
.shop-grid { width: min(var(--max), 100%); margin: 0 auto 130px; row-gap: 55px; }

.product-page { padding-top: 20px !important; }
.back-link { width: min(var(--max), 100%); margin: 0 auto 20px; padding: 0; display: flex; align-items: center; gap: 7px; border: 0; background: transparent; color: var(--muted); font-size: 12px; cursor: pointer; }
.product-detail { width: min(var(--max), 100%); margin: 0 auto 130px; display: grid; grid-template-columns: 1.08fr .92fr; gap: clamp(45px, 7vw, 110px); }
.detail-image { aspect-ratio: 1; overflow: hidden; border-radius: 26px; background: #f8f8f6; }
.detail-image img { width: 100%; height: 100%; object-fit: cover; }
.detail-copy { padding-top: 14px; }
.detail-rating { color: var(--muted); font-size: 11px; }
.detail-copy h1 { max-width: 650px; margin: 18px 0 8px; font: 700 clamp(42px, 5vw, 68px)/.95 "Cormorant Garamond", Georgia, serif; letter-spacing: -.045em; }
.detail-price { margin: 0 0 22px; font-size: 20px; font-weight: 700; }
.detail-blurb { max-width: 560px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.shipping-note { width: max-content; margin: 21px 0 30px; padding: 9px 12px; display: flex; align-items: center; gap: 8px; border-radius: 6px; background: var(--acid); font-size: 10px; font-weight: 750; }
.detail-copy fieldset { padding: 0; border: 0; }
.detail-copy legend { margin-bottom: 11px; font-size: 12px; font-weight: 700; }
.format-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.format-options button { min-height: 52px; padding: 0 16px; display: flex; justify-content: space-between; align-items: center; border: 1px solid var(--line); border-radius: 99px; background: #fff; font-size: 11px; cursor: pointer; }
.format-options button.active { border: 2px solid var(--ink); }
.quantity-row { height: 54px; margin-top: 14px; padding: 0 8px 0 17px; display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--line); border-radius: 8px; font-size: 12px; }
.quantity-row > div, .cart-qty { display: flex; align-items: center; gap: 7px; }
.quantity-row button, .cart-qty button { width: 32px; height: 32px; padding: 0; display: grid; place-items: center; border: 0; border-radius: 50%; background: #e7e7e4; cursor: pointer; }
.quantity-row svg, .cart-qty svg { width: 14px; }
.add-button { width: 100%; min-height: 58px; margin-top: 14px; display: flex; align-items: center; justify-content: center; gap: 7px; border: 0; border-radius: 8px; background: #0b0b0a; color: #fff; font-size: 12px; font-weight: 800; text-transform: uppercase; cursor: pointer; }
.add-button:hover { background: #2c2c2b; }
.stock { display: flex; align-items: center; gap: 7px; font-size: 10px; }
.stock span { width: 6px; height: 6px; border-radius: 50%; background: #69b500; }
.detail-points { margin-top: 28px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.detail-points span { padding: 20px 12px; display: flex; flex-direction: column; align-items: center; gap: 7px; color: var(--muted); font-size: 9px; text-align: center; }
.detail-points span + span { border-left: 1px solid var(--line); }
.product-story { width: min(1220px, 100%); margin: 0 auto 120px; padding: 28px; display: grid; grid-template-columns: 1fr 1.1fr; align-items: center; gap: 70px; border-radius: 26px; background: #fff; }
.product-story > div { padding: 30px; }
.product-story h2 { margin-bottom: 20px; font-size: clamp(38px, 4vw, 57px); }
.product-story span { color: var(--muted); font-size: 13px; line-height: 1.7; }
.product-story img { width: 100%; height: 370px; object-fit: cover; border-radius: 18px; }
.faq { width: min(1100px, 100%); margin: 0 auto 130px; }
.faq h2 { margin-bottom: 30px; text-align: center; font-size: 48px; }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { padding: 20px 5px; display: flex; justify-content: space-between; align-items: center; list-style: none; font-size: 13px; font-weight: 700; cursor: pointer; }
.faq details p { margin: 0; padding: 0 5px 20px; color: var(--muted); font-size: 12px; }

.drawer-shell { position: fixed; z-index: 100; inset: 0; pointer-events: none; visibility: hidden; }
.drawer-shell.open { pointer-events: auto; visibility: visible; }
.drawer-scrim { position: absolute; inset: 0; border: 0; background: rgb(0 0 0 / 65%); opacity: 0; transition: .25s; }
.open .drawer-scrim { opacity: 1; }
.cart-drawer { position: absolute; right: 0; top: 0; width: min(510px, 100%); height: 100%; display: grid; grid-template-rows: auto auto 1fr auto; background: #fff; transform: translateX(100%); transition: .3s ease; }
.open .cart-drawer { transform: none; }
.cart-drawer > header { height: 78px; padding: 0 25px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.cart-drawer h2 { margin: 0; font: 700 31px "Cormorant Garamond", Georgia, serif; }
.cart-drawer header button, .cart-item-end button { padding: 5px; border: 0; background: transparent; cursor: pointer; }
.shipping-progress { padding: 18px 25px; border-bottom: 1px solid var(--line); }
.shipping-progress p { margin: 0 0 10px; font-size: 11px; }
.shipping-progress > span { height: 5px; display: block; border-radius: 99px; background: #e4e4e1; }
.shipping-progress i { height: 100%; display: block; border-radius: inherit; background: #111; }
.cart-items { padding: 4px 25px; overflow: auto; }
.cart-items article { padding: 20px 0; display: grid; grid-template-columns: 85px 1fr auto; gap: 14px; border-bottom: 1px solid var(--line); }
.cart-items article > img { width: 85px; height: 85px; object-fit: cover; border-radius: 10px; background: var(--paper); }
.cart-items h3 { margin: 3px 0 5px; font-size: 13px; }
.cart-items p { margin: 0 0 10px; color: var(--muted); font-size: 10px; }
.cart-qty { gap: 0; }
.cart-qty button { width: 24px; height: 24px; border: 1px solid var(--line); border-radius: 0; background: #fff; }
.cart-qty span { width: 28px; text-align: center; font-size: 11px; }
.cart-item-end { display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; font-size: 12px; }
.cart-drawer > footer { padding: 23px 25px; border-top: 1px solid var(--line); }
.cart-drawer > footer > div { margin-bottom: 15px; display: flex; justify-content: space-between; font-size: 13px; }
.cart-drawer > footer > button { width: 100%; min-height: 54px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 0; border-radius: 8px; background: #111; color: #fff; font-weight: 700; cursor: pointer; }
.cart-drawer > footer small { margin-top: 10px; display: block; color: var(--muted); text-align: center; }
.empty-cart { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.empty-cart h3 { font: 700 26px "Cormorant Garamond", Georgia, serif; }
.empty-cart button { padding: 12px 25px; border: 0; border-radius: 99px; background: #111; color: #fff; cursor: pointer; }

.search-modal { position: fixed; z-index: 110; inset: 0; display: grid; place-items: start center; }
.search-scrim { position: absolute; inset: 0; border: 0; background: rgb(0 0 0 / 58%); }
.search-panel { position: relative; width: min(720px, calc(100% - 32px)); margin-top: 9vh; overflow: hidden; border-radius: 20px; background: #fff; box-shadow: 0 30px 100px #0006; }
.search-panel header { height: 70px; padding: 0 20px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; border-bottom: 1px solid var(--line); }
.search-panel header input { height: 100%; border: 0; outline: 0; font-size: 18px; }
.search-panel header button { border: 0; background: transparent; cursor: pointer; }
.search-panel > div { padding: 10px 20px 20px; }
.search-panel > div > button { width: 100%; padding: 10px 0; display: grid; grid-template-columns: 64px 1fr auto; align-items: center; gap: 13px; border: 0; border-bottom: 1px solid var(--line); background: #fff; text-align: left; cursor: pointer; }
.search-panel img { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; }
.search-panel span { font-weight: 700; }
.search-panel small { margin-top: 5px; display: block; color: var(--muted); font-weight: 400; }

.checkout-page { min-height: 100vh; background: #fff; }
.checkout-brand { margin: 38px 0 22px max(25px, calc((100vw - 1120px) / 2)); border: 0; background: transparent; font: 700 38px "Cormorant Garamond", Georgia, serif; cursor: pointer; }
.checkout-code { width: min(660px, calc(100% - 40px)); margin: 0 auto 34px; padding: 17px; border: 1px solid #222; border-radius: 9px; text-align: center; font-size: 13px; }
.checkout-page > form { width: min(1120px, calc(100% - 40px)); margin: auto; display: grid; grid-template-columns: 1.17fr .83fr; }
.checkout-fields { padding: 30px 55px 50px 0; border-right: 1px solid var(--line); }
.checkout-fields section { margin-bottom: 26px; }
.checkout-fields h1, .checkout-fields h2 { margin: 0 0 8px; font-size: 24px; font-weight: 450; }
.checkout-fields p { margin: 0 0 10px; color: var(--muted); font-size: 11px; }
.checkout-fields p button { padding: 0; border: 0; background: transparent; text-decoration: underline; cursor: pointer; }
.checkout-fields input, .checkout-fields select { width: 100%; height: 48px; margin-top: 10px; padding: 0 13px; border: 1px solid var(--line); border-radius: 6px; background: #fff; }
.two-fields, .three-fields { display: grid; gap: 10px; }
.two-fields { grid-template-columns: 1fr 1fr; }
.three-fields { grid-template-columns: 1fr 1fr 1fr; }
.choice-row { min-height: 50px; padding: 0 14px; display: flex; justify-content: space-between; align-items: center; border: 1px solid var(--line); border-radius: 6px; font-size: 12px; }
.choice-row span { display: flex; align-items: center; gap: 9px; }
.choice-row i { width: 15px; height: 15px; display: block; border: 4px solid #111; border-radius: 50%; }
.secure { display: flex; align-items: center; gap: 6px; }
.payment-box { border: 1px solid var(--line); border-radius: 6px; overflow: hidden; }
.payment-box header { padding: 13px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--line); }
.payment-box header strong { padding: 4px 6px; border-radius: 3px; background: #f8b800; font-size: 9px; }
.payment-box p { margin: 0; padding: 16px; background: #f4f4f3; line-height: 1.6; }
.return-cart { padding: 0; display: flex; align-items: center; gap: 7px; border: 0; background: transparent; font-size: 12px; cursor: pointer; }
.checkout-button { width: 100%; height: 55px; margin-top: 10px; border: 0; border-radius: 6px; background: #333; color: #fff; cursor: pointer; }
.checkout-button:disabled { background: #aaa; }
.order-summary { padding: 35px 0 50px 40px; }
.order-summary > h2 { margin: 0 0 25px; font-size: 14px; }
.order-summary article { margin-bottom: 18px; display: grid; grid-template-columns: 58px 1fr auto; align-items: center; gap: 12px; font-size: 11px; }
.summary-image { position: relative; }
.summary-image img { width: 58px; height: 58px; object-fit: cover; border: 1px solid var(--line); border-radius: 8px; }
.summary-image span { position: absolute; top: -7px; right: -7px; width: 19px; height: 19px; display: grid; place-items: center; border-radius: 50%; background: #777; color: #fff; font-size: 9px; }
.order-summary article small { margin-top: 4px; display: block; color: var(--muted); }
.promo-code { margin: 28px 0 20px; display: grid; grid-template-columns: 1fr 105px; gap: 10px; }
.promo-code input { height: 46px; padding: 0 12px; border: 1px solid var(--line); border-radius: 6px; }
.promo-code button { border: 0; border-radius: 6px; background: #ccc; color: #fff; }
.order-summary dl { margin: 0; font-size: 12px; }
.order-summary dl div { padding: 7px 0; display: flex; justify-content: space-between; }
.order-summary dt, .order-summary dd { margin: 0; }
.order-summary .total { margin-top: 8px; padding-top: 14px; border-top: 1px solid #333; font-size: 16px; font-weight: 750; }
.checkout-copyright { margin: 30px 0 0; padding: 20px; color: var(--muted); text-align: center; font-size: 10px; }
.success-page { min-height: 100vh; padding: 40px; display: grid; place-items: center; background: #efefec; text-align: center; }
.success-page > div { width: min(650px, 100%); padding: 70px 50px; border-radius: 30px; background: #fff; }
.success-page svg { color: #89b93b; }
.success-page p { margin-top: 20px; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.success-page h1 { margin: 12px 0; font: 700 54px/.95 "Cormorant Garamond", Georgia, serif; }
.success-page span { color: var(--muted); line-height: 1.6; }
.success-page button { margin-top: 30px; padding: 14px 30px; border: 0; border-radius: 99px; background: #111; color: #fff; cursor: pointer; }

@media (max-width: 980px) {
  .site-header { height: 72px; grid-template-columns: 1fr auto; }
  .desktop-nav, .account-icon { display: none; }
  .menu-icon { display: grid; }
  .mobile-menu { max-height: calc(100dvh - 84px); display: block; overflow-y: auto; overscroll-behavior: contain; }
  .hero { min-height: 500px; aspect-ratio: 1.5; background-position: center bottom; }
  .hero-copy { margin-top: 6%; }
  .hero-kicker-row { grid-template-columns: 1fr auto; }
  .hero-kicker-row p { grid-column: 1; justify-self: start; }
  .hero-kicker-row .outline-button { grid-column: 2; }
  .benefits { margin-bottom: 80px; }
  .benefits article { padding: 0 16px; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 45px; }
  .review-grid .review-card { flex-basis: calc((100% - 18px) / 2); }
  .story-grid { grid-template-columns: 1fr; }
  .story-grid article { min-height: 400px; }
  .journey-card { grid-template-columns: .9fr 1.1fr; }
  .packing-video-section { grid-template-columns: 1fr; }
  .trust-section { grid-template-columns: 1fr; gap: 55px; }
  .newsletter { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .product-detail { grid-template-columns: 1fr; }
  .detail-image { max-height: 680px; }
  .checkout-page > form { grid-template-columns: 1fr; }
  .checkout-fields { padding-right: 0; border-right: 0; }
  .order-summary { padding-left: 0; border-top: 1px solid var(--line); }
}

@media (max-width: 640px) {
  :root { --pad: 16px; }
  .promo-bar { height: 32px; }
  .promo-runner { font-size: 8px; }
  .site-header { height: 64px; padding: 0 16px; }
  .brand { font-size: 27px; }
  .brand-logo { width: 50px; height: 50px; }
	.mobile-menu { max-height: calc(100dvh - 76px); }
  .header-actions { gap: 0; }
  .icon-control { width: 34px; }
  .hero { min-height: 0; aspect-ratio: 1 / 1.05; margin-bottom: 12px; border-radius: 18px; background: #fff url('../images/home-hero-mobile-v2.webp') center bottom / cover no-repeat; }
  .hero::after { background: linear-gradient(#fff9 0%, transparent 42%); }
  .hero-copy { width: calc(100% - 30px); margin-top: 6%; }
  .hero-kicker-row { gap: 10px; }
  .hero-copy p { font-size: 13px; text-align: left; }
  .hero-rotator { display: grid; gap: 3px; white-space: normal; }
  .hero-rotator__words { min-width: 0; min-height: 2.4em; display: grid; line-height: 1.15; text-align: left; }
  .hero-kicker-row .outline-button { min-width: 112px; min-height: 39px; padding-inline: 14px; font-size: 10px; }
  .hero h1 { margin: 12px auto 0; max-width: 360px; font-size: 35px; }
  .outline-button { min-height: 43px; padding: 0 19px; font-size: 12px; }
  .benefits { margin-bottom: 16px; padding: 4px 16px; grid-template-columns: 1fr; }
  .benefits article { min-height: 0; padding: 9px 0; justify-content: flex-start; }
  .benefits article + article { border-top: 1px solid var(--line); border-left: 0; }
  .section-title { margin-bottom: 14px; }
  .section-title h2 { font-size: 42px; }
  .product-grid { gap: 32px 12px; }
  .product-image { border-radius: 14px; }
  .quick-add { right: 8px; bottom: 8px; padding: 8px; font-size: 0; opacity: 1; transform: none; }
  .product-name { min-height: 44px; font-size: 15px; }
  .wide-button { margin-top: 24px; font-size: 21px; }
  .product-section, .story-section, .journey-section, .packing-video-section, .trust-section, .recommended { margin-bottom: 16px; }
  .reviews { margin-bottom: 16px; padding: 18px 16px; border-radius: 18px; }
  .reviews-head { padding-bottom: 16px; display: block; }
  .reviews-head p { margin-top: 10px; text-align: left; }
  .review-grid { margin-right: -4px; padding: 16px 0 12px; }
  .review-grid .review-card { flex-basis: min(92%, 360px); min-height: 340px; padding: 22px; }
  .review-card--with-photo .review-card__content { grid-template-columns: minmax(0, 1fr) 76px; gap: 14px; }
  .review-card__quote { font-size: 25px; }
  .review-controls { justify-content: flex-start; }
  .story-grid article { min-height: auto; padding: 70px 22px 22px; grid-template-columns: 1fr; }
  .story-grid img { height: 220px; }
  .journey-list { gap: 8px; }
  .journey-card { min-height: 0; grid-template-columns: 1fr; }
  .journey-card--reverse .journey-copy { order: 0; }
  .journey-copy { padding: 18px 16px; }
  .journey-copy > span { margin-bottom: 9px; }
  .journey-copy h3 { font-size: 34px; }
  .journey-card > img { height: 220px; min-height: 0; }
  .packing-video-section { padding: 16px; }
  .packing-video-media, .packing-video-media > img, .packing-video-media video, .packing-video-media .wp-video { min-height: 260px; }
  .trust-section { padding: 24px 16px; gap: 18px; }
  .trust-grid { grid-template-columns: 1fr; gap: 10px; }
  .trust-grid article { padding-top: 10px; }
  .trust-grid h3 { margin: 10px 0 6px; }
  .newsletter { padding-block: 28px; gap: 20px; }
  .newsletter form { grid-template-columns: 1fr; }
  .newsletter input, .newsletter button { border-radius: 8px; }
  .newsletter button { min-height: 52px; margin-top: 8px; }
  .site-footer { padding-block: 36px 22px; }
  .footer-top { grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: 22px 20px; }
  .footer-brand-column { grid-column: 1 / -1; display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: start; gap: 14px; }
  .footer-logo { width: 76px; height: 76px; }
  .footer-brand-details > p { margin: 1px 0 5px; }
  .footer-address { margin-top: 9px; }
  .footer-payment-brands img { height: 28px; }
  .footer-nav h3 { margin-bottom: 10px; }
  .footer-top .footer-nav a { margin: 7px 0; }
  .footer-nav--support { grid-column: 1 / -1; }
  .footer-support-links { display: flex; flex-wrap: wrap; gap: 7px 16px; }
  .footer-top .footer-support-links a { margin: 0; }
  .footer-bottom { margin-top: 30px; grid-template-columns: minmax(0, 1fr) auto; gap: 5px 18px; line-height: 1.6; }
  .footer-copyright { grid-column: 1; grid-row: 1; }
  .footer-legal { grid-column: 1; grid-row: 2; max-width: 230px; text-align: left; }
  .footer-payments { grid-column: 2; grid-row: 1 / span 2; align-self: end; }
  .age-gate { padding: 12px; }
  .age-gate__dialog { max-height: calc(100vh - 24px); padding: 26px 20px; border-radius: 20px; }
  .age-gate__logo { width: 116px; height: 116px; margin-top: -20px; }
  .age-gate__question > p:not(.age-gate__eyebrow), .age-gate__denied p { font-size: 16px; }
  .age-gate__actions { grid-template-columns: 1fr; }
  .shop-intro h1 { font-size: 52px; }
  .shop-toolbar { align-items: flex-end; }
  .filters { flex-wrap: nowrap; max-width: calc(100vw - 90px); overflow-x: auto; padding-bottom: 5px; }
  .filters button { flex: 0 0 auto; }
  .product-detail { gap: 32px; margin-bottom: 80px; }
  .detail-copy h1 { font-size: 43px; }
  .format-options { grid-template-columns: 1fr; }
  .detail-points { grid-template-columns: 1fr; }
  .detail-points span { flex-direction: row; justify-content: center; }
  .detail-points span + span { border-top: 1px solid var(--line); border-left: 0; }
  .product-story { padding: 18px; grid-template-columns: 1fr; gap: 10px; }
  .product-story > div { padding: 20px 8px; }
  .product-story img { height: 250px; }
  .faq h2 { font-size: 39px; }
  .cart-drawer { width: 100%; }
  .search-panel { margin-top: 20px; }
  .checkout-brand { margin: 25px 20px 20px; }
  .checkout-code { margin-bottom: 10px; }
  .checkout-page > form { width: calc(100% - 32px); }
  .two-fields, .three-fields { grid-template-columns: 1fr; gap: 0; }
  .checkout-fields { padding-top: 20px; }
  .order-summary { order: -1; }
  .success-page { padding: 16px; }
  .success-page > div { padding: 50px 25px; }
  .success-page h1 { font-size: 43px; }
}

@media (prefers-reduced-motion: reduce) {
  html, .review-grid { scroll-behavior: auto; }
  .promo-runner { animation: none; }
  .hero-rotator__words > span { display: none; animation: none; opacity: 1; transform: none; }
  .hero-rotator__words > span:first-child { display: block; }
  * { transition-duration: .01ms !important; }
}

/* WordPress and WooCommerce integration */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { z-index: 9999; top: 8px; left: 8px; width: auto; height: auto; padding: 12px 18px; clip: auto; background: #fff; color: #111; }
.overlay-open { overflow: hidden; }
.site-header .brand, .site-footer .brand { text-decoration: none; }
.site-header .brand { color: var(--ink); }
.site-footer .brand { color: #fff; }
.desktop-nav .menu, .mobile-menu .menu { margin: 0; padding: 0; display: contents; list-style: none; }
.desktop-nav a { padding: 8px 0; border-bottom: 1px solid transparent; color: inherit; font-size: 14px; text-decoration: none; }
.desktop-nav a:hover, .desktop-nav .current-menu-item > a { border-bottom-color: var(--ink); }
.header-actions a { color: inherit; text-decoration: none; }
.header-actions .icon-control > .dashicons { width: 22px; height: 22px; font-size: 22px; line-height: 1; }
.cart-toggle { position: relative; }
.cart-toggle .cart-count { position: absolute; top: 1px; right: -1px; min-width: 17px; height: 17px; padding: 0 4px; display: grid; place-items: center; border-radius: 99px; background: var(--ink); color: #fff; font-size: 9px; font-weight: 700; }
.cart-close .dashicons { width: 24px; height: 24px; font-size: 24px; }
.mobile-menu ul { margin: 0; padding: 0; list-style: none; }
.mobile-menu a { padding: 14px 10px; display: block; border-bottom: 1px solid var(--line); color: inherit; text-decoration: none; }
.mobile-menu[hidden], .search-modal[hidden], .drawer-shell[hidden] { display: none; }
.search-panel { width: min(760px, calc(100% - 32px)); padding: 0; border: 1px solid rgb(255 255 255 / 45%); border-radius: 22px; }
.product-search-form { display: block; }
.product-search-form__intro { min-height: 92px; padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--line); }
.product-search-form__intro > div { min-width: 0; }
.product-search-form__intro span { display: block; color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.product-search-form__intro strong { margin-top: 5px; display: block; font: 700 clamp(27px, 4vw, 35px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.025em; }
.product-search-form .search-close { width: 42px; min-width: 42px; height: 42px; padding: 0; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: #fff; color: #111; cursor: pointer; }
.product-search-form .search-close .dashicons { width: 22px; height: 22px; font-size: 22px; line-height: 1; }
.product-search-form__controls { min-height: 64px; margin: 22px 24px 24px; padding: 5px 5px 5px 17px; display: grid; grid-template-columns: 23px minmax(0, 1fr) auto; align-items: center; gap: 10px; border: 1px solid #cfcfca; border-radius: 14px; background: #f7f7f4; box-shadow: inset 0 1px 0 rgb(255 255 255 / 70%); }
.product-search-form__controls > .dashicons { width: 21px; height: 21px; color: #565652; font-size: 21px; }
.product-search-form__controls input { min-width: 0; height: 52px; padding: 0; border: 0; outline: 0; background: transparent; color: #111; font-size: 15px; }
.product-search-form__controls input::placeholder { color: #777773; opacity: 1; }
.product-search-form__controls button { min-width: 126px; height: 52px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; border: 0; border-radius: 10px; background: #111; color: #fff; font-size: 12px; font-weight: 700; cursor: pointer; }
.product-search-form__controls button:hover { background: #2c2c2a; }
.product-search-form__controls button .dashicons { width: 16px; height: 16px; font-size: 16px; }
.cart-drawer { grid-template-rows: auto 1fr; }
.localsmokes-mini-cart-content { height: 100%; padding: 0 27px 28px; overflow: auto; display: flex; flex-direction: column; }
.woocommerce-mini-cart { margin: 0; padding: 0; list-style: none; }
.woocommerce-mini-cart-item { position: relative; min-height: 138px; padding: 24px 36px 24px 0 !important; border-bottom: 1px solid var(--line); }
.woocommerce-mini-cart-item .localsmokes-mini-cart__row,
.woocommerce-mini-cart-item .localsmokes-mini-cart__product { min-width: 0; display: grid !important; grid-template-columns: 94px minmax(0, 1fr) !important; align-items: center; gap: 17px; color: inherit; text-decoration: none; }
.localsmokes-mini-cart__image { width: 94px; height: 94px; display: block; overflow: hidden; border-radius: 13px; background: #f3f3f0; }
.woocommerce-mini-cart-item .localsmokes-mini-cart__image img { position: static; width: 100% !important; height: 100% !important; display: block; object-fit: contain; mix-blend-mode: multiply; }
.localsmokes-mini-cart__details { min-width: 0; display: block; }
.localsmokes-mini-cart__name,
.localsmokes-mini-cart__details > strong { display: block; color: inherit; font-size: 14px; font-weight: 700; line-height: 1.3; text-decoration: none; }
.localsmokes-mini-cart__details .variation { margin: 8px 0 10px; display: grid; grid-template-columns: auto 1fr; gap: 3px 7px; color: var(--muted); font-size: 10px; line-height: 1.4; }
.localsmokes-mini-cart__details .variation dt,
.localsmokes-mini-cart__details .variation dd,
.localsmokes-mini-cart__details .variation p { margin: 0; padding: 0; }
.localsmokes-mini-cart__quantity-row { margin-top: 10px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.localsmokes-mini-cart__quantity { height: 32px; overflow: hidden; display: inline-grid; grid-template-columns: 32px 30px 32px; align-items: center; border: 1px solid #d7d7d2; border-radius: 9px; background: #fff; }
.localsmokes-mini-cart__qty-button { width: 32px; height: 32px; padding: 0; display: grid; place-items: center; border: 0; background: #fff; color: #111; font-size: 16px; line-height: 1; cursor: pointer; }
.localsmokes-mini-cart__qty-button:hover:not(:disabled) { background: #efefeb; }
.localsmokes-mini-cart__qty-button:disabled { color: #aaa; cursor: not-allowed; }
.localsmokes-mini-cart__quantity input { min-width: 0; width: 30px; height: 30px; padding: 0; border: 0; outline: 0; background: transparent; color: #222; font-size: 11px; font-weight: 750; text-align: center; appearance: textfield; }
.localsmokes-mini-cart__quantity input::-webkit-inner-spin-button, .localsmokes-mini-cart__quantity input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.localsmokes-mini-cart__quantity.is-busy { opacity: .55; }
.localsmokes-mini-cart__subtotal { color: #363633; font-size: 11px; font-weight: 650; white-space: nowrap; }
.localsmokes-mini-cart__pricing { display: grid; justify-items: end; gap: 3px; }
.localsmokes-mini-cart__item-savings { color: #684817; font-size: 10px; font-weight: 750; white-space: nowrap; }
.woocommerce-mini-cart-item .remove { position: static; z-index: 2; width: 32px; height: 32px; padding: 0; display: grid; place-items: center; flex: 0 0 32px; border: 1px solid #d7d7d2; border-radius: 9px; background: #fff; color: #555 !important; line-height: 1; text-align: center; text-decoration: none; }
.woocommerce-mini-cart-item .remove svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.woocommerce-mini-cart-item .remove:hover { border-color: #111; background: #111; color: #fff !important; }
.woocommerce-mini-cart__total { margin: auto 0 0; padding: 25px 0 18px; display: flex; justify-content: space-between; border-top: 0; font-size: 14px; }
.woocommerce-mini-cart__total strong { font-weight: 700; }
.localsmokes-mini-cart__savings { margin: -12px 0 18px; padding: 10px 12px; display: flex; justify-content: space-between; border-radius: 8px; background: #ece5d8; color: #684817; font-size: 12px; }
.localsmokes-mini-cart__savings strong { font-weight: 750; }
.localsmokes-cart-savings th, .localsmokes-cart-savings td { color: #684817; font-weight: 750; }
.woocommerce-mini-cart__buttons { margin: 0; display: grid; grid-template-columns: 1fr 1.25fr; gap: 9px; }
.woocommerce-mini-cart__buttons a { min-height: 52px; padding: 0 17px; display: grid; place-items: center; border: 1px solid #111; border-radius: 10px; background: #111; color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; }
.woocommerce-mini-cart__buttons a:first-child { background: #fff; color: #111; }
.woocommerce-mini-cart__buttons a:hover { background: #2c2c2a; color: #fff; }
.woocommerce-mini-cart__empty-message { height: 100%; margin: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.woocommerce-mini-cart__empty-message > .dashicons { width: 34px; height: 34px; margin-bottom: 17px; color: #4d4d49; font-size: 34px; }
.woocommerce-mini-cart__empty-message strong { font: 700 30px/1 "Cormorant Garamond", Georgia, serif; }
.woocommerce-mini-cart__empty-message p { max-width: 260px; margin: 12px 0 20px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.woocommerce-mini-cart__empty-message a { min-height: 48px; padding: 0 22px; display: inline-flex; align-items: center; border-radius: 9px; background: #111; color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; }
.localsmokes-shipping-progress { margin: 18px 0 2px; padding: 15px 16px; border: 1px solid #d7d7d1; border-radius: 12px; background: #f7f7f4; }
.localsmokes-shipping-progress p { margin: 0 0 10px; color: #4b4b47; font-size: 12px; line-height: 1.45; }
.localsmokes-shipping-progress strong { color: #111; }
.localsmokes-shipping-progress progress { width: 100%; height: 7px; display: block; overflow: hidden; border: 0; border-radius: 99px; background: #deded9; color: #b88c4c; }
.localsmokes-shipping-progress progress::-webkit-progress-bar { background: #deded9; }
.localsmokes-shipping-progress progress::-webkit-progress-value { background: #b88c4c; }
.localsmokes-shipping-progress progress::-moz-progress-bar { background: #b88c4c; }
.woocommerce-cart .localsmokes-shipping-progress { max-width: 1180px; margin: 0 auto 24px; }
.home-main { padding: 0 var(--pad); }
.content-main, .commerce-main { width: min(var(--max), calc(100% - (var(--pad) * 2))); margin: 30px auto 100px; }
.content-card { max-width: 900px; margin: auto; padding: clamp(25px, 5vw, 70px); border-radius: 24px; background: #fff; }
.content-card h1 { font: 700 clamp(42px, 5vw, 68px)/1 "Cormorant Garamond", Georgia, serif; }
.content-card a { color: inherit; }
.woocommerce-checkout .content-main { width: min(1180px, calc(100% - (var(--pad) * 2))); }
.woocommerce-checkout .content-card { max-width: none; padding: clamp(28px, 4vw, 54px); }
.woocommerce-checkout .content-card > h1 { margin: 0 0 42px; }
.footer-top a:not(.brand) { margin: 10px 0; display: block; color: #aaa; font-size: 12px; text-decoration: none; }
.footer-top a:hover { color: #fff; }

/* About page: adapted from the supplied editorial structure using Local Smokes facts only. */
.about-main { padding-bottom: 110px !important; }
.about-main > section { width: min(var(--max), 100%); margin-inline: auto; }
.about-hero { min-height: 610px; margin-bottom: 105px; overflow: hidden; display: grid; grid-template-columns: .9fr 1.1fr; align-items: stretch; border-radius: 28px; background: #10100f; color: #fff; }
.about-hero__copy { padding: clamp(42px, 6vw, 92px); display: flex; flex-direction: column; justify-content: center; }
.about-hero__copy > p, .about-intro > p, .about-values__heading > p, .about-cta p { margin: 0 0 14px; color: #aaa; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.about-hero h1 { max-width: 700px; margin: 0 0 25px; font: 700 clamp(48px, 5.4vw, 78px)/.94 "Cormorant Garamond", Georgia, serif; letter-spacing: -.048em; }
.about-hero__copy > span { max-width: 560px; color: #bbb; font-size: 14px; line-height: 1.75; }
.about-hero > img { width: 100%; height: 100%; min-height: 610px; display: block; object-fit: cover; object-position: 50% 62%; }
.about-intro { margin-bottom: 90px; display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(36px, 7vw, 110px); }
.about-intro > p { grid-column: 1 / -1; margin-bottom: -12px; color: var(--muted); }
.about-intro h2 { margin: 0; font: 700 clamp(40px, 4.3vw, 62px)/.98 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; }
.about-intro > div { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.about-intro > div p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.8; }
.about-intro > div .about-intro__lead { grid-column: 1 / -1; color: #30302d; font-size: 16px; line-height: 1.55; }
.about-story-list { margin-bottom: 100px; display: grid; gap: 20px; }
.about-story-list article { min-height: 390px; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; border-radius: 24px; background: #e8ddcb; }
.about-story-list article:nth-child(2) { background: #dfe5df; }
.about-story-list article:nth-child(3) { background: #e7e4dc; }
.about-story-list article > div { padding: clamp(34px, 5vw, 68px); display: flex; flex-direction: column; justify-content: center; }
.about-story-list article > div > span { margin-bottom: 25px; color: #747169; font: 700 12px "Cormorant Garamond", Georgia, serif; }
.about-story-list article > div > .about-story__note { margin: 8px 0 0; color: #716e67; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.about-story-list h2 { margin: 0 0 18px; font: 700 clamp(34px, 3.6vw, 52px)/.98 "Cormorant Garamond", Georgia, serif; letter-spacing: -.038em; }
.about-story-list h2 ~ p { max-width: 600px; margin: 0 0 13px; color: #56534e; font-size: 13px; line-height: 1.72; }
.about-story-list h2 ~ p:last-child { margin-bottom: 0; }
.about-story-list h2 + p strong { color: #272622; font-size: 14px; }
.about-story-list article > img { width: 100%; height: 100%; min-height: 390px; display: block; object-fit: cover; }
.about-story--reverse > div { order: 2; }
.about-values { margin-bottom: 90px; padding: clamp(44px, 6vw, 82px); border-radius: 26px; background: #e7e7e3; }
.about-values__heading { max-width: 760px; margin-bottom: 54px; }
.about-values__heading > p { color: var(--muted); }
.about-values__heading h2 { margin: 0; font: 700 clamp(42px, 4.5vw, 62px)/.98 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; }
.about-values__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 36px; }
.about-values__grid article { padding-top: 22px; border-top: 1px solid #aaa; }
.about-values__grid .dashicons { width: 27px; height: 27px; font-size: 27px; }
.about-values__grid h3 { margin: 18px 0 10px; font: 700 23px "Cormorant Garamond", Georgia, serif; }
.about-values__grid strong { margin-bottom: 10px; display: block; color: #454541; font-size: 11px; line-height: 1.45; }
.about-values__grid p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.about-facts { overflow: hidden; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid #cccac4; border-radius: 22px; background: #fafaf8; }
.about-facts article { min-width: 0; padding: 31px clamp(20px, 3vw, 42px); border-right: 1px solid #d8d7d2; }
.about-facts article:last-child { border-right: 0; }
.about-facts h3 { margin: 0 0 8px; font: 700 25px/1 "Cormorant Garamond", Georgia, serif; }
.about-facts p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.about-cta { padding: 36px clamp(30px, 5vw, 70px); display: flex; align-items: center; justify-content: space-between; gap: 30px; border: 1px solid #cccac4; border-radius: 22px; background: #fafaf8; }
.about-cta p { color: var(--muted); }
.about-cta h2 { margin: 0; font: 700 clamp(34px, 3.7vw, 50px)/1 "Cormorant Garamond", Georgia, serif; }
.about-cta .outline-button { flex: 0 0 auto; background: #111; color: #fff; }
.about-cta .outline-button:hover { background: #333; }

/* Consolidated About page: practical, local, and editable. */
.about-consolidated-main,
.contact-main { width: min(var(--max), calc(100% - (var(--pad) * 2))); margin: 30px auto 110px; }
.about-consolidated,
.contact-page { min-width: 0; }
.about-consolidated__hero { min-height: 500px; overflow: hidden; display: grid; grid-template-columns: .72fr 1.28fr; border: 1px solid #d7d7d1; border-radius: 18px; background: #f5f5f2; color: #111; }
.about-consolidated__hero > div { padding: clamp(38px, 5vw, 72px); display: flex; flex-direction: column; justify-content: center; }
.about-consolidated__hero > div > p,
.about-consolidated__eyebrow,
.contact-page__heading > p,
.contact-page__eyebrow { margin: 0 0 14px; color: #6d6d68; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.about-consolidated__hero h1 { margin: 0 0 20px; font: 700 clamp(48px, 5vw, 68px)/.94 "Cormorant Garamond", Georgia, serif; letter-spacing: -.045em; }
.about-consolidated__hero span { max-width: 420px; color: #5f5f5a; font-size: 14px; line-height: 1.65; }
.about-consolidated__hero > img { width: 100%; height: 100%; min-height: 500px; display: block; object-fit: cover; }
.about-consolidated__content { max-width: 1060px; margin: 0 auto; padding-top: clamp(60px, 7vw, 90px); }
.about-consolidated__intro { max-width: 890px; margin: 0 auto 56px; display: grid; grid-template-columns: .72fr 1.28fr; column-gap: clamp(34px, 6vw, 82px); }
.about-consolidated__intro .about-consolidated__eyebrow { grid-column: 1 / -1; color: var(--muted); }
.about-consolidated__intro h2 { grid-row: 2 / span 3; margin: 0; font: 700 clamp(40px, 4vw, 56px)/.98 "Cormorant Garamond", Georgia, serif; letter-spacing: -.04em; }
.about-consolidated__intro p:not(.about-consolidated__eyebrow) { margin: 0 0 16px; color: var(--muted); font-size: 14px; line-height: 1.78; }
.about-consolidated__intro .about-consolidated__lead { color: #292925; font-size: 16px; line-height: 1.58; }
.about-local-story { scroll-margin-top: 90px; min-height: 440px; margin-bottom: 24px; overflow: hidden; display: grid; grid-template-columns: 1.08fr .92fr; border: 1px solid #d7d7d1; border-radius: 18px; background: #fff; }
.about-local-story figure { min-width: 0; min-height: 100%; margin: 0; }
.about-local-story img { width: 100%; height: 100%; min-height: 440px; display: block; object-fit: cover; }
.about-local-story > div { padding: clamp(34px, 4.6vw, 58px); display: flex; flex-direction: column; justify-content: center; }
.about-local-story h2 { margin: 0 0 18px; font: 700 clamp(36px, 3.8vw, 50px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.035em; }
.about-local-story p { margin: 0 0 14px; color: #60605b; font-size: 13px; line-height: 1.72; }
.about-local-story .about-local-story__lead { color: #292925; font-size: 15px; line-height: 1.58; }
.about-local-story--reverse figure { order: 2; }
.about-local-details { margin-top: 54px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid #d7d7d1; }
.about-local-details article { scroll-margin-top: 90px; padding: 36px clamp(22px, 3vw, 38px); border-right: 1px solid #d7d7d1; border-bottom: 1px solid #d7d7d1; }
.about-local-details article:nth-child(2n) { border-right: 0; }
.about-local-details h2 { margin: 0 0 12px; font: 700 clamp(29px, 3vw, 37px)/1.04 "Cormorant Garamond", Georgia, serif; letter-spacing: -.025em; }
.about-local-details p:last-child { margin: 0; color: #60605b; font-size: 13px; line-height: 1.68; }
.about-consolidated__facts { margin-top: 54px; overflow: hidden; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid #d2d1cb; border-radius: 16px; background: #f7f7f4; }
.about-consolidated__facts article { padding: 28px clamp(19px, 2.6vw, 36px); border-right: 1px solid #d9d8d2; }
.about-consolidated__facts article:last-child { border-right: 0; }
.about-consolidated__facts h3 { margin: 0 0 8px; font: 700 24px/1 "Cormorant Garamond", Georgia, serif; }
.about-consolidated__facts p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.about-consolidated__cta { margin-top: 24px; padding: 32px clamp(26px, 4vw, 48px); display: flex; align-items: center; justify-content: space-between; gap: 30px; border: 1px solid #d2d1cb; border-radius: 16px; background: #fff; color: #111; }
.about-consolidated__cta h2 { margin: 0; font: 700 clamp(32px, 3.6vw, 46px)/1 "Cormorant Garamond", Georgia, serif; }
.about-consolidated__cta .outline-button { flex: 0 0 auto; border-color: #111; background: #111; color: #fff; }
.about-consolidated__cta .outline-button:hover,
.about-consolidated__cta .outline-button:focus-visible { background: #333; }

/* Contact page uses the same editorial system and keeps copy editable. */
.contact-page__hero { min-height: 580px; overflow: hidden; display: grid; grid-template-columns: .78fr 1.22fr; border-radius: 28px; background: #ded7cb; }
.contact-page__heading { padding: clamp(42px, 6vw, 82px); display: flex; flex-direction: column; justify-content: center; }
.contact-page__heading > p { color: #66635e; }
.contact-page__heading h1 { margin: 0 0 24px; font: 700 clamp(52px, 6vw, 82px)/.9 "Cormorant Garamond", Georgia, serif; letter-spacing: -.05em; }
.contact-page__heading span { max-width: 390px; color: #55524d; font-size: 14px; line-height: 1.7; }
.contact-page__hero figure { min-width: 0; margin: 0; }
.contact-page__hero img { width: 100%; height: 100%; min-height: 580px; display: block; object-fit: cover; object-position: 53% center; }
.contact-page__content { max-width: 900px; margin: 0 auto; padding: clamp(65px, 9vw, 110px) clamp(22px, 5vw, 64px) 0; }
.contact-page__copy { display: grid; grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr); column-gap: clamp(38px, 6vw, 82px); }
.contact-page__copy .contact-page__eyebrow { grid-column: 1 / -1; color: var(--muted); }
.contact-page__copy h2 { grid-row: 2 / span 4; max-width: 360px; margin: 0; font: 700 clamp(38px, 3.5vw, 48px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.03em; text-wrap: balance; }
.contact-page__copy > p:not(.contact-page__eyebrow) { margin: 0 0 17px; color: var(--muted); font-size: 14px; line-height: 1.78; }
.contact-page__actions { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 10px; }
.contact-page__actions .outline-button { min-width: 155px; justify-content: center; }
.contact-page__actions .outline-button--dark { border-color: #111; background: #111; color: #fff; }
.contact-page__actions .outline-button--dark:hover,
.contact-page__actions .outline-button--dark:focus-visible { background: #333; }

/* Accessible storefront dropdown navigation. */
.nav-link, .nav-dropdown__toggle { font-family: Inter, ui-sans-serif, sans-serif; font-weight: 600; letter-spacing: .01em; }
.nav-dropdown { position: relative; }
.nav-dropdown__toggle { padding: 8px 0; display: inline-flex; align-items: center; gap: 4px; border: 0; border-bottom: 1px solid transparent; background: transparent; font-size: 14px; cursor: pointer; }
.nav-dropdown__toggle .dashicons { width: 15px; height: 15px; font-size: 15px; transition: transform .18s ease; }
.nav-dropdown.is-open .nav-dropdown__toggle .dashicons { transform: rotate(180deg); }
.nav-dropdown__menu { position: absolute; z-index: 40; top: calc(100% + 10px); left: -28px; width: 270px; max-height: min(620px, calc(100vh - 105px)); padding: 11px; overflow-y: auto; display: grid; border: 1px solid #e2e2de; border-radius: 13px; background: #fff; box-shadow: 0 18px 45px rgb(0 0 0 / 13%); overscroll-behavior: contain; }
.nav-dropdown__menu--about { width: 286px; }
.nav-dropdown__menu[hidden] { display: none; }
.nav-dropdown__menu a { padding: 13px 15px; border: 0; border-radius: 8px; color: #565653; font-size: 14px; font-weight: 500; text-decoration: none; }
.nav-dropdown__menu a:hover, .nav-dropdown__menu a:focus-visible { border: 0; background: #f2f2ef; color: #111; }

/* Editable information pages use the existing editorial type and neutral palette. */
.information-main { width: min(1180px, calc(100% - (var(--pad) * 2))); }
.information-page { max-width: none; padding: 0; overflow: hidden; }
.information-page__header { padding: clamp(44px, 7vw, 88px); border-bottom: 1px solid var(--line); background: #f6f6f3; }
.information-page__header > p { margin: 0 0 14px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.information-page__header h1 { max-width: 850px; margin: 0; font: 700 clamp(48px, 6vw, 78px)/.95 "Cormorant Garamond", Georgia, serif; letter-spacing: -.045em; }
.information-page__content { padding: clamp(38px, 6vw, 76px); }
.information-page__body { max-width: 760px; }
.information-page__body h2 { margin: 0 0 22px; font: 700 clamp(34px, 4vw, 52px)/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.035em; }
.information-page__body p { margin: 0 0 17px; color: var(--muted); font-size: 14px; line-height: 1.78; }
.information-page__body .information-page__lead { margin-bottom: 25px; color: #2d2d2a; font-size: 17px; line-height: 1.62; }
.information-page__feature { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr); align-items: stretch; gap: clamp(30px, 5vw, 68px); }
.information-page__feature > figure { min-height: 390px; margin: 0; overflow: hidden; border-radius: 20px; background: #e9e9e5; }
.information-page__feature > figure img { width: 100%; height: 100%; display: block; object-fit: cover; }
.information-page__feature .information-page__body { padding: clamp(12px, 3vw, 38px) 0; align-self: center; }
.information-page__benefit-section { margin-top: clamp(42px, 6vw, 72px); }
.information-page__benefit-section h3 { margin: 0 0 24px; font: 700 clamp(28px, 3vw, 39px)/1 "Cormorant Garamond", Georgia, serif; }
.information-page__benefits { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; list-style: none; }
.information-page__benefits li { min-height: 60px; padding: 17px 18px 17px 46px; position: relative; display: flex; align-items: center; border: 1px solid var(--line); border-radius: 13px; background: #f8f8f6; color: #353532; font-size: 13px; font-weight: 600; line-height: 1.4; }
.information-page__benefits li::before { content: ""; position: absolute; left: 19px; width: 9px; height: 9px; border: 2px solid #777772; border-radius: 50%; }
.information-page__closing { max-width: 760px; margin-top: clamp(42px, 6vw, 70px); padding-top: 28px; border-top: 1px solid var(--line); }
.information-page__closing p { margin: 0 0 10px; color: var(--muted); font-size: 12px; font-weight: 700; }
.information-page__closing strong { font: 700 clamp(25px, 3vw, 35px)/1.15 "Cormorant Garamond", Georgia, serif; }
.information-page__cta { margin-top: clamp(42px, 6vw, 72px); }
.information-page__cta .outline-button { min-width: 190px; justify-content: center; background: #111; color: #fff; }
.information-page__cta .outline-button:hover, .information-page__cta .outline-button:focus-visible { background: #333; }

/* Carton is the only purchasable format. */
.localsmokes-carton-format { margin: 22px 0 14px; padding: 18px 20px; display: grid; grid-template-columns: 76px 1fr; gap: 5px 16px; border: 1px solid #d7d7d1; border-radius: 16px; background: rgb(255 255 255 / 72%); box-shadow: 0 8px 24px rgb(0 0 0 / 3%); }
.localsmokes-carton-format > span { color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.localsmokes-carton-format > strong { font-size: 15px; line-height: 1.35; }
.localsmokes-carton-format > small { grid-column: 2; color: var(--muted); font-size: 12px; }

/* Product review summary and disclosed local sample feedback. */
.woocommerce div.product .product-reviews-panel { grid-column: 1 / -1; margin: 30px 0 40px; }
.product-reviews-summary { padding: clamp(25px, 4vw, 48px); display: grid; grid-template-columns: .85fr 1.4fr .9fr; align-items: center; gap: clamp(25px, 4vw, 60px); border-radius: 22px; background: #e9e9e6; }
.product-reviews-score { margin: 0; font: 700 clamp(45px, 5vw, 68px)/.9 "Cormorant Garamond", Georgia, serif; }
.product-reviews-summary p:last-child { margin-bottom: 0; color: var(--muted); font-size: 12px; }
.product-review-stars { display: flex; color: #efb900; }
.product-review-stars .dashicons { width: 21px; height: 21px; font-size: 21px; }
.product-review-bars { display: grid; gap: 7px; }
.product-review-bars > div { display: grid; grid-template-columns: 96px 1fr 24px; align-items: center; gap: 9px; color: var(--muted); font-size: 11px; }
.product-review-bar-label { display: inline-flex; gap: 1px; color: #8d8d88; }
.product-review-bar-label .dashicons { width: 16px; height: 16px; font-size: 16px; }
.product-review-bar-label .dashicons-star-filled { color: #d5a000; }
.product-review-bars progress { width: 100%; height: 8px; border: 0; border-radius: 99px; overflow: hidden; background: #d8d8d3; }
.product-review-bars progress::-webkit-progress-bar { background: #d8d8d3; }
.product-review-bars progress::-webkit-progress-value { background: #efb900; }
.product-review-bars progress::-moz-progress-bar { background: #efb900; }
.product-review-note { padding: 14px; border: 1px solid #c9c9c3; border-radius: 10px; background: rgb(255 255 255 / 55%); line-height: 1.55; }
.product-reviews-heading { margin: 38px 0 18px; padding-bottom: 15px; display: flex; align-items: baseline; gap: 12px; border-bottom: 1px solid var(--line); }
.product-reviews-heading h2 { margin: 0; font: 700 clamp(34px, 4vw, 50px)/1 "Cormorant Garamond", Georgia, serif; }
.product-reviews-heading span { color: var(--muted); }
.product-review-list { display: grid; gap: 18px; }
.product-review-list article { padding: clamp(22px, 3vw, 34px); border: 1px solid var(--line); border-radius: 18px; background: #f8f8f6; }
.product-review-person { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; }
.product-review-avatar { width: 43px; height: 43px; display: grid; place-items: center; border: 1px solid #c8aa79; border-radius: 50%; background: #deded9; object-fit: cover; font-weight: 700; }
.product-review-person > div { display: grid; gap: 2px; }
.product-review-person > div span { width: max-content; padding: 3px 7px; border-radius: 99px; background: #d8f1dc; color: #276937; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.product-review-person time { color: var(--muted); font-size: 11px; }
.product-review-list .product-review-stars { margin: 15px 0 8px; }
.product-review-list article > p { margin: 0; font-size: 14px; line-height: 1.6; }
.comment-form-review-photo { margin: 18px 0; }
.comment-form-review-photo label { margin-bottom: 8px; display: block; color: #292925; font-size: 13px; font-weight: 700; }
.comment-form-review-photo input[type="file"] { width: 100%; min-height: 48px; padding: 10px; border: 1px solid #cfcfc9; border-radius: 9px; background: #fff; color: #30302d; }
.comment-form-review-photo small { margin-top: 7px; display: block; color: #666662; font-size: 11px; line-height: 1.45; }

/* WooCommerce checkout blocks and classic fields share the same address hint treatment. */
.wc-block-components-address-form__address_1 input::placeholder, .woocommerce form .form-row input[name$="address_1"]::placeholder { color: #72726f; opacity: 1; }
.wc-block-components-address-form__address_1, .woocommerce form .form-row[id$="address_1_field"] { position: relative; }
.wc-block-components-address-form__address_1::after, .woocommerce form .form-row[id$="address_1_field"]::after { content: "Start typing your address. Choose a suggestion if shown, or continue entering it manually."; max-width: 100%; display: block; margin-top: 7px; overflow-wrap: anywhere; color: #666662; font-size: 12px; line-height: 1.45; white-space: normal; }
.woocommerce-checkout .content-main { margin-bottom: 0; }
.woocommerce-checkout .content-card { margin-bottom: clamp(40px, 6vw, 80px); }
.woocommerce-checkout .wc-block-checkout, .woocommerce-checkout .wp-block-woocommerce-checkout { max-width: 1180px; margin-inline: auto; }

/* High-contrast WooCommerce cart and checkout actions. */
.wc-block-cart__submit-container .wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
.woocommerce .cart_totals .checkout-button,
.woocommerce-checkout #place_order {
  min-height: 60px;
  padding: 0 28px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #111 !important;
  border-radius: 10px !important;
  background: #111 !important;
  color: #fff !important;
  box-shadow: 0 9px 24px rgb(0 0 0 / 14%);
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 16px !important;
  font-weight: 750 !important;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
  transition: background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.wc-block-cart__submit-container .wc-block-cart__submit-button .wc-block-components-button__text,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button .wc-block-components-button__text { color: inherit !important; }
.wc-block-cart__submit-container .wc-block-cart__submit-button:hover,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover,
.woocommerce .cart_totals .checkout-button:hover,
.woocommerce-checkout #place_order:hover { background: #2d2d2b !important; box-shadow: 0 11px 27px rgb(0 0 0 / 18%); transform: translateY(-1px); }
.wc-block-cart__submit-container .wc-block-cart__submit-button:active,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:active,
.woocommerce .cart_totals .checkout-button:active,
.woocommerce-checkout #place_order:active { transform: translateY(1px); }
.wc-block-cart__submit-container .wc-block-cart__submit-button:focus-visible,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:focus-visible,
.woocommerce .cart_totals .checkout-button:focus-visible,
.woocommerce-checkout #place_order:focus-visible { outline: 3px solid #b88c4c; outline-offset: 3px; }
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:disabled,
.woocommerce-checkout #place_order:disabled { border-color: #6b6b68 !important; background: #6b6b68 !important; color: #fff !important; box-shadow: none; transform: none; }

/* Checkout presence: demo values outside production, real heartbeats in production. */
.localsmokes-checkout-presence { width: max-content; max-width: 100%; margin: 0 auto 28px; padding: 10px 15px; display: flex; align-items: center; gap: 9px; border: 1px solid #d8d8d3; border-radius: 99px; background: #f8f8f6; color: #353532; font-size: 13px; }
.localsmokes-checkout-presence[hidden] { display: none; }
.localsmokes-checkout-presence__dot { width: 9px; height: 9px; flex: 0 0 9px; border-radius: 50%; background: #387a49; box-shadow: 0 0 0 4px rgb(56 122 73 / 13%); }
.localsmokes-checkout-presence strong { font-weight: 700; }

/* Optional signature request: keep it visually attached to shipping choices. */
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block {
  margin: -8px 0 24px;
  padding: 14px 16px;
  border: 1px solid #d8d7d2;
  border-radius: 11px;
  background: #faf9f6;
}
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-checkout-step__heading-container {
  display: none;
}
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-checkout-step__content {
  padding: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required {
  margin: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required label {
  min-height: 28px;
  display: flex;
  align-items: center;
  color: #20201e;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
  cursor: pointer;
}
.wp-block-woocommerce-checkout .wc-block-checkout__create-account label,
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required label {
  box-sizing: border-box;
  width: 100%;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
}
.wp-block-woocommerce-checkout .wc-block-checkout__create-account .wc-block-components-checkbox__input,
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required .wc-block-components-checkbox__input {
  box-sizing: border-box !important;
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
}
.wp-block-woocommerce-checkout .wc-block-checkout__create-account .wc-block-components-checkbox__mark,
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required .wc-block-components-checkbox__mark {
  top: 0;
  left: 0;
}
.wp-block-woocommerce-checkout .wc-block-checkout__create-account .wc-block-components-checkbox__label,
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required .wc-block-components-checkbox__label {
  min-width: 0;
  padding-top: 1px;
}
.wp-block-woocommerce-checkout .wc-block-checkout__create-account {
  padding: 10px 12px;
  border: 1px solid #dfded8;
  border-radius: 9px;
  background: #faf9f6;
}
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required.is-updating {
  opacity: .6;
  pointer-events: none;
}
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required .wc-block-components-checkbox__input {
  border-color: #aaa79f;
  border-radius: 5px;
}
.wp-block-woocommerce-checkout .wc-block-components-address-form__localsmokes-signature-required .wc-block-components-checkbox__input:focus-visible {
  outline: 3px solid rgb(184 140 76 / 35%);
  outline-offset: 2px;
}

/* Quantity and removal controls for the WooCommerce Blocks order summary. */
.wp-block-woocommerce-checkout .wc-block-components-product-metadata__description { display: none; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description { min-width: 0; flex: 1 1 auto; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name { font-size: 13px; font-weight: 700; line-height: 1.35; }
.localsmokes-checkout-quantity { margin-top: 12px; display: grid; justify-items: start; gap: 6px; }
.localsmokes-checkout-quantity__label { color: #666662; font-size: 9px; font-weight: 600; letter-spacing: .04em; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.localsmokes-checkout-quantity__stepper { height: 34px; overflow: hidden; display: inline-grid; grid-template-columns: 34px 32px 34px; align-items: center; border: 1px solid #d5d5d0; border-radius: 9px; background: #fff; }
.localsmokes-checkout-quantity__stepper button { width: 34px; height: 34px; padding: 0; display: grid; place-items: center; border: 0; background: #fff; color: #111; font-size: 17px; cursor: pointer; }
.localsmokes-checkout-quantity__stepper button:hover:not(:disabled) { background: #efefeb; }
.localsmokes-checkout-quantity__stepper button:disabled { color: #aaa; cursor: not-allowed; }
.localsmokes-checkout-quantity__stepper input { min-width: 0; width: 32px; height: 32px; padding: 0; border: 0; outline: 0; background: transparent; color: #222; font-size: 11px; font-weight: 700; text-align: center; appearance: textfield; }
.localsmokes-checkout-quantity__stepper input::-webkit-inner-spin-button, .localsmokes-checkout-quantity__stepper input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.localsmokes-checkout-quantity.is-busy { opacity: .55; }
.localsmokes-checkout-item-actions { width: 100%; max-width: 100%; margin-top: 12px; display: grid; grid-template-columns: auto minmax(8px, 1fr) auto; align-items: end; gap: 9px; }
.localsmokes-checkout-item-actions .localsmokes-checkout-quantity { margin-top: 0; }
.localsmokes-checkout-item-actions .localsmokes-checkout-remove { grid-column: 3; }
.localsmokes-checkout-item-actions.is-busy { opacity: .55; pointer-events: none; }
.localsmokes-checkout-remove { width: 34px; height: 34px; padding: 0; display: grid; place-items: center; flex: 0 0 34px; border: 1px solid #d5d5d0; border-radius: 9px; background: #fff; color: #555550; cursor: pointer; transition: border-color .18s ease, background .18s ease, color .18s ease; }
.localsmokes-checkout-remove svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.localsmokes-checkout-remove:hover, .localsmokes-checkout-remove:focus-visible { border-color: #111; background: #111; color: #fff; }
.localsmokes-checkout-remove:focus-visible { outline: 3px solid #b88c4c; outline-offset: 2px; }
.localsmokes-checkout-remove:disabled { color: #aaa; cursor: wait; }

/* Checkout dispatch cutoff shown below the order summary totals. */
.localsmokes-dispatch-note { box-sizing: border-box; width: 100%; margin: 0; padding: 14px 18px 14px 20px !important; border-left: 3px solid #b88c4c; border-radius: 8px; background: #faf8f2; color: #44443f; font-size: 12px; line-height: 1.5; }
.localsmokes-dispatch-note strong { color: #171715; font-weight: 700; }
.localsmokes-dispatch-note-row td { padding-top: 12px; }

/* Google Places suggestions; manual address entry remains available. */
.localsmokes-address-field { position: relative; z-index: 3; }
.localsmokes-address-field:focus-within { z-index: 80; }
.localsmokes-address-suggestions { position: absolute; z-index: 90; top: calc(100% - 1px); left: 0; right: 0; margin: 0; padding: 7px; overflow: hidden; border: 1px solid #cfcfca; border-radius: 0 0 10px 10px; background: #fff; box-shadow: 0 18px 42px rgb(0 0 0 / 16%); list-style: none; }
.localsmokes-address-suggestions[hidden] { display: none; }
.localsmokes-address-suggestions li { margin: 0; padding: 0; }
.localsmokes-address-suggestions button { width: 100%; min-height: 44px; padding: 9px 11px; border: 0; border-radius: 7px; background: #fff; color: #222; font-family: Inter, ui-sans-serif, sans-serif; font-size: 13px; line-height: 1.35; text-align: left; cursor: pointer; }
.localsmokes-address-suggestions button:hover, .localsmokes-address-suggestions button:focus-visible { outline: 0; background: #efefeb; }
.localsmokes-address-suggestions__message { padding: 12px 11px !important; color: #5e5e5a; font-size: 12px; line-height: 1.45; }
.localsmokes-address-suggestions__attribution { padding: 6px 11px 4px !important; border-top: 1px solid #ededE8; color: #757571; font-size: 10px; font-weight: 700; text-align: right; }
.localsmokes-address-suggestions__attribution a { color: #555550; text-decoration: underline; text-underline-offset: 2px; }
.localsmokes-address-suggestions__attribution a:hover, .localsmokes-address-suggestions__attribution a:focus-visible { color: #111; }

/* Checkout validation: retain WooCommerce behavior with clearer field-level feedback. */
.wc-block-checkout .wc-block-components-validation-error,
.woocommerce-checkout .woocommerce-invalid-required-field .required,
.localsmokes-checkout-validation-error { color: #c93a35; font-size: 12px; line-height: 1.4; }
.localsmokes-checkout-validation-error { margin-top: 7px; }
.wc-block-components-text-input.localsmokes-validation-error input,
.localsmokes-validation-error input { border-color: #c93a35 !important; box-shadow: 0 0 0 1px #c93a35; }
.wc-block-components-text-input.localsmokes-validation-error label,
.localsmokes-validation-error label { color: #a92f2b; }

@media (min-width: 981px) {
  .desktop-nav > * { position: relative; }
  .desktop-nav > * + *::before { position: absolute; top: 50%; left: calc(clamp(20px, 2.2vw, 38px) * -.5); width: 14px; height: 18px; content: ""; background: url('../images/maple-leaf-transparent.png') center / contain no-repeat; pointer-events: none; transform: translate(-50%, -50%); }
  .site-header .nav-dropdown::after { content: ""; position: absolute; z-index: 39; top: 100%; left: -18px; right: -18px; height: 14px; }
  .nav-dropdown:hover .nav-dropdown__menu,
  .nav-dropdown:focus-within .nav-dropdown__menu { display: grid; }
  .nav-dropdown:hover .nav-dropdown__toggle .dashicons,
  .nav-dropdown:focus-within .nav-dropdown__toggle .dashicons { transform: rotate(180deg); }
}

@media (max-width: 980px) {
  .mobile-menu .nav-link { padding: 14px 10px; display: block; border-bottom: 1px solid var(--line); color: inherit; text-decoration: none; }
  .mobile-menu .nav-dropdown__toggle { width: 100%; padding: 14px 10px; justify-content: space-between; border-bottom: 1px solid var(--line); }
  .mobile-menu .nav-dropdown__menu { position: static; width: 100%; max-height: none; padding: 4px 8px 10px 18px; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  .mobile-menu .nav-dropdown__menu a { min-height: 44px; padding: 11px 12px; display: flex; align-items: center; border-bottom: 1px solid #e6e6e2; }
  .product-reviews-summary { grid-template-columns: 1fr 1.5fr; }
  .product-reviews-summary > div:last-child { grid-column: 1 / -1; }
  .about-hero { min-height: 0; grid-template-columns: 1fr; }
  .about-hero > img { min-height: 380px; }
  .about-intro { grid-template-columns: 1fr; gap: 30px; }
  .about-intro > div { gap: 22px; }
  .about-story-list article { grid-template-columns: .9fr 1.1fr; }
  .about-values__grid { grid-template-columns: 1fr 1fr; }
  .about-facts { grid-template-columns: 1fr 1fr; }
  .about-facts article:nth-of-type(2) { border-right: 0; }
  .about-facts article:nth-of-type(-n + 2) { border-bottom: 1px solid #d8d7d2; }
	.about-consolidated__hero,
	.contact-page__hero { min-height: 0; grid-template-columns: 1fr; }
	.about-consolidated__hero > img,
	.contact-page__hero img { min-height: 430px; }
	.about-consolidated__intro,
	.contact-page__copy { grid-template-columns: 1fr; }
	.information-page__feature { grid-template-columns: 1fr; }
	.information-page__feature > figure { min-height: 360px; }
	.about-consolidated__intro h2,
	.contact-page__copy h2 { grid-row: auto; margin-bottom: 28px; }
	.about-local-story { min-height: 0; grid-template-columns: 1fr; }
	.about-local-story figure,
	.about-local-story--reverse figure { order: 0; }
	.about-local-story img { min-height: 420px; }
	.about-consolidated__facts { grid-template-columns: 1fr 1fr; }
	.about-consolidated__facts article:nth-child(2) { border-right: 0; }
	.about-consolidated__facts article:nth-child(-n + 2) { border-bottom: 1px solid #d9d8d2; }
}

@media (max-width: 640px) {
	.search-panel { width: calc(100% - 24px); margin-top: 14px; border-radius: 17px; }
	.product-search-form__intro { min-height: 82px; padding: 17px 18px; }
	.product-search-form__intro strong { font-size: 27px; }
	.product-search-form__controls { min-height: 58px; margin: 17px 18px 19px; padding-left: 14px; grid-template-columns: 20px minmax(0, 1fr) auto; gap: 8px; }
	.product-search-form__controls input { height: 46px; font-size: 13px; }
	.product-search-form__controls button { min-width: 50px; width: 50px; height: 46px; padding: 0; }
	.product-search-form__controls button > span:first-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
	.cart-drawer { width: min(440px, 100%); }
	.cart-drawer > header { height: 72px; padding-inline: 20px; }
	.localsmokes-mini-cart-content { padding-inline: 20px; }
	.woocommerce-mini-cart-item { min-height: 126px; padding-block: 20px !important; }
	.woocommerce-mini-cart-item .localsmokes-mini-cart__row,
	.woocommerce-mini-cart-item .localsmokes-mini-cart__product { grid-template-columns: 82px minmax(0, 1fr) !important; gap: 14px; }
	.localsmokes-mini-cart__image { width: 82px; height: 82px; }
	.localsmokes-mini-cart__quantity-row { align-items: center; flex-direction: row; gap: 7px; }
	.woocommerce-mini-cart__buttons { grid-template-columns: 1fr; }
	.localsmokes-checkout-quantity { gap: 7px; }
	.localsmokes-checkout-quantity__stepper { height: 40px; grid-template-columns: 40px 34px 40px; }
	.localsmokes-checkout-quantity__stepper button { width: 40px; height: 40px; }
	.localsmokes-checkout-quantity__stepper input { width: 34px; height: 38px; }
	.localsmokes-checkout-remove { width: 40px; height: 40px; flex-basis: 40px; }
	.localsmokes-checkout-item-actions { align-items: end; }
	.information-main { width: calc(100% - 32px); margin-top: 18px; }
	.information-page__header { padding: 38px 24px; }
	.information-page__header h1 { font-size: 45px; }
	.information-page__content { padding: 34px 24px 42px; }
	.information-page__benefits { grid-template-columns: 1fr; }
  .hero { background-position: center; background-size: cover; }
  .product-reviews-summary { grid-template-columns: 1fr; }
  .product-reviews-summary > div:last-child { grid-column: auto; }
  .product-review-person { grid-template-columns: auto 1fr; }
  .product-review-person time { grid-column: 2; }
  .localsmokes-carton-format { grid-template-columns: 1fr; }
  .localsmokes-carton-format > small { grid-column: auto; }
  .site-footer { padding-inline: 24px; }
  .about-main { padding-bottom: 72px !important; }
  .about-hero { margin-bottom: 70px; border-radius: 18px; }
  .about-hero__copy { padding: 42px 25px; }
  .about-hero h1 { font-size: 46px; }
  .about-hero > img { min-height: 280px; }
  .about-intro { margin-bottom: 64px; }
  .about-intro > div { grid-template-columns: 1fr; }
  .about-story-list { margin-bottom: 70px; }
  .about-story-list article { min-height: 0; grid-template-columns: 1fr; }
  .about-story-list article > div { padding: 34px 24px; }
  .about-story-list article > img { min-height: 260px; }
  .about-story--reverse > div { order: 0; }
  .about-values { margin-bottom: 60px; padding: 42px 24px; }
  .about-values__heading { margin-bottom: 36px; }
  .about-values__grid { grid-template-columns: 1fr; gap: 28px; }
  .about-cta { padding: 30px 24px; align-items: flex-start; flex-direction: column; }
  .about-facts { grid-template-columns: 1fr; }
  .about-facts article { border-right: 0; border-bottom: 1px solid #d8d7d2; }
  .about-facts article:nth-of-type(2) { border-right: 0; }
  .about-facts article:last-child { border-bottom: 0; }
	.about-consolidated-main,
	.contact-main { width: calc(100% - 32px); margin-top: 18px; margin-bottom: 72px; }
	.about-consolidated__hero,
	.contact-page__hero { border-radius: 18px; }
	.about-consolidated__hero > div,
	.contact-page__heading { padding: 42px 25px; }
	.about-consolidated__hero h1,
	.contact-page__heading h1 { font-size: 49px; }
	.about-consolidated__hero > img,
	.contact-page__hero img { min-height: 290px; }
	.about-consolidated__content { padding-top: 64px; }
	.about-consolidated__intro { margin-bottom: 48px; }
	.about-local-story { scroll-margin-top: 78px; margin-bottom: 16px; border-radius: 14px; }
	.about-local-story img { min-height: 280px; }
	.about-local-story > div { padding: 34px 24px 38px; }
	.about-local-details { margin-top: 42px; grid-template-columns: 1fr; }
	.about-local-details article { scroll-margin-top: 78px; padding: 30px 4px; border-right: 0; }
	.about-consolidated__facts { margin-top: 48px; grid-template-columns: 1fr; }
	.about-consolidated__facts article { border-right: 0; border-bottom: 1px solid #d9d8d2; }
	.about-consolidated__facts article:last-child { border-bottom: 0; }
	.about-consolidated__cta { padding: 30px 24px; align-items: flex-start; flex-direction: column; }
	.contact-page__content { padding-top: 58px; }
	.contact-page__copy h2 { max-width: 330px; font-size: 38px; }
	.contact-page__actions { align-items: stretch; flex-direction: column; }
}

.woocommerce .woocommerce-breadcrumb { margin: 0 0 30px; color: var(--muted); font-size: 11px; }
.woocommerce-products-header { margin: 30px 0 50px; text-align: center; }
.woocommerce-products-header__title, .woocommerce-shop .page-title, .tax-product_cat .page-title { margin: 30px 0 50px; font: 700 clamp(48px, 6vw, 82px)/.95 "Cormorant Garamond", Georgia, serif; letter-spacing: -.045em; text-align: center; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 30px; color: var(--muted); font-size: 11px; }
.shop-filter-bar { margin: 0 0 28px; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.shop-filter-bar .filters a { min-height: 36px; padding: 0 15px; display: inline-flex; align-items: center; border: 1px solid var(--line); border-radius: 99px; color: var(--ink); font-size: 11px; text-decoration: none; }
.shop-filter-bar .filters a.active { border-color: var(--ink); background: var(--ink); color: #fff; }
.woocommerce .woocommerce-ordering select { min-height: 38px; padding: 0 12px; border: 1px solid var(--line); border-radius: 99px; background: transparent; }
.woocommerce ul.products { clear: both; margin: 0 0 90px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 50px 28px; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; }
.woocommerce ul.products li.product .product-image { display: block; }
.woocommerce ul.products li.product .product-image img { width: 100%; height: 100%; margin: 0; object-fit: cover; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; font: inherit; }
.woocommerce ul.products li.product .price { color: var(--ink); font-size: 18px; }
.woocommerce ul.products li.product .price del { color: #777; font-size: 14px; }
.product-action { position: absolute; right: 14px; bottom: 14px; opacity: 1; transform: none; }
.product-quantity-control { min-height: 42px; overflow: hidden; display: grid; grid-template-columns: 42px 36px 42px; align-items: center; border: 1px solid #d2d2cd; border-radius: 99px; background: #fff; box-shadow: 0 7px 25px rgb(0 0 0 / 14%); }
.product-quantity-control button { width: 42px; height: 42px; padding: 0; display: grid; place-items: center; border: 0; background: transparent; color: #111; font-size: 20px; line-height: 1; cursor: pointer; transition: background .18s ease, transform .18s ease; }
.product-quantity-control button:hover:not(:disabled), .product-quantity-control button:focus-visible { background: #eeeeea; }
.product-quantity-control button:active:not(:disabled) { transform: translateY(1px); }
.product-quantity-control button:disabled { color: #aaa; cursor: not-allowed; }
.product-quantity-control__input { min-width: 0; width: 36px; height: 40px; padding: 0; border: 0; outline: 0; background: transparent; color: #111; font-size: 12px; font-weight: 800; text-align: center; appearance: textfield; }
.product-quantity-control__input::-webkit-inner-spin-button, .product-quantity-control__input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.product-quantity-control.is-busy { opacity: .58; }
.product-action .button { min-height: 44px; padding: 0 16px !important; display: inline-flex !important; align-items: center; justify-content: center; border: 0 !important; border-radius: 99px !important; background: #fff !important; color: var(--ink) !important; box-shadow: 0 7px 25px #0002; font-size: 11px !important; font-weight: 750 !important; }
.product-action .product-configure-button { white-space: nowrap; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { margin: 0 3px; border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 38px; height: 38px; padding: 10px; border: 1px solid var(--line); border-radius: 50%; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li a:visited { background: transparent; color: var(--ink); text-decoration: none; }
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus { border-color: #111; background: #111; color: #fff; }
.woocommerce nav.woocommerce-pagination ul li a:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: #111; color: #fff; }

.woocommerce div.product { margin: 18px 0 82px; display: grid; grid-template-columns: 1.06fr .94fr; gap: clamp(42px, 6vw, 88px); }
.woocommerce div.product div.images, .woocommerce div.product div.summary { width: auto; float: none; }
.woocommerce div.product div.images img { border: 1px solid #e4e4df; border-radius: 24px; background: #f8f8f6; }
.woocommerce div.product div.summary { align-self: start; padding-top: clamp(0px, 1.2vw, 16px); }
.woocommerce div.product .product_title { max-width: 660px; margin: 4px 0 12px; font: 700 clamp(40px, 4.4vw, 60px)/.96 "Cormorant Garamond", Georgia, serif; letter-spacing: -.042em; text-wrap: balance; }
.woocommerce div.product .woocommerce-product-rating { margin: 0 0 20px; display: flex; align-items: center; gap: 11px; }
.localsmokes-rating-stars { display: inline-flex; align-items: center; gap: 2px; color: #d5a000; }
.localsmokes-rating-stars .dashicons { width: 19px; height: 19px; font-size: 19px; line-height: 1; }
.woocommerce div.product .woocommerce-review-link { border-bottom: 1px solid #9a9a94; color: #5f5f5b; font-size: 12px; text-decoration: none; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--ink); font-size: 20px; font-weight: 700; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--muted); font-size: 13px; line-height: 1.7; }
.woocommerce div.product p.stock { margin: 18px 0 0; color: #637319; font-size: 13px; font-weight: 600; }
.woocommerce div.product form.cart { margin: 18px 0 0; display: flex; align-items: stretch; gap: 10px; }
.woocommerce div.product form.cart::before, .woocommerce div.product form.cart::after { display: none; }
.woocommerce .quantity .qty { width: 76px; height: 54px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.woocommerce div.product form.cart .button { min-width: 190px; height: 54px; padding: 0 34px; border-radius: 10px; background: #111; }
.woocommerce div.product .product_meta { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.woocommerce div.product .product_meta a { border-bottom: 1px solid #9c9c96; color: var(--ink); text-decoration: none; }
.woocommerce div.product .woocommerce-tabs, .woocommerce div.product .related { grid-column: 1 / -1; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.related > h2 { font: 700 48px "Cormorant Garamond", Georgia, serif; text-align: center; }

.woocommerce-cart-form, .cart_totals, .woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { padding: clamp(20px, 4vw, 50px); border-radius: 20px; background: #fff; }
.woocommerce table.shop_table { border-color: var(--line); border-radius: 10px; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 16px; border-color: var(--line); }
.woocommerce a.remove { color: #111 !important; }
.woocommerce a.remove:hover { background: #111; }
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .woocommerce #respond input#submit { border-radius: 7px; background: #111; color: #fff; }
.woocommerce button.button:hover, .woocommerce a.button:hover, .woocommerce input.button:hover { background: #333; color: #fff; }
.woocommerce-checkout .col2-set { width: 58%; float: left; }
#order_review_heading, .woocommerce-checkout-review-order { width: 38%; float: right; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .select2-container--default .select2-selection--single { min-height: 48px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 6px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 26px; }
#payment { background: #f4f4f2 !important; }
#payment ul.payment_methods { border-color: var(--line) !important; }
.localsmokes-emt-block-label {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: var(--ink);
  font-size: 16px;
  font-weight: 600;
}
.localsmokes-card-payment-option .wc-block-components-radio-control__label,
.localsmokes-card-payment-option label,
.localsmokes-card-payment-option > label {
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
}
.localsmokes-secure-shopping {
  margin: 0 0 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--ink);
  font-size: 14px;
  letter-spacing: .01em;
}
.localsmokes-secure-shopping .dashicons,
.localsmokes-card-security .dashicons {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  color: #2f7d4b;
  font-size: 19px;
}
.localsmokes-card-security {
  margin: 12px 0 0;
  padding: 12px 14px;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border: 1px solid #d8e6dc;
  border-radius: 7px;
  background: #f3f8f4;
  color: #31573d;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}
.localsmokes-card-fee-notice {
  margin: 12px 0 10px;
  padding: 10px 12px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid #e0c99f;
  border-radius: 7px;
  background: #fff8e8;
  color: #57431e;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
}
.localsmokes-card-fee-notice .dashicons {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #9a6b20;
  font-size: 18px;
}
.localsmokes-emt-block-logo {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 8px;
  object-fit: contain;
}
.localsmokes-emt-block-description {
  margin: 0 -16px -16px;
  padding: 20px 16px;
  border: 1.5px solid #0b0b0a;
  border-top: 1px solid var(--line);
  border-radius: 0 0 4px 4px;
  background: #f4f4f2;
  color: #343431;
}
.localsmokes-emt-block-description p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
}
.localsmokes-emt-block-description p + p { margin-top: 10px; }
.wc-block-components-radio-control-accordion-option:has(.localsmokes-emt-block-label) {
  position: relative;
  overflow: hidden;
  border: 0;
  border-radius: 4px;
  box-shadow: none;
}
.wc-block-components-radio-control-accordion-option:has(.localsmokes-emt-block-label)::after {
  display: none !important;
}
.wc-block-components-radio-control-accordion-option:has(.localsmokes-emt-block-label) .wc-block-components-radio-control__option {
  border: 1.5px solid #0b0b0a;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
}
.wc-block-components-radio-control-accordion-option:has(.localsmokes-emt-block-label) .wc-block-components-radio-control__option-layout {
  width: 100%;
}
.wc-block-components-payment-method-icons img[src*="interac-brand"] {
  width: 44px;
  max-height: 44px;
}
#cartadicreditopay-card-element,
#alpay-card-element {
  min-height: 0;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}
#cartadicreditopay-card-element iframe,
#alpay-card-element iframe {
  display: block;
  width: 100%;
  min-height: 0;
  border: 0;
}

@media (max-width: 640px) {
  .woocommerce-checkout .content-card > h1 { margin-bottom: 18px; }
  .woocommerce-checkout .wp-block-woocommerce-checkout { padding-top: 0; }
  .localsmokes-secure-shopping { margin-bottom: 11px; }
  .localsmokes-card-security { padding: 11px 12px; font-size: 12px; }
}
.wc-block-components-radio-control-accordion-option:has(#cartadicreditopay-card-element) .wc-block-components-radio-control-accordion-content {
  padding-top: 16px;
}
.localsmokes-is-submitting,
.localsmokes-order-submitting .wc-block-components-checkout-place-order-button,
.localsmokes-order-submitting #place_order {
  position: relative;
  pointer-events: none;
  cursor: wait;
}
.localsmokes-order-submitting .wc-block-components-checkout-place-order-button .wc-block-components-button__text,
.localsmokes-order-submitting #place_order {
  color: transparent !important;
}
.localsmokes-order-submitting .wc-block-components-checkout-place-order-button::after,
.localsmokes-order-submitting #place_order::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22px;
  height: 22px;
  margin: -11px 0 0 -11px;
  border: 2px solid rgb(255 255 255 / 38%);
  border-top-color: #fff;
  border-radius: 50%;
  content: "";
  animation: localsmokes-checkout-spin .75s linear infinite;
}
@keyframes localsmokes-checkout-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .localsmokes-order-submitting .wc-block-components-checkout-place-order-button::after,
  .localsmokes-order-submitting #place_order::after { animation: none; }
}

.woocommerce-order-received .content-main {
  width: min(1280px, calc(100% - (var(--pad) * 2)));
}
.woocommerce-order-received .content-card {
  max-width: none;
  padding: clamp(28px, 4vw, 52px);
}
.woocommerce-order-received .content-card > h1 { margin: 0 0 34px; }
.woocommerce-order-received .content-card > .woocommerce {
  padding: 0;
  border-radius: 0;
  background: transparent;
}
.woocommerce-order-received .woocommerce-order {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr);
  align-items: start;
  gap: 24px;
  border-radius: 0;
  background: transparent;
}
.woocommerce-order-received .woocommerce-thankyou-order-received,
.woocommerce-order-received .woocommerce-order-overview {
  grid-column: 1 / -1;
}
.woocommerce-order-received .woocommerce-thankyou-order-received {
  margin: 0;
  font: 700 clamp(40px, 5vw, 60px)/1 "Cormorant Garamond", Georgia, serif;
}
.woocommerce-order-received .woocommerce-order-overview {
  margin: 0 0 10px;
  padding: 18px 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 14px 28px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f7f7f4;
}
.woocommerce-order-received .woocommerce-order-overview li {
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.5;
}
.woocommerce-order-received .woocommerce-order-overview li strong {
  color: var(--ink);
  font-size: 13px;
}
.woocommerce-order-received .woocommerce-order-overview__total strong {
  color: #8a6227;
  font-size: 17px;
}
.woocommerce-order-received .woocommerce-order-overview__payment-method strong { font-size: 15px; }
.localsmokes-emt-confirmation {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
}
.localsmokes-emt-confirmation__header {
  padding: 22px 24px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  background: #f7f7f4;
}
.localsmokes-emt-confirmation__title > span {
  display: block;
  margin-bottom: 5px;
  color: #8a6227;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.localsmokes-emt-confirmation__header h2 {
  margin: 0;
  font: 700 clamp(27px, 3vw, 36px)/1 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.025em;
}
.localsmokes-emt-status {
  box-sizing: border-box;
  width: 100%;
  padding: 18px 24px 18px 19px;
  display: grid;
  grid-template-columns: minmax(120px, .25fr) minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  border: 0;
  border-bottom: 1px solid #cfb477;
  border-left: 5px solid #8a6227;
  border-radius: 0;
  background: #f7ecd4;
  color: #5d421b;
}
.localsmokes-emt-status > div { display: grid; gap: 3px; }
.localsmokes-emt-status > div > span {
  color: #86632f;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.localsmokes-emt-status > div > strong {
  font-size: 19px;
  line-height: 1.15;
  text-transform: uppercase;
}
.localsmokes-emt-status p {
  margin: 0;
  color: #513a18;
  font-size: 13px;
  line-height: 1.5;
}
.localsmokes-emt-status p strong { color: #3f2c12; font-weight: 800; }
.localsmokes-emt-status p a {
  color: inherit;
  font-weight: 800;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.localsmokes-emt-confirmation--paid { border-color: #b8d5c0; }
.localsmokes-emt-status--paid {
  border-bottom-color: #b8d5c0;
  border-left-color: #2f7d46;
  background: #f2f8f4;
  color: #246238;
}
.localsmokes-emt-status--paid > div > span,
.localsmokes-emt-status--paid p { color: #315b3d; }
.localsmokes-emt-status--paid p strong { color: #1f5531; }
.localsmokes-emt-warning {
  margin: 20px 22px 0;
  padding: 15px 18px;
  display: grid;
  gap: 4px;
  border: 1px solid #d9b28e;
  border-radius: 12px;
  background: #fff7f0;
  color: #7b3c1f;
  text-align: center;
}
.localsmokes-emt-warning strong { font-size: 13px; }
.localsmokes-emt-warning span { font-size: 11px; line-height: 1.5; }
.localsmokes-emt-amount {
  margin: 18px 22px 0;
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border: 1px solid var(--line);
  border-radius: 12px;
  border-color: #cdb98f;
  background: linear-gradient(135deg, #faf6eb 0%, #f6f1e4 100%);
}
.localsmokes-emt-amount__details {
  min-width: 0;
  display: grid;
  gap: 5px;
}
.localsmokes-emt-amount__label,
.localsmokes-emt-field small {
  display: block;
  color: #6f6c64;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.localsmokes-emt-amount__value {
  display: flex;
  align-items: baseline;
  gap: 9px;
  white-space: nowrap;
}
.localsmokes-emt-amount__value strong {
  color: var(--ink);
  font-size: clamp(31px, 4vw, 40px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.035em;
  white-space: nowrap;
}
.localsmokes-emt-amount__value small {
  color: #6e5b38;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
}
.localsmokes-emt-amount__details p {
  margin: 2px 0 0;
  color: #655d50;
  font-size: 10px;
  line-height: 1.45;
}
.localsmokes-emt-copy {
  min-width: 78px;
  min-height: 38px;
  padding: 0 14px;
  flex: 0 0 auto;
  border: 1px solid #cfcfc9;
  border-radius: 999px;
  background: #fff;
  color: #2c2c29;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}
.localsmokes-emt-copy:hover,
.localsmokes-emt-copy:focus-visible { border-color: #111; background: #111; color: #fff; }
.localsmokes-emt-copy:active { transform: translateY(1px); }
.localsmokes-emt-lead {
  margin: 18px 22px;
  color: #55524c;
  font-size: 12px;
  line-height: 1.6;
}
.localsmokes-emt-deposit,
.localsmokes-emt-security {
  margin: 0 22px 18px;
  display: grid;
  gap: 3px;
  color: #4f4d47;
  font-size: 11px;
  text-align: center;
}
.localsmokes-emt-deposit strong {
  width: max-content;
  margin: auto;
  padding: 5px 10px;
  border-radius: 999px;
  background: #e5f2e7;
  color: #28633a;
  font-size: 10px;
}
.localsmokes-emt-fields__heading {
  margin: 2px 22px 10px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
}
.localsmokes-emt-fields__heading span {
  color: #8a6227;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.localsmokes-emt-fields__heading strong {
  color: #47443e;
  font-size: 10px;
  font-weight: 650;
  text-align: right;
}
.localsmokes-emt-fields {
  margin: 0 22px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
}
.localsmokes-emt-field {
  min-width: 0;
  padding: 13px 12px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  background: #fff;
}
.localsmokes-emt-field + .localsmokes-emt-field { border-top: 1px solid var(--line); }
.localsmokes-emt-field__number {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #efefeb;
  color: #44423d;
  font-size: 11px;
  font-weight: 800;
}
.localsmokes-emt-field > div { min-width: 0; }
.localsmokes-emt-field strong {
  display: block;
  overflow-wrap: anywhere;
  color: #b42318;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.35;
}
.localsmokes-emt-field--code strong {
  font-size: 17px;
  letter-spacing: .08em;
}
.localsmokes-emt-security { margin-top: 18px; }
.localsmokes-emt-notes {
  margin: 20px 22px 22px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  color: #55524c;
  font-size: 11px;
  line-height: 1.55;
}
.localsmokes-emt-notes p { margin: 0 0 8px; }
.woocommerce-order-received .woocommerce-order-details {
  min-width: 0;
  margin: 0;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #faf9f6;
}
.woocommerce-order-received .woocommerce-order-details__title,
.woocommerce-order-received .woocommerce-customer-details h2 {
  margin: 0 0 18px;
  font: 700 30px/1 "Cormorant Garamond", Georgia, serif;
}
.woocommerce-order-received .woocommerce-order-details table.shop_table { margin: 0; background: #fff; }
.localsmokes-order-item-product {
  display: flex;
  align-items: center;
  gap: 12px;
}
.localsmokes-order-item-thumbnail {
  box-sizing: border-box;
  width: 64px !important;
  height: 64px !important;
  padding: 5px;
  flex: 0 0 64px;
  border-radius: 10px;
  background: #f2f2ee;
  object-fit: contain;
}
.localsmokes-order-item-product__name { min-width: 0; }
.woocommerce-order-received .woocommerce-customer-details {
  grid-column: 1 / -1;
  margin: 0;
  padding: 24px;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #faf9f6;
}
.woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses {
  box-sizing: border-box;
  width: 100% !important;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  float: none !important;
}
.woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses::before,
.woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses::after {
  display: none !important;
  content: none !important;
}
.woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses > .woocommerce-column {
  box-sizing: border-box;
  width: 100% !important;
  margin: 0;
  float: none !important;
}
.woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  margin: 0;
}
.woocommerce-account .content-main { width: min(1180px, calc(100% - (var(--pad) * 2))); margin-top: 24px; }
.woocommerce-account .content-card { max-width: none; padding: clamp(30px, 4.5vw, 58px); }
.woocommerce-account .content-card > h1 { margin: 0 0 clamp(34px, 5vw, 62px); font-size: clamp(46px, 5.2vw, 70px); letter-spacing: -.045em; }
.woocommerce-account .content-card > h1::before { content: "Customer account"; margin-bottom: 10px; display: block; color: #77736b; font: 700 10px/1.2 Inter, ui-sans-serif, sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.woocommerce-account .woocommerce { padding: 0; border-radius: 0; background: transparent; }
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) { display: grid; grid-template-columns: minmax(210px, 250px) minmax(0, 1fr); gap: clamp(32px, 5vw, 68px); align-items: start; }
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation { width: auto; margin: 0; float: none; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 8px; display: grid; gap: 2px; border: 1px solid #deddd7; border-radius: 14px; background: #f5f4ef; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { min-height: 46px; padding: 0 14px; display: flex; align-items: center; border: 0; border-radius: 8px; color: #45443f; font-size: 13px; font-weight: 600; text-decoration: none; transition: background .18s ease, color .18s ease; }
.woocommerce-account .woocommerce-MyAccount-navigation a:hover, .woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible { outline: 0; background: #e9e7df; color: #111; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: #111; color: #fff; }
.woocommerce-account .woocommerce-MyAccount-content { width: auto; min-width: 0; float: none; color: #353530; font-size: 14px; line-height: 1.65; }
.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-account .woocommerce-MyAccount-content > p:first-child { max-width: 680px; margin-bottom: 30px; color: #66635c; font-size: 15px; }
.woocommerce-account .woocommerce-Addresses { width: 100%; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; float: none; }
.woocommerce-account .woocommerce-Addresses::before, .woocommerce-account .woocommerce-Addresses::after { display: none; }
.woocommerce-account .woocommerce-Address { width: auto !important; min-width: 0; margin: 0; padding: clamp(22px, 3vw, 30px); float: none !important; border: 1px solid #deddd7; border-radius: 14px; background: #faf9f6; }
.woocommerce-account .woocommerce-Address-title { width: 100%; margin-bottom: 26px; display: flex; align-items: flex-start; flex-direction: column; gap: 16px; }
.woocommerce-account .woocommerce-Address-title::before, .woocommerce-account .woocommerce-Address-title::after { display: none; }
.woocommerce-account .woocommerce-Address-title h2 { width: 100%; max-width: none; margin: 0; float: none; font: 700 32px/1 "Cormorant Garamond", Georgia, serif; letter-spacing: -.025em; text-align: left; }
.woocommerce-account .woocommerce-Address-title .edit { max-width: 100%; min-height: 34px; padding: 0 13px; display: inline-flex; align-items: center; align-self: flex-start; float: none; border: 1px solid #cfcdc5; border-radius: 99px; color: #222; font-size: 11px; font-weight: 700; line-height: 1.2; text-decoration: none; white-space: normal; }
.woocommerce-account .woocommerce-Address-title .edit:hover, .woocommerce-account .woocommerce-Address-title .edit:focus-visible { border-color: #111; background: #111; color: #fff; }
.woocommerce-account .woocommerce-Address address { margin: 0; color: #69665f; font-style: normal; line-height: 1.65; }
.woocommerce-account .woocommerce-orders-table { margin-top: 24px; }
.woocommerce-account .woocommerce-orders-table .button { min-height: 36px; display: inline-flex; align-items: center; }
.woocommerce-account .woocommerce-form-login, .woocommerce-account .woocommerce-form-register, .woocommerce-account .woocommerce-EditAccountForm { max-width: 650px; margin: 0; padding: clamp(22px, 3vw, 34px); border: 1px solid #deddd7; border-radius: 14px; background: #faf9f6; }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  min-height: 72px;
  margin: 0 0 24px;
  padding: 15px 16px;
  display: flex;
  align-items: center;
  gap: 13px;
  border: 1px solid var(--line) !important;
  border-left: 4px solid #a97832 !important;
  border-radius: 14px;
  background: #faf9f6;
  color: #3f3e39;
  box-shadow: 0 10px 28px rgb(20 18 14 / 6%);
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}
.woocommerce-message:focus,
.woocommerce-info:focus,
.woocommerce-error:focus {
  outline: 0;
  box-shadow: 0 0 0 3px rgb(169 120 50 / 16%), 0 10px 28px rgb(20 18 14 / 6%);
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  position: static;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #171715;
  color: #fff;
  font-size: 13px;
  line-height: 1;
}
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
  min-height: 42px;
  margin-left: auto;
  padding: 0 19px;
  order: 2;
  float: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #171715;
  border-radius: 999px;
  background: #171715;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button { border-radius: 999px; }
.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover,
.woocommerce-message .button:focus-visible,
.woocommerce-info .button:focus-visible,
.woocommerce-error .button:focus-visible {
  border-color: #a97832;
  background: #a97832;
  color: #fff;
}
.woocommerce-message .button:active,
.woocommerce-info .button:active,
.woocommerce-error .button:active { transform: translateY(1px); }
.woocommerce-error { border-left-color: var(--red) !important; }
.woocommerce-error::before { background: var(--red); }

@media (max-width: 640px) {
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error {
    min-height: 0;
    padding: 15px;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 11px;
    font-size: 13px;
  }
  .woocommerce-message .button,
  .woocommerce-info .button,
  .woocommerce-error .button {
    width: calc(100% - 39px);
    margin: 1px 0 0 39px;
    flex: 0 0 calc(100% - 39px);
  }
}

@media (max-width: 980px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce div.product { grid-template-columns: 1fr; }
  .woocommerce div.product .woocommerce-tabs, .woocommerce div.product .related { grid-column: auto; }
  .woocommerce-checkout .col2-set, #order_review_heading, .woocommerce-checkout-review-order { width: 100%; float: none; }
  #order_review_heading { margin-top: 40px; }
  .woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) { grid-template-columns: minmax(190px, 220px) minmax(0, 1fr); gap: 28px; }
  .woocommerce-account .woocommerce-Addresses { grid-template-columns: 1fr; }
  .woocommerce-order-received .woocommerce-order { grid-template-columns: 1fr; }
  .woocommerce-order-received .woocommerce-thankyou-order-received,
  .woocommerce-order-received .woocommerce-order-overview,
  .woocommerce-order-received .woocommerce-customer-details { grid-column: auto; }
  .woocommerce-order-received .woocommerce-customer-details { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .content-main, .commerce-main { width: calc(100% - 32px); }
  .woocommerce ul.products { gap: 32px 12px; }
  .shop-filter-bar .filters { max-width: 100%; padding-bottom: 4px; overflow-x: auto; flex-wrap: nowrap; }
  .shop-filter-bar .filters a { flex: 0 0 auto; }
  .woocommerce ul.products li.product .product-name { font-size: 15px; }
  .product-action { right: 8px; bottom: 8px; opacity: 1; transform: none; }
  .product-action .button { min-width: 44px; min-height: 44px; padding: 0 11px !important; overflow: hidden; white-space: nowrap; }
  .product-action .product-configure-button { max-width: calc(100vw / 2 - 42px); font-size: 10px !important; }
  .localsmokes-discount-badge { top: 8px; left: 8px; padding: 5px 7px; font-size: 11px; }
  .product-line { gap: 6px; }
  .pill { font-size: 9px; }
  .localsmokes-merch-rating { padding: 4px 5px; gap: 2px; font-size: 10px; }
  .localsmokes-merch-rating__stars .dashicons { width: 11px; height: 11px; font-size: 11px; }
  .woocommerce ul.products li.product .price, .product-price { font-size: 17px; }
  .woocommerce ul.products li.product .price del, .product-price del { font-size: 13px; }
  .woocommerce div.product .product_title { font-size: 43px; }
  .woocommerce-cart-form, .cart_totals, .woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { padding: 16px; }
  .woocommerce table.shop_table_responsive tr td { padding-left: 42%; }
  .woocommerce-account .content-main { width: calc(100% - 24px); margin-top: 12px; }
  .woocommerce-account .content-card { padding: 26px 18px 32px; border-radius: 16px; }
  .woocommerce-account .content-card > h1 { margin-bottom: 30px; font-size: 46px; }
  .woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) { display: block; }
  .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; }
  .woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 30px; overflow-x: auto; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { min-width: max-content; padding: 5px; display: flex; }
  .woocommerce-account .woocommerce-MyAccount-navigation a { min-height: 42px; padding: 0 13px; white-space: nowrap; }
  .woocommerce-account .woocommerce-Address { padding: 22px 19px; }
  .woocommerce-account .woocommerce-Address-title h2 { font-size: 29px; }
  .woocommerce-order-received .woocommerce-order {
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    border-radius: 0;
  }
  .woocommerce-order-received main.content-main { width: 100%; margin-top: 5px; margin-bottom: 0; padding-inline: 4px; }
  .woocommerce-order-received .content-card {
    margin-bottom: 0 !important;
    padding: 6px 2px 8px;
    border: 0;
    border-radius: 0;
    background: transparent;
  }
  .woocommerce-order-received .content-card > .woocommerce { padding: 0; }
  .woocommerce-order-received .content-card > h1 {
    margin-bottom: 5px;
    color: #8a6227;
    font: 750 10px/1.2 Inter, ui-sans-serif, sans-serif;
    letter-spacing: .15em;
    text-transform: uppercase;
  }
  .woocommerce-order-received .woocommerce-thankyou-order-received {
    margin-bottom: 8px;
    font: 700 25px/1.05 "Cormorant Garamond", Georgia, serif !important;
    letter-spacing: -.02em;
  }
  .woocommerce-order-received .woocommerce-order > * { width: 100%; min-width: 0; max-width: 100%; }
  .woocommerce-order-received .woocommerce-order > p:empty { display: none; }
  .woocommerce-order-received .woocommerce-order-overview {
    margin-bottom: 0 !important;
    padding: 6px 2px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px 12px;
    border-width: 1px 0;
    border-radius: 0;
    background: transparent;
  }
  .woocommerce-order-received .woocommerce-order-overview::before,
  .woocommerce-order-received .woocommerce-order-overview::after {
    display: none !important;
    content: none !important;
  }
  .woocommerce-order-received .woocommerce-order-overview__payment-method { grid-column: 1 / -1; }
  .woocommerce-order-received .woocommerce-order-overview li {
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    border: 0 !important;
    color: #77736b;
    font: 650 9px/1.25 Inter, ui-sans-serif, sans-serif !important;
    letter-spacing: .035em;
    text-transform: uppercase;
  }
  .woocommerce-order-received .woocommerce-order-overview li strong {
    max-width: 100%;
    margin-top: 2px;
    display: block;
    overflow-wrap: anywhere;
    color: var(--ink);
    font: 700 12px/1.25 Inter, ui-sans-serif, sans-serif !important;
    letter-spacing: 0;
    text-transform: none;
  }
  .woocommerce-order-received .woocommerce-order-overview__email strong { font-size: 11px !important; }
  .woocommerce-order-received .woocommerce-order-overview__total strong { color: #8a6227; font-size: 13px !important; }
  .woocommerce-order-received .woocommerce-order-overview__payment-method strong { font-size: 12px !important; }
  .localsmokes-emt-confirmation__header,
  .localsmokes-emt-amount { padding: 12px; }
  .localsmokes-emt-confirmation {
    border-width: 1px 0;
    border-radius: 0;
    background: transparent;
  }
  .localsmokes-emt-confirmation__header { gap: 8px; }
  .localsmokes-emt-confirmation__header h2 { font-size: 26px; }
  .localsmokes-emt-status { width: 100%; min-width: 0; padding: 11px 12px 11px 9px; grid-template-columns: 92px minmax(0, 1fr); gap: 10px; }
  .localsmokes-emt-status > div > strong { font-size: 15px; }
  .localsmokes-emt-status p { font-size: 11px; line-height: 1.4; }
  .localsmokes-emt-warning,
  .localsmokes-emt-amount,
  .localsmokes-emt-lead,
  .localsmokes-emt-deposit,
  .localsmokes-emt-security,
  .localsmokes-emt-fields__heading,
  .localsmokes-emt-fields,
  .localsmokes-emt-notes { margin-right: 4px; margin-left: 4px; }
  .localsmokes-emt-warning {
    margin-top: 7px;
    padding: 7px 8px;
    border-width: 1px 0;
    border-radius: 0;
  }
  .localsmokes-emt-warning span { font-size: 10px; }
  .localsmokes-emt-amount {
    margin-top: 7px;
    padding: 9px 8px;
    gap: 8px;
    border-width: 1px 0;
    border-radius: 0;
  }
  .localsmokes-emt-amount__details { gap: 2px; }
  .localsmokes-emt-amount__value strong { font-size: 27px; }
  .localsmokes-emt-amount__details p { margin-top: 0; font-size: 9px; }
  .localsmokes-emt-copy { min-width: 54px; min-height: 30px; padding-inline: 9px; font-size: 10px; }
  .localsmokes-emt-lead { margin-top: 7px; margin-bottom: 7px; font-size: 10px; line-height: 1.4; }
  .localsmokes-emt-deposit,
  .localsmokes-emt-security { margin-bottom: 10px; }
  .localsmokes-emt-fields__heading { margin-top: 0; margin-bottom: 7px; gap: 8px; }
  .localsmokes-emt-fields__heading strong { font-size: 9px; }
  .localsmokes-emt-fields { border-width: 1px 0; border-radius: 0; }
  .localsmokes-emt-field { padding: 7px 4px; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 6px; }
  .localsmokes-emt-field__number { width: 24px; height: 24px; border-radius: 6px; }
  .localsmokes-emt-field strong { font-size: 12px; }
  .localsmokes-emt-field--code strong { font-size: 13px; }
  .localsmokes-emt-security { margin-top: 10px; }
  .localsmokes-emt-notes { margin-top: 10px; margin-bottom: 12px; padding-top: 10px; font-size: 10px; }
  .localsmokes-emt-notes p { margin-bottom: 5px; }
  .woocommerce-order-received .woocommerce-order-details,
  .woocommerce-order-received .woocommerce-customer-details {
    padding: 9px 4px;
    border-width: 1px 0;
    border-radius: 0;
    background: transparent;
  }
  .woocommerce-order-received .woocommerce-order-details__title,
  .woocommerce-order-received .woocommerce-customer-details h2 { margin-bottom: 6px; font-size: 22px; }
  .woocommerce-order-received .woocommerce-order-details table.shop_table {
    border: 0;
    border-radius: 0;
    background: transparent;
  }
  .woocommerce-order-received .woocommerce-order-details table.shop_table th,
  .woocommerce-order-received .woocommerce-order-details table.shop_table td { padding: 6px 4px; font-size: 10px; }
  .woocommerce-order-received .woocommerce-order-details .wc-item-meta { display: none; }
  .woocommerce-order-received .woocommerce-customer-details { display: block; }
  .woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
  .woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses > .woocommerce-column { padding: 0 7px; }
  .woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses > .woocommerce-column:first-child { padding-left: 0; border-right: 1px solid var(--line); }
  .woocommerce-order-received .woocommerce-customer-details > .woocommerce-columns--addresses > .woocommerce-column:last-child { padding-right: 0; }
  .woocommerce-order-received .woocommerce-customer-details address {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 9px;
    line-height: 1.35;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper {
    margin-top: 7px;
    padding-top: 7px;
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    border-top: 1px solid var(--line);
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper h2 {
    margin: 0;
    font: 700 22px/1 "Cormorant Garamond", Georgia, serif !important;
    letter-spacing: 0;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper .wc-block-order-confirmation-summary,
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-order-confirmation-summary {
    margin: 0 !important;
    padding: 0;
    border: 0;
    border-radius: 0;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper .wc-block-order-confirmation-summary ul,
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-order-confirmation-summary ul {
    margin: 0;
    padding: 0;
    display: block;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper dl {
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper dl > div {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    border: 0 !important;
    background: transparent !important;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper dt,
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper dd {
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    font: 650 10px/1.25 Inter, ui-sans-serif, sans-serif !important;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper dd {
    font-weight: 500 !important;
    white-space: nowrap;
  }
  .woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper .wc-block-order-confirmation-summary-list-item {
    width: 100% !important;
    min-height: 0 !important;
    margin: 0;
    padding: 5px 4px !important;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    border-top: 1px solid var(--line);
    font-family: Inter, ui-sans-serif, sans-serif;
  }
  .woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key,
  .woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value {
    display: block !important;
    font-size: 12px;
    line-height: 1.3;
  }
  .woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key {
    min-width: 0;
    font: 650 10px/1.2 Inter, ui-sans-serif, sans-serif !important;
  }
  .woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value {
    font: 650 10px/1.2 Inter, ui-sans-serif, sans-serif !important;
    white-space: nowrap;
  }
  .localsmokes-order-item-thumbnail {
    width: 36px !important;
    height: 36px !important;
    flex-basis: 36px;
  }

  /* WooCommerce Blocks can retain desktop min-content widths after its
     address form hydrates. Keep every checkout step within the phone viewport. */
  .wc-block-checkout,
  .wc-block-checkout__main,
  .wc-block-checkout__sidebar,
  .wc-block-components-checkout-step,
  .wc-block-components-checkout-step__heading-container,
  .wc-block-components-checkout-step__heading,
  .wc-block-components-checkout-step__content,
  .wc-block-components-address-form,
  .wc-block-components-address-form > *,
  .wc-block-components-address-form .wc-block-components-text-input,
  .wc-block-components-address-form .wc-blocks-components-select,
  .wc-block-components-address-form .wc-blocks-components-select__container,
  .wc-block-components-address-form input:not([type="checkbox"]):not([type="radio"]),
  .wc-block-components-address-form select {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .localsmokes-checkout-presence { margin-bottom: 4px; padding-block: 8px; }
}

/* Stable WooCommerce cart actions after AJAX fragments and Blocks hydration. */
.woocommerce a.button.add_to_cart_button,
.woocommerce button.button.single_add_to_cart_button,
.woocommerce .wp-block-button__link.add_to_cart_button,
.wc-block-grid__product-add-to-cart .wp-block-button__link {
  border: 1px solid #a97832 !important;
  background: #b88c4c !important;
  color: #111 !important;
  box-shadow: 0 8px 22px rgb(91 60 20 / 14%);
  font-weight: 750 !important;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.woocommerce a.button.add_to_cart_button:hover,
.woocommerce a.button.add_to_cart_button:focus-visible,
.woocommerce button.button.single_add_to_cart_button:hover,
.woocommerce button.button.single_add_to_cart_button:focus-visible,
.woocommerce .wp-block-button__link.add_to_cart_button:hover,
.woocommerce .wp-block-button__link.add_to_cart_button:focus-visible,
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.wc-block-grid__product-add-to-cart .wp-block-button__link:focus-visible {
  border-color: #111 !important;
  background: #111 !important;
  color: #fff !important;
  transform: translateY(-1px);
}

.woocommerce a.button.add_to_cart_button:disabled,
.woocommerce button.button.single_add_to_cart_button:disabled,
.woocommerce .wp-block-button__link.add_to_cart_button[aria-disabled="true"] {
  border-color: #d2d1cb !important;
  background: #e4e2dc !important;
  color: #777772 !important;
  box-shadow: none;
}

.woocommerce ul.products li.product .product-action .button.added {
  display: none !important;
}

.woocommerce ul.products li.product .product-action .added_to_cart.wc-forward {
  min-height: 40px;
  padding: 0 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #111;
  color: #fff;
  box-shadow: 0 8px 24px rgb(0 0 0 / 18%);
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.woocommerce ul.products li.product .product-action .added_to_cart.wc-forward::after {
  content: "→";
  font-size: 13px;
}

.woocommerce ul.products li.product .product-action .added_to_cart.wc-forward:hover,
.woocommerce ul.products li.product .product-action .added_to_cart.wc-forward:focus-visible {
  border-color: #333;
  background: #333;
}

.woocommerce-mini-cart-item .localsmokes-mini-cart__details dl.variation {
  width: 100%;
  margin: 7px 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 2px 6px;
  border: 0 !important;
  color: #696965;
  font-size: 11px;
  line-height: 1.4;
}

.woocommerce-mini-cart-item .localsmokes-mini-cart__details dl.variation dt,
.woocommerce-mini-cart-item .localsmokes-mini-cart__details dl.variation dd {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  display: inline !important;
  border: 0 !important;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.woocommerce-mini-cart-item .localsmokes-mini-cart__details dl.variation dt {
  font-weight: 600;
}

.woocommerce-mini-cart-item .localsmokes-mini-cart__details dl.variation dd p {
  margin: 0 !important;
  display: inline;
  color: inherit;
  font: inherit;
}

.woocommerce-mini-cart-item .localsmokes-mini-cart__quantity-row {
  align-items: center;
  flex-direction: row;
}

.woocommerce-mini-cart__buttons.buttons {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
}

.woocommerce-mini-cart__buttons.buttons a.button {
  min-width: 0;
  min-height: 50px;
  padding: 0 15px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #111 !important;
  border-radius: 11px !important;
  background: #111 !important;
  color: #fff !important;
  box-shadow: none;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}

.woocommerce-mini-cart__buttons.buttons a.button:first-child {
  background: #fff !important;
  color: #111 !important;
}

.woocommerce-mini-cart__buttons.buttons a.button:hover,
.woocommerce-mini-cart__buttons.buttons a.button:focus-visible {
  background: #2d2d2b !important;
  color: #fff !important;
}

.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__form {
  align-items: stretch;
  gap: 10px;
}

.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__input input {
  min-height: 52px;
  border-color: #bdbdb7;
  border-radius: 10px !important;
  background: #fff;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 14px;
}

.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button.wc-block-components-button {
  min-width: 104px;
  min-height: 52px;
  padding: 0 20px !important;
  border: 1px solid #111 !important;
  border-radius: 10px !important;
  background: #111 !important;
  color: #fff !important;
  box-shadow: none;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button.wc-block-components-button:disabled {
  border-color: #d3d3cd !important;
  background: #e7e7e2 !important;
  color: #777772 !important;
  opacity: 1;
}

.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
  width: 100%;
  min-height: 56px !important;
  padding: 0 24px !important;
  border: 1px solid #111 !important;
  border-radius: 10px !important;
  background: #111 !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgb(0 0 0 / 12%);
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2;
}

.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
  color: inherit !important;
}

@media (max-width: 480px) {
  .woocommerce-mini-cart__buttons.buttons {
    grid-template-columns: 1fr;
  }

  .wp-block-woocommerce-checkout .wc-block-components-totals-coupon__form {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button.wc-block-components-button {
    min-width: 88px;
    padding-inline: 14px !important;
  }
}

/* Fixed 50-carton mix-and-match builder. */
.localsmokes-mix-match {
  margin: 28px 0 22px;
  overflow: hidden;
  border: 1px solid #d8d6cf;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgb(17 17 17 / 6%);
}

.localsmokes-mix-match__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: start;
  padding: 24px;
  background: #f0e6d2;
}

.localsmokes-mix-match__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: #71654f;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.localsmokes-mix-match__header h2 {
  margin: 0 0 8px;
  font-size: clamp(30px, 4vw, 44px);
  line-height: .96;
}

.localsmokes-mix-match__header p {
  max-width: 600px;
  margin: 0;
  color: #5f5b53;
  font-size: 14px;
  line-height: 1.6;
}

.localsmokes-mix-match__counter {
  min-width: 124px;
  padding: 13px 16px;
  border: 1px solid rgb(17 17 17 / 14%);
  border-radius: 14px;
  background: rgb(255 255 255 / 72%);
  text-align: center;
}

.localsmokes-mix-match__counter strong,
.localsmokes-mix-match__counter span {
  display: block;
  font-family: Inter, ui-sans-serif, sans-serif;
}

.localsmokes-mix-match__counter strong {
  color: #111;
  font-size: 22px;
  line-height: 1.1;
}

.localsmokes-mix-match__counter span {
  margin-top: 4px;
  color: #68645c;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.localsmokes-mix-match.is-complete .localsmokes-mix-match__counter {
  border-color: #2f7f4f;
  background: #e7f3ea;
}

.localsmokes-mix-match__toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 18px 20px;
  border-bottom: 1px solid #e4e2dc;
}

.localsmokes-mix-match__toolbar label {
  margin: 0;
}

.localsmokes-mix-match__search {
  width: 100%;
  min-height: 44px;
  margin: 0 !important;
  padding: 0 15px !important;
  border: 1px solid #c9c6be !important;
  border-radius: 10px !important;
  background: #fafaf8 !important;
  font-family: Inter, ui-sans-serif, sans-serif !important;
  font-size: 14px !important;
}

.localsmokes-mix-match__clear {
  min-height: 44px;
  padding: 0 4px;
  border: 0;
  border-bottom: 1px solid #111;
  border-radius: 0;
  background: transparent;
  color: #111;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.localsmokes-mix-match__products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-height: 540px;
  padding: 16px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-color: #b7b2a8 transparent;
}

.localsmokes-mix-match__product {
  display: grid;
  grid-template-columns: 66px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid #e0ded7;
  border-radius: 13px;
  background: #fafaf8;
}

.localsmokes-mix-match__product[hidden] {
  display: none;
}

.localsmokes-mix-match__image {
  grid-row: 1 / 3;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 9px;
  background: #efefec;
}

.localsmokes-mix-match__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.localsmokes-mix-match__details {
  min-width: 0;
  font-family: Inter, ui-sans-serif, sans-serif;
}

.localsmokes-mix-match__details > strong,
.localsmokes-mix-match__details > span,
.localsmokes-mix-match__details > small {
  display: block;
}

.localsmokes-mix-match__details strong {
  overflow: hidden;
  color: #171716;
  font-size: 13px;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.localsmokes-mix-match__details > span,
.localsmokes-mix-match__details > small {
  margin-top: 3px;
  color: #747069;
  font-size: 10px;
  line-height: 1.3;
}

.localsmokes-mix-match__adjustment {
  width: max-content;
  max-width: 100%;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.localsmokes-mix-match__adjustment .woocommerce-Price-amount,
.localsmokes-mix-match__adjustment .woocommerce-Price-currencySymbol {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.localsmokes-mix-match__stepper {
  display: grid;
  grid-column: 2;
  grid-template-columns: 32px 44px 32px;
  width: fit-content;
  overflow: hidden;
  border: 1px solid #cfcac0;
  border-radius: 9px;
  background: #fff;
}

.localsmokes-mix-match__stepper button,
.localsmokes-mix-match__stepper input {
  width: auto !important;
  min-width: 0 !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  box-shadow: none !important;
  font-family: Inter, ui-sans-serif, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-align: center;
}

.localsmokes-mix-match__stepper button {
  cursor: pointer;
}

.localsmokes-mix-match__stepper button:disabled {
  color: #bbb7ae !important;
  cursor: default;
}

.localsmokes-mix-match__stepper input {
  border-inline: 1px solid #e1ded7 !important;
  appearance: textfield;
}

.localsmokes-mix-match__stepper input::-webkit-inner-spin-button,
.localsmokes-mix-match__stepper input::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}

.localsmokes-mix-match__empty,
.localsmokes-mix-match__status {
  margin: 0;
  padding: 14px 20px;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 12px;
}

.localsmokes-mix-match__empty {
  color: #6e6961;
  text-align: center;
}

.localsmokes-mix-match__status {
  border-top: 1px solid #e4e2dc;
  background: #f8f8f5;
  color: #5d5952;
  font-weight: 700;
}

.localsmokes-mix-match.is-complete .localsmokes-mix-match__status {
  background: #e7f3ea;
  color: #235f3c;
}

.localsmokes-mix-match-product form.cart .single_add_to_cart_button:disabled {
  border-color: #d2d0ca !important;
  background: #e2e1dc !important;
  color: #77736c !important;
  cursor: not-allowed;
  opacity: 1;
}

body.localsmokes-mix-match-product div.product form.cart {
  display: block;
}

.localsmokes-mix-match-product form.cart .single_add_to_cart_button {
  width: 100%;
  margin-top: 14px;
}

.localsmokes-mix-match__bundle-quantity {
  color: #5e5a53;
  font-family: Inter, ui-sans-serif, sans-serif;
  font-size: 13px;
  font-weight: 700;
}

@media (max-width: 720px) {
  .localsmokes-mix-match__header {
    grid-template-columns: 1fr;
  }

  .localsmokes-mix-match__counter {
    width: 100%;
  }

  .localsmokes-mix-match__toolbar {
    grid-template-columns: 1fr;
  }

  .localsmokes-mix-match__clear {
    justify-self: start;
  }

  .localsmokes-mix-match__products {
    grid-template-columns: 1fr;
    max-height: 480px;
  }
}

/* Compact Google Maps attribution follows the provider's text requirements. */
.localsmokes-address-suggestions__attribution a {
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: normal;
  white-space: nowrap;
  color: #5e5e5e;
}

/* Keep product reviews compact, with accessible numbered navigation. */
.product-review-pagination { margin: 28px 0; }
.product-review-pagination ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.product-review-pagination a,
.product-review-pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px 14px; border: 1px solid #d7d7d2; border-radius: 8px; color: inherit; text-decoration: none; }
.product-review-pagination .current { background: #171717; color: #fff; border-color: #171717; }
.product-review-pagination a:hover { background: #eae9e5; }
.product-review-pagination a:focus-visible { outline: 2px solid #94772b; outline-offset: 3px; }
.product-reviews-panel { scroll-margin-top: 100px; }
.product-reviews-panel #review_form_wrapper { margin-top: 36px; }
