/** Shopify CDN: Minification failed

Line 17:7 Expected identifier but found whitespace
Line 17:9 Unexpected "{"
Line 17:19 Expected ":"
Line 18:9 Expected identifier but found whitespace
Line 18:11 Unexpected "{"
Line 18:21 Expected ":"
Line 19:10 Expected identifier but found whitespace
Line 19:12 Unexpected "{"
Line 19:22 Expected ":"
Line 20:11 Expected identifier but found whitespace
... and 5 more hidden warnings

**/
:root {
  --bg: {{ settings.background | default: '#F7F7F5' }};
  --text: {{ settings.text | default: '#111111' }};
  --muted: {{ settings.muted | default: '#6E6E6A' }};
  --accent: {{ settings.accent | default: '#111111' }};
  --surface: {{ settings.surface | default: '#FFFFFF' }};
  --border: rgba(17,17,17,.12);
  --page: 1240px;
  --radius: 18px;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--text); font-family: Arial, Helvetica, sans-serif; font-size:16px; line-height:1.5; }
img { max-width:100%; display:block; }
a { color:inherit; text-decoration:none; }
button, input, select { font:inherit; }
button { cursor:pointer; }
.page-width { width:min(calc(100% - 48px), var(--page)); margin:0 auto; }
.narrow { max-width:860px; }
.skip-link { position:absolute; left:-9999px; }
.skip-link:focus { left:10px; top:10px; z-index:999; background:#fff; padding:10px; }

.announcement { height:32px; background:#202020; color:#fff; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.announcement a { opacity:.96; }
.site-header { background:#101010; color:#fff; position:relative; z-index:20; }
.site-header.is-sticky { position:sticky; top:0; }
.header-inner { height:108px; max-width:1240px; margin:auto; padding:0 24px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:30px; }
.brand { display:flex; flex-direction:column; width:max-content; justify-self:center; align-items:center; line-height:1; }
.brand-name { font-size:25px; font-weight:800; letter-spacing:.04em; }
.brand-tagline { margin-top:6px; font-size:7px; letter-spacing:.25em; opacity:.55; }
.desktop-nav { display:flex; gap:28px; align-items:center; font-size:13px; font-weight:600; }
.desktop-nav a { opacity:.72; transition:opacity .2s; }
.desktop-nav a:hover { opacity:1; }
.header-actions { justify-self:end; display:flex; align-items:center; gap:18px; }
.icon-btn, .cart-trigger { width:32px; height:32px; display:grid; place-items:center; background:none; border:0; color:#fff; position:relative; }
.icon-btn svg, .cart-trigger svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.5; }
.cart-count { position:absolute; top:-2px; right:-5px; min-width:15px; height:15px; padding:0 4px; border-radius:20px; background:#fff; color:#111; font-size:9px; display:grid; place-items:center; font-weight:700; }
.mobile-menu-btn { display:none; }
.mobile-menu { display:none; }

.hero { min-height:720px; position:relative; background:#090909; color:#fff; overflow:hidden; }
.hero-media, .hero-media img, .hero-placeholder { position:absolute; inset:0; width:100%; height:100%; }
.hero-image { object-fit:cover; object-position:center; }
.hero-placeholder { background:radial-gradient(circle at 70% 45%, #3b3b3b 0, #151515 35%, #050505 75%); overflow:hidden; }
.placeholder-glow { position:absolute; width:480px; height:480px; right:15%; top:15%; border-radius:50%; background:rgba(255,255,255,.07); filter:blur(60px); }
.placeholder-shaker { position:absolute; right:17%; bottom:-130px; width:300px; height:660px; border-radius:65px 65px 45px 45px; background:linear-gradient(110deg,#111,#2a2a2a,#080808); box-shadow:0 20px 90px rgba(0,0,0,.8); display:flex; justify-content:center; padding-top:150px; }
.placeholder-logo { font-size:13px; font-weight:800; letter-spacing:.12em; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.12) 65%,rgba(0,0,0,.25)); }
.hero-content { position:relative; min-height:720px; display:flex; align-items:center; }
.hero-copy { max-width:680px; padding:50px 0 90px; }
.eyebrow { font-size:11px; letter-spacing:.19em; font-weight:800; margin:0 0 18px; text-transform:uppercase; }
.hero h1 { font-size:clamp(54px,7vw,96px); line-height:.94; letter-spacing:-.055em; margin:0 0 28px; max-width:700px; }
.hero-subtitle { font-size:18px; line-height:1.55; max-width:560px; color:rgba(255,255,255,.78); }
.hero-buttons { display:flex; gap:25px; align-items:center; margin-top:34px; }
.btn { border:0; min-height:54px; padding:0 28px; display:inline-flex; align-items:center; justify-content:center; font-weight:800; font-size:13px; letter-spacing:.02em; border-radius:5px; transition:transform .2s, opacity .2s; }
.btn:hover { transform:translateY(-2px); }
.btn-light { background:#fff; color:#111; }
.btn-dark { background:#111; color:#fff; }
.btn-full { width:100%; }
.text-link { font-weight:800; font-size:13px; display:inline-flex; gap:10px; align-items:center; border:0; background:none; padding:0; }
.text-link span { transition:transform .2s; }
.text-link:hover span { transform:translateX(4px); }
.text-link-light { color:#fff; }
.hero-bottom-note { position:absolute; left:0; right:0; bottom:0; border-top:1px solid rgba(255,255,255,.18); display:flex; justify-content:center; gap:55px; padding:16px 20px; font-size:9px; letter-spacing:.18em; font-weight:700; opacity:.7; }

.marquee { background:#111; color:#fff; overflow:hidden; white-space:nowrap; border-top:1px solid #303030; border-bottom:1px solid #303030; }
.marquee-track { display:flex; width:max-content; animation:scroll 24s linear infinite; align-items:center; padding:16px 0; }
.marquee span { font-size:12px; font-weight:800; letter-spacing:.17em; padding:0 30px; }
.marquee b { opacity:.5; }
@keyframes scroll { to { transform:translateX(-50%); } }

.section { padding:115px 0; }
.section-heading { margin-bottom:60px; }
.split-heading { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:end; }
.section-heading h2, .center-heading h2, .story-copy h2, .faq h2, .newsletter-section h2 { font-size:clamp(40px,5vw,64px); line-height:.98; letter-spacing:-.05em; margin:0; }
.split-heading > p { color:var(--muted); font-size:16px; max-width:450px; margin:0; }
.benefit-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--border); }
.benefit-card { padding:28px 28px 30px 0; border-right:1px solid var(--border); min-height:260px; }
.benefit-card + .benefit-card { padding-left:28px; }
.benefit-card:last-child { border-right:0; }
.benefit-number { font-size:10px; letter-spacing:.15em; color:#999; }
.benefit-icon { font-size:28px; margin:35px 0 20px; }
.benefit-card h3 { margin:0 0 10px; font-size:18px; letter-spacing:-.02em; }
.benefit-card p { color:var(--muted); font-size:14px; margin:0; }

.featured-product { background:#ededeb; }
.product-feature-grid { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:90px; }
.product-feature-media { background:#f9f9f7; aspect-ratio:1/1; position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.product-feature-media img { width:100%; height:100%; object-fit:cover; mix-blend-mode:multiply; }
.media-badge { position:absolute; left:20px; bottom:20px; background:#111; color:#fff; font-size:9px; letter-spacing:.15em; padding:9px 11px; }
.product-feature-copy h2 { font-size:clamp(38px,4vw,60px); line-height:1; letter-spacing:-.05em; margin:0 0 15px; }
.rating-line { display:flex; gap:12px; align-items:center; font-size:11px; color:var(--muted); margin-bottom:22px; }
.rating-line span:first-child { color:#111; letter-spacing:.12em; }
.price-large { font-size:25px; font-weight:800; margin:8px 0 18px; }
.compare-price { color:#888; text-decoration:line-through; margin-top:-10px; margin-bottom:18px; }
.product-description { color:var(--muted); font-size:15px; line-height:1.65; }
.product-form { margin-top:30px; }
.variant-select { margin:0 0 15px; }
.variant-select label, .quantity-row label { display:block; font-size:11px; font-weight:800; margin-bottom:7px; }
.variant-select select, .quantity-row input, .search-form input { width:100%; border:1px solid var(--border); background:#fff; min-height:50px; padding:0 14px; border-radius:4px; }
.trust-row { border-top:1px solid var(--border); margin-top:22px; padding-top:18px; display:grid; gap:8px; font-size:11px; color:#555; }
.empty-feature { text-align:center; padding:70px; background:#fff; }

.story-section { display:grid; grid-template-columns:1fr 1fr; min-height:680px; }
.story-media { min-height:650px; background:#161616; }
.story-media img { width:100%; height:100%; object-fit:cover; }
.story-placeholder { height:100%; min-height:650px; display:grid; place-items:center; background:radial-gradient(circle,#393939,#090909 65%); color:#fff; font-size:24px; font-weight:800; letter-spacing:.1em; }
.story-copy { display:flex; flex-direction:column; justify-content:center; padding:80px clamp(40px,8vw,120px); background:#fff; }
.story-copy h2 { margin-bottom:30px; }
.rich-copy { color:var(--muted); line-height:1.75; }
.rich-copy p { margin:0 0 15px; }
.story-copy .text-link { margin-top:30px; width:max-content; }

.testimonials { background:#fff; }
.center-heading { text-align:center; max-width:700px; margin:0 auto 55px; }
.testimonial-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.testimonial { background:var(--bg); padding:34px; min-height:260px; display:flex; flex-direction:column; }
.stars { letter-spacing:.16em; font-size:12px; margin-bottom:25px; }
.testimonial blockquote { font-size:20px; line-height:1.35; letter-spacing:-.02em; margin:0; flex:1; }
.customer { font-size:12px; font-weight:800; margin-top:25px; }
.customer span { font-weight:400; color:#888; }

.faq { background:#f0f0ee; }
.faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; }
.faq h2 { margin-bottom:25px; }
.faq-grid > div:first-child > p:last-child { color:var(--muted); max-width:400px; }
.faq-list { border-top:1px solid var(--border); }
.faq-list details { border-bottom:1px solid var(--border); }
.faq-list summary { list-style:none; cursor:pointer; padding:24px 0; font-weight:800; display:flex; justify-content:space-between; gap:20px; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { font-size:24px; font-weight:400; transition:transform .2s; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-answer { padding:0 45px 25px 0; color:var(--muted); font-size:14px; }

.newsletter-section { background:#111; color:#fff; padding:70px 0; }
.newsletter-inner { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.newsletter-section .eyebrow { opacity:.5; }
.newsletter-large { display:flex; border-bottom:1px solid rgba(255,255,255,.5); }
.newsletter-large input { flex:1; background:transparent; border:0; outline:0; color:#fff; min-height:56px; }
.newsletter-large input::placeholder { color:#aaa; }
.newsletter-large button { background:none; border:0; color:#fff; font-weight:800; padding:0 0 0 20px; }

.footer { background:#101010; color:#fff; position:relative; }
.footer-wave { height:55px; background:linear-gradient(175deg, transparent 52%, #101010 53%); margin-top:-1px; }
.footer-grid { display:grid; grid-template-columns:1.4fr .8fr .8fr 1fr; gap:50px; padding:65px 0; }
.footer-brand { font-size:21px; font-weight:800; letter-spacing:.05em; margin-bottom:18px; }
.footer p { color:#8f8f8f; font-size:13px; max-width:330px; }
.footer h3 { font-size:13px; margin:0 0 18px; }
.footer a { display:block; color:#8f8f8f; font-size:13px; margin:0 0 10px; }
.footer a:hover { color:#fff; }
.newsletter-form { display:flex; border-bottom:1px solid #555; margin-top:20px; }
.newsletter-form input { background:none; border:0; outline:0; color:#fff; flex:1; min-height:42px; }
.newsletter-form input::placeholder { color:#777; }
.arrow-btn { background:none; border:0; color:#fff; font-size:20px; }
.footer-bottom { border-top:1px solid #292929; padding:20px 0; display:flex; justify-content:space-between; color:#686868; font-size:10px; letter-spacing:.04em; }

.product-page { padding-top:70px; }
.product-page-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:80px; align-items:start; }
.product-gallery { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.gallery-image { background:#fff; }
.gallery-image img { width:100%; height:100%; object-fit:cover; }
.product-info { position:sticky; top:130px; padding-top:20px; }
.product-info h1 { font-size:clamp(42px,5vw,70px); line-height:.96; letter-spacing:-.055em; margin:0 0 18px; }
.quantity-row { margin:0 0 15px; display:grid; grid-template-columns:1fr 110px; align-items:end; gap:15px; }
.quantity-row input { width:110px; }
.trust-stack { margin-top:28px; border-top:1px solid var(--border); }
.trust-stack > div { display:flex; gap:13px; align-items:flex-start; padding:16px 0; border-bottom:1px solid var(--border); }
.trust-stack b { font-size:13px; }
.trust-stack strong { display:block; font-size:12px; }
.trust-stack small { color:#888; display:block; font-size:11px; margin-top:2px; }
.product-note { background:#fff; padding:15px; margin-top:20px; font-size:12px; }

.collection-page { padding-top:80px; }
.collection-heading { max-width:750px; margin-bottom:55px; }
.collection-heading h1 { font-size:clamp(48px,7vw,86px); line-height:.95; letter-spacing:-.055em; margin:0 0 20px; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.product-card { display:block; }
.product-card-image { aspect-ratio:1/1; background:#fff; position:relative; overflow:hidden; }
.product-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.product-card:hover img { transform:scale(1.035); }
.product-card-info { display:flex; justify-content:space-between; gap:15px; padding:15px 2px; }
.product-card-info h2 { font-size:14px; margin:0; }
.product-card-info span { font-size:14px; font-weight:800; white-space:nowrap; }
.sold-badge { position:absolute; top:15px; left:15px; background:#111; color:#fff; padding:7px 9px; font-size:9px; text-transform:uppercase; letter-spacing:.12em; }

.page-content { padding-top:90px; min-height:60vh; }
.page-content h1 { font-size:64px; line-height:1; letter-spacing:-.05em; margin:0 0 45px; }

.cart-page { padding-top:80px; }
.cart-items { border-top:1px solid var(--border); }
.cart-item { display:grid; grid-template-columns:150px 1fr auto; gap:25px; padding:20px 0; border-bottom:1px solid var(--border); }
.cart-item-image { background:#fff; }
.cart-item-info h2 { margin:0 0 5px; font-size:18px; }
.cart-item-info p { margin:0 0 15px; color:#888; font-size:12px; }
.cart-item-info label { font-size:11px; font-weight:800; display:flex; gap:8px; align-items:center; }
.cart-item-info input { width:65px; padding:8px; border:1px solid var(--border); }
.cart-price { font-weight:800; margin-bottom:15px; }
.remove-link { font-size:11px; color:#888; text-decoration:underline; }
.cart-summary { margin-left:auto; max-width:400px; padding-top:35px; }
.cart-summary > div { display:flex; justify-content:space-between; font-size:18px; }
.cart-summary p { color:#888; font-size:11px; margin:12px 0 20px; }
.cart-summary .text-link { margin-top:20px; }
.empty-state { background:#fff; text-align:center; padding:80px 20px; }
.empty-state h2 { font-size:32px; margin-bottom:30px; }

.search-page { min-height:60vh; padding-top:80px; }
.search-form { display:flex; gap:10px; max-width:700px; margin-bottom:50px; }
.search-form input { flex:1; }

.cart-drawer { position:fixed; inset:0; z-index:100; pointer-events:none; }
.cart-drawer.is-open { pointer-events:auto; }
.drawer-overlay { position:absolute; inset:0; background:rgba(0,0,0,.45); opacity:0; transition:opacity .25s; }
.drawer-panel { position:absolute; right:0; top:0; bottom:0; width:min(420px,100%); background:#fff; transform:translateX(100%); transition:transform .3s; padding:28px; display:flex; flex-direction:column; }
.cart-drawer.is-open .drawer-overlay { opacity:1; }
.cart-drawer.is-open .drawer-panel { transform:translateX(0); }
.drawer-close { border:0; background:none; font-size:28px; position:absolute; right:20px; top:16px; }
.drawer-head { display:flex; justify-content:space-between; padding:10px 0 25px; border-bottom:1px solid var(--border); font-weight:800; }
.drawer-items { overflow:auto; flex:1; padding:15px 0; }
.drawer-item { display:grid; grid-template-columns:70px 1fr; gap:14px; padding:12px 0; }
.drawer-item img { width:70px; height:70px; object-fit:cover; background:#f3f3f1; }
.drawer-item strong, .drawer-item small, .drawer-item span { display:block; }
.drawer-item strong { font-size:13px; }
.drawer-item small { color:#888; font-size:10px; margin:4px 0; }
.drawer-item span { font-weight:800; font-size:12px; }
.drawer-bottom { border-top:1px solid var(--border); padding-top:20px; }
.drawer-bottom > div { display:flex; justify-content:space-between; margin-bottom:18px; }
.centered { justify-content:center; width:100%; margin-top:18px; }
.drawer-empty { color:#888; }

@media (max-width: 980px) {
  .page-width { width:min(calc(100% - 32px), var(--page)); }
  .header-inner { height:80px; grid-template-columns:1fr auto 1fr; }
  .desktop-nav { display:none; }
  .mobile-menu-btn { display:flex; flex-direction:column; justify-content:center; gap:5px; }
  .mobile-menu-btn span { width:18px; height:1px; background:#fff; display:block; transition:.2s; }
  .mobile-menu-btn.is-open span:first-child { transform:translateY(3px) rotate(45deg); }
  .mobile-menu-btn.is-open span:last-child { transform:translateY(-3px) rotate(-45deg); }
  .mobile-menu { display:flex; max-height:0; overflow:hidden; flex-direction:column; background:#101010; transition:max-height .3s; padding:0 24px; }
  .mobile-menu.is-open { max-height:400px; padding-bottom:20px; }
  .mobile-menu a { padding:13px 0; border-top:1px solid #292929; font-size:13px; }
  .hero, .hero-content { min-height:650px; }
  .hero h1 { font-size:clamp(48px,12vw,76px); }
  .hero-copy { padding-top:80px; align-self:flex-end; }
  .hero-bottom-note { gap:20px; justify-content:flex-start; overflow:hidden; white-space:nowrap; }
  .split-heading, .product-feature-grid, .story-section, .faq-grid, .newsletter-inner, .product-page-grid { grid-template-columns:1fr; gap:45px; }
  .benefit-grid { grid-template-columns:1fr 1fr; }
  .benefit-card:nth-child(2) { border-right:0; }
  .benefit-card:nth-child(n+3) { border-top:1px solid var(--border); }
  .product-feature-copy { padding-bottom:10px; }
  .story-copy { padding:70px 24px; }
  .story-media, .story-placeholder { min-height:480px; }
  .testimonial-grid { grid-template-columns:1fr; }
  .testimonial { min-height:220px; }
  .product-info { position:static; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 600px) {
  .announcement { font-size:9px; }
  .header-inner { padding:0 16px; }
  .brand-name { font-size:19px; }
  .brand-tagline { display:none; }
  .section { padding:75px 0; }
  .hero { min-height:610px; }
  .hero-content { min-height:610px; }
  .hero-copy { padding-bottom:75px; }
  .hero-subtitle { font-size:15px; }
  .hero-buttons { gap:18px; flex-wrap:wrap; }
  .hero-bottom-note { font-size:8px; }
  .benefit-grid { grid-template-columns:1fr; }
  .benefit-card, .benefit-card + .benefit-card { border-right:0; border-top:1px solid var(--border); padding:25px 0; min-height:auto; }
  .benefit-card:first-child { border-top:0; }
  .product-feature-grid { gap:30px; }
  .product-feature-media { aspect-ratio:1/1; }
  .story-media, .story-placeholder { min-height:380px; }
  .testimonial-grid { gap:10px; }
  .faq-grid { gap:25px; }
  .footer-grid { grid-template-columns:1fr; gap:30px; padding:45px 0; }
  .footer-bottom { display:block; line-height:2; }
  .product-gallery { grid-template-columns:1fr 1fr; gap:5px; }
  .product-page { padding-top:35px; }
  .collection-page { padding-top:50px; }
  .product-grid { grid-template-columns:1fr 1fr; gap:12px; }
  .product-card-info { display:block; }
  .product-card-info span { display:block; margin-top:5px; }
  .cart-item { grid-template-columns:90px 1fr; gap:14px; }
  .remove-link { grid-column:2; }
  .search-form { display:block; }
  .search-form .btn { margin-top:10px; width:100%; }
}
