:root {
  --shop-ink: #132126;
  --shop-green: #31584c;
  --shop-moss: #9eae86;
  --shop-sand: #f3eee7;
  --shop-peach: #e7c3af;
  --shop-clay: #b8674c;
  --shop-white: #fffdf9;
  --shop-line: rgba(19, 33, 38, .16);
  --shop-muted: #637176;
  --shop-serif: "Playfair Display", Georgia, serif;
}

.shopify-page { background: var(--shop-white); color: var(--shop-ink); }
.shopify-page .site-header { background: rgba(255,253,249,.78); border-bottom: 1px solid rgba(19,33,38,.08); }
.shopify-page .site-header.is-scrolled { background: rgba(255,253,249,.92); }
.shopify-page .nav a { color: var(--shop-ink); }
.shopify-page .nav a:not(.nav-cta)::after { background: var(--shop-clay); }
.shopify-page .nav-cta { border-color: var(--shop-ink); color: var(--shop-ink); }
.shopify-page .nav-cta:hover { background: var(--shop-ink); color: #fff; }
.shopify-page main { overflow: clip; }

.shopify-kicker { margin: 0; color: #557268; font: 700 .68rem/1.2 "DM Mono", monospace; letter-spacing: .12em; text-transform: uppercase; }
.shopify-kicker i { display: inline-block; width: 1.8rem; height: 1px; margin: 0 .7rem .22rem 0; background: currentColor; vertical-align: middle; }
.shopify-section { padding: clamp(5.6rem, 10vw, 10.5rem) 7vw; }
.shopify-section h2 { max-width: 14ch; margin: 1rem 0 0; color: var(--shop-ink); font: 600 clamp(2.6rem, 5.3vw, 5.7rem)/.96 var(--shop-serif); letter-spacing: -.06em; }
.shopify-section h2 em, .shopify-hero h1 em, .launch-copy h2 em { color: var(--shop-clay); font-style: italic; }
.shopify-section__heading { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(14rem, .6fr); gap: 3rem; align-items: end; margin-bottom: clamp(2.8rem, 6vw, 5rem); }
.shopify-section__heading > p { max-width: 29rem; margin: 0 0 .35rem; color: var(--shop-muted); font-size: 1rem; line-height: 1.75; }
.shopify-section__heading--center { display: block; margin-inline: auto; max-width: 57rem; text-align: center; }
.shopify-section__heading--center h2 { margin-inline: auto; }
.shopify-section__heading--center > p { margin: 1.35rem auto 0; }
.shopify-button { display: inline-flex; align-items: center; justify-content: center; gap: 1rem; min-height: 3.35rem; padding: .85rem 1.35rem; border: 1px solid currentColor; border-radius: 999px; font: 800 .7rem/1 "DM Mono", monospace; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease; }
.shopify-button:hover { transform: translateY(-3px); box-shadow: 0 15px 30px rgba(19,33,38,.14); }
.shopify-button--ink { background: var(--shop-ink); border-color: var(--shop-ink); color: #fff; }
.shopify-button--quiet { color: var(--shop-ink); }
.shopify-button--outline { color: var(--shop-ink); background: transparent; }
.shopify-button--light { background: #fff; border-color: #fff; color: var(--shop-ink); }
.shopify-page button:focus-visible, .shopify-page a:focus-visible, .shopify-page summary:focus-visible { outline: 3px solid #5b98ff; outline-offset: 4px; }

/* Hero */
.shopify-hero { position: relative; display: grid; grid-template-columns: minmax(20rem, .86fr) minmax(37rem, 1.14fr); gap: clamp(3rem, 7vw, 8rem); min-height: min(900px, calc(100vh - 86px)); padding: clamp(5rem, 8vw, 9rem) 7vw clamp(4rem, 6vw, 6rem); background: radial-gradient(circle at 69% 35%, rgba(204,228,206,.8), transparent 24rem), linear-gradient(130deg, #f7f3ed 0%, #f1f0e5 55%, #e4ece2 100%); isolation: isolate; }
.shopify-hero::before { position: absolute; inset: auto 0 0; height: 12rem; background: linear-gradient(180deg, transparent, rgba(84,121,103,.06)); content: ""; pointer-events: none; }
.shopify-hero__copy { position: relative; z-index: 3; align-self: center; max-width: 43rem; }
.shopify-hero h1 { margin: 1.35rem 0 1.6rem; font: 600 clamp(3.5rem, 6.7vw, 7.2rem)/.91 var(--shop-serif); letter-spacing: -.075em; }
.shopify-hero__lede { max-width: 34rem; margin: 0; color: #4b5a5d; font-size: 1.06rem; line-height: 1.75; }
.shopify-hero__actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2.15rem; }
.shopify-hero__note { max-width: 30rem; margin: 2rem 0 0; color: #6c7775; font: 500 .68rem/1.55 "DM Mono", monospace; }
.hero-store { position: relative; z-index: 2; align-self: center; min-height: 37rem; transform: translateY(1rem); }
.hero-store__glow { position: absolute; inset: 10% 5% 4%; border-radius: 50%; background: radial-gradient(circle, rgba(184,103,76,.25), transparent 60%); filter: blur(16px); }
.hero-store__browser { position: relative; width: min(100%, 48rem); margin: 2rem auto 0; overflow: hidden; border: 1px solid rgba(19,33,38,.18); border-radius: 1.35rem; background: #fdfbf8; box-shadow: 0 35px 80px rgba(39,54,48,.17); }
.store-announcement { display: flex; align-items: center; justify-content: center; gap: .7rem; min-height: 2rem; color: #fff; background: var(--shop-green); font: 700 .54rem/1 "DM Mono", monospace; letter-spacing: .13em; }
.store-announcement span { color: #d6c789; font-size: .9rem; }
.store-nav { display: flex; align-items: center; justify-content: space-between; padding: 1.3rem 1.7rem; background: #fffdfa; }
.store-nav b { font: 600 1.1rem/1 var(--shop-serif); letter-spacing: .2em; }
.store-nav > span { color: #65706d; font: 700 .53rem/1 "DM Mono", monospace; letter-spacing: .08em; }
.store-nav button { padding: 0; border: 0; color: var(--shop-ink); background: transparent; font: 700 .57rem/1 "DM Mono", monospace; letter-spacing: .08em; cursor: pointer; }
.store-nav i { display: inline-grid; width: 1.3rem; height: 1.3rem; margin-left: .32rem; border-radius: 50%; place-items: center; color: #fff; background: var(--shop-clay); font-style: normal; }
.store-editorial { display: grid; grid-template-columns: .92fr 1.08fr; min-height: 25rem; background: #dfd1be; }
.store-editorial > div { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(2rem, 4vw, 4rem); }
.store-editorial p { margin: 0 0 1rem; color: #805644; font: 700 .54rem/1 "DM Mono", monospace; letter-spacing: .14em; }
.store-editorial h2 { max-width: 8ch; margin: 0; color: #312319; font: 600 clamp(2rem, 3.7vw, 3.65rem)/.92 var(--shop-serif); letter-spacing: -.075em; }
.store-editorial h2 em { font-style: italic; }
.store-editorial button { margin-top: 1.8rem; padding: .85rem 1.1rem; border: 1px solid #312319; border-radius: 99px; color: #fff; background: #312319; font: 700 .6rem/1 "DM Mono", monospace; letter-spacing: .06em; cursor: pointer; }
.store-editorial figure { min-height: 0; margin: 0; overflow: hidden; }
.store-editorial img { width: 100%; height: 100%; min-height: 25rem; object-fit: cover; object-position: center; }
.store-mini-collection { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; padding: .85rem; background: #fbf9f5; }
.store-mini-collection article { display: grid; grid-template-columns: 3.5rem 1fr auto; gap: .5rem; align-items: center; min-width: 0; padding: .4rem; color: #42504b; font: 600 .54rem/1.3 "DM Mono", monospace; }
.store-mini-collection img { width: 3.5rem; height: 3.5rem; object-fit: cover; }
.store-mini-collection b { color: var(--shop-ink); }
.hero-float { position: absolute; z-index: 3; box-shadow: 0 18px 38px rgba(36,54,47,.15); backdrop-filter: blur(8px); }
.hero-float--swatches { top: 1rem; right: 1rem; display: flex; align-items: center; gap: .45rem; padding: .85rem 1rem; border: 1px solid rgba(19,33,38,.1); border-radius: .9rem; color: #466156; background: rgba(255,253,249,.83); font: 700 .54rem/1 "DM Mono", monospace; letter-spacing: .06em; }
.hero-float--added { bottom: 1.1rem; left: 0; display: flex; gap: .55rem; align-items: center; min-width: 12rem; padding: .85rem 1rem; border: 1px solid rgba(19,33,38,.1); border-radius: .9rem; color: #28473c; background: rgba(255,253,249,.9); font: 600 .56rem/1.4 "DM Mono", monospace; }
.hero-float--added i { display: grid; width: 1.35rem; height: 1.35rem; border-radius: 50%; place-items: center; color: #fff; background: var(--shop-green); font-style: normal; }
.hero-float--added b, .hero-float--added small { display: block; }
.hero-float--added small { color: #70817a; }
.hero-float--secure { right: 4rem; bottom: 2.4rem; padding: .7rem .9rem; border-radius: 99px; color: #fff; background: var(--shop-ink); font: 700 .52rem/1 "DM Mono", monospace; letter-spacing: .05em; }
.hero-phone { position: absolute; z-index: 4; top: 16%; right: -1rem; width: 9.4rem; overflow: hidden; border: .35rem solid #f8f4ee; border-radius: 1.25rem; background: #fffdf9; box-shadow: 0 22px 45px rgba(42,56,50,.25); transform: rotate(6deg); }
.hero-phone__top { display: flex; justify-content: space-between; padding: .65rem .55rem; color: #325148; font: 700 .44rem/1 "DM Mono", monospace; letter-spacing: .08em; }
.hero-phone img { display: block; width: 100%; height: 12rem; object-fit: cover; }
.hero-phone > div:last-child { padding: .55rem; color: #293c35; font: 500 .5rem/1.45 "DM Mono", monospace; }
.hero-phone b, .hero-phone span { display: block; }
.hero-phone span { color: #796e61; margin-top: .15rem; }
.swatch { display: inline-block; width: .82rem; height: .82rem; border-radius: 50%; border: 1px solid rgba(19,33,38,.18); }
.swatch.sand { background: #e6d9c4; }.swatch.rose { background: #c9837a; }.swatch.ink { background: #273835; }

.commerce-strip { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; color: #f7f4ee; background: rgba(255,255,255,.2); }
.commerce-strip > div { display: flex; align-items: center; justify-content: center; gap: .75rem; min-height: 5.2rem; padding: 1rem; text-align: center; background: var(--shop-ink); font: 700 .6rem/1.4 "DM Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }
.commerce-strip i { color: #d2c780; font-size: 1rem; font-style: normal; }

/* Product demo */
.product-demo { background: #fcfaf6; }
.product-demo__shell { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr); max-width: 86rem; margin: 0 auto; border: 1px solid var(--shop-line); background: #fff; box-shadow: 0 28px 80px rgba(26,46,38,.08); }
.product-gallery { display: grid; grid-template-columns: 5.8rem 1fr; gap: 1rem; padding: 1rem; background: #ece8df; }
.gallery-thumbs { display: flex; flex-direction: column; gap: .75rem; }
.gallery-thumbs button { width: 100%; padding: 0; overflow: hidden; border: 2px solid transparent; background: #fff; cursor: pointer; transition: border-color .2s ease, transform .2s ease; }
.gallery-thumbs button.is-selected { border-color: var(--shop-clay); }.gallery-thumbs button:hover { transform: translateY(-2px); }
.gallery-thumbs img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.product-gallery__main { position: relative; min-height: 34rem; margin: 0; overflow: hidden; background: #ddd6cb; }
.product-gallery__main > img { display: block; width: 100%; height: 100%; object-fit: cover; transition: opacity .25s ease, transform .5s ease; }.product-gallery__main:hover > img { transform: scale(1.035); }
.product-gallery__main figcaption { position: absolute; left: 1rem; bottom: 1rem; padding: .5rem .65rem; color: #fff; background: rgba(19,33,38,.78); font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
.product-detail { display: flex; flex-direction: column; justify-content: center; max-width: 31rem; padding: clamp(2rem, 5vw, 5rem); }
.product-detail__collection { margin: 0 0 1rem; color: #607a70; font: 700 .6rem/1 "DM Mono", monospace; letter-spacing: .12em; }
.product-detail h3 { margin: 0; font: 600 clamp(2.5rem, 4vw, 4.4rem)/.92 var(--shop-serif); letter-spacing: -.07em; }
.product-detail__price { margin: 1rem 0 1.4rem; font: 600 1.35rem/1 var(--shop-serif); }.product-detail__price small { margin-left: .35rem; color: #8a9492; font: 500 .55rem/1 "DM Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }
.product-detail > p:not(.product-detail__collection):not(.product-detail__price):not(.product-shipping) { color: var(--shop-muted); font-size: .95rem; line-height: 1.7; }
.product-choice { margin: 1.6rem 0 1.2rem; padding: 0; border: 0; }.product-choice legend { width: 100%; margin-bottom: .65rem; font: 700 .6rem/1 "DM Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }.product-choice legend span { float: right; color: #73817c; font-weight: 500; }
.swatch-buttons { display: flex; gap: .55rem; }.swatch-buttons button { width: 1.65rem; height: 1.65rem; padding: 0; border: 1px solid rgba(19,33,38,.22); border-radius: 50%; background: var(--color); cursor: pointer; }.swatch-buttons button.is-selected { outline: 2px solid var(--shop-ink); outline-offset: 3px; }
.product-quantity { display: flex; align-items: center; justify-content: space-between; margin: 1.3rem 0; color: #52635e; font: 700 .6rem/1 "DM Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }.product-quantity > div { display: flex; align-items: center; border: 1px solid var(--shop-line); }.product-quantity button { width: 2rem; height: 2rem; border: 0; color: var(--shop-ink); background: transparent; font-size: 1.15rem; cursor: pointer; }.product-quantity output { width: 1.8rem; text-align: center; }
.product-detail__actions { display: grid; grid-template-columns: 1.2fr .8fr; gap: .6rem; }.product-detail__actions .shopify-button { min-width: 0; padding-inline: .7rem; }
.product-shipping { margin: 1rem 0 1.5rem; color: #77837e; font: 500 .62rem/1.5 "DM Mono", monospace; }.product-detail details { border-top: 1px solid var(--shop-line); }.product-detail summary { display: flex; justify-content: space-between; padding: 1rem 0; cursor: pointer; font: 700 .65rem/1 "DM Mono", monospace; letter-spacing: .05em; }.product-detail details p { padding: 0 0 1rem; margin: 0; color: var(--shop-muted); font-size: .86rem; line-height: 1.6; }

/* Product to store */
.store-journey { color: #eaf0e9; background: #1d3731; }.store-journey h2 { color: #fffdf9; }.store-journey .shopify-kicker { color: #b4c9a6; }.store-journey .shopify-section__heading p { color: #c0ccc1; }
.store-journey__canvas { position: relative; max-width: 80rem; min-height: 38rem; margin: 0 auto; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 1.75rem; background: radial-gradient(circle at 50% 40%, rgba(136,170,144,.24), transparent 24rem), linear-gradient(145deg, #29483e, #132823); }
.journey-product { position: absolute; z-index: 2; left: 50%; top: 50%; width: 16rem; height: 21rem; overflow: hidden; border-radius: 8rem 8rem 1.2rem 1.2rem; box-shadow: 0 24px 50px rgba(0,0,0,.25); transform: translate(-50%, -50%); }.journey-product img { width: 100%; height: 100%; object-fit: cover; }
.journey-path { position: absolute; inset: 0; }.journey-path i { position: absolute; height: 1px; transform-origin: left; background: linear-gradient(90deg, transparent, #c8d296, transparent); }.journey-path i:nth-child(1) { width: 35%; left: 12%; top: 31%; transform: rotate(24deg); }.journey-path i:nth-child(2) { width: 35%; right: 12%; top: 30%; transform: rotate(-24deg); }.journey-path i:nth-child(3) { width: 35%; left: 32%; bottom: 20%; transform: rotate(0deg); }
.journey-stage { position: absolute; z-index: 3; max-width: 10rem; padding: 1.1rem; border: 1px solid rgba(238,244,226,.2); border-radius: 1rem; background: rgba(18,39,33,.68); box-shadow: 0 12px 25px rgba(0,0,0,.1); backdrop-filter: blur(10px); opacity: .55; transition: opacity .5s ease, transform .5s ease, border-color .5s ease; }.journey-stage span { display: block; margin-bottom: .55rem; color: #b6c996; font: 700 .53rem/1 "DM Mono", monospace; letter-spacing: .09em; text-transform: uppercase; }.journey-stage b { display: block; color: #fff; font: 600 1.15rem/1.05 var(--shop-serif); }.journey-stage small { display: block; margin-top: .55rem; color: #cdd8cc; font: .55rem/1.45 "DM Mono", monospace; }.journey-stage--product { top: 12%; left: 8%; }.journey-stage--presentation { right: 8%; top: 12%; }.journey-stage--page { left: 14%; bottom: 9%; }.journey-stage--store { right: 14%; bottom: 9%; }
.store-journey__canvas.is-visible .journey-stage { opacity: 1; border-color: rgba(202,217,161,.75); }.store-journey__canvas.is-visible .journey-stage--product { animation: journeyStage 4s ease infinite; }.store-journey__canvas.is-visible .journey-stage--presentation { animation: journeyStage 4s ease .8s infinite; }.store-journey__canvas.is-visible .journey-stage--page { animation: journeyStage 4s ease 1.6s infinite; }.store-journey__canvas.is-visible .journey-stage--store { animation: journeyStage 4s ease 2.4s infinite; }

/* Collections */
.collection-showcase { background: #f7f3ed; }.collection-showcase__head { display: grid; grid-template-columns: 1.2fr .8fr; gap: 3rem; align-items: end; margin-bottom: 3.3rem; }.collection-showcase__head h2 { max-width: 12ch; margin: 1rem 0 0; font: 600 clamp(2.6rem,5.3vw,5.7rem)/.96 var(--shop-serif); letter-spacing: -.06em; }.collection-showcase__head > p { max-width: 28rem; margin: 0 0 .35rem; color: var(--shop-muted); font-size: .95rem; line-height: 1.75; }
.product-collection { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.2rem, 2.5vw, 2.5rem); max-width: 95rem; margin: 0 auto; }.collection-product { min-width: 0; }.collection-product figure { position: relative; height: clamp(19rem, 31vw, 32rem); margin: 0; overflow: hidden; background: #e5ded3; }.collection-product figure img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .45s ease, transform .75s cubic-bezier(.2,.7,.2,1); }.collection-product__back { opacity: 0; }.collection-product figure button { position: absolute; z-index: 2; left: 1rem; right: 1rem; bottom: 1rem; padding: .9rem; border: 0; color: #fff; background: var(--shop-ink); font: 700 .58rem/1 "DM Mono", monospace; letter-spacing: .08em; text-transform: uppercase; opacity: 0; transform: translateY(1rem); transition: opacity .25s ease, transform .25s ease; cursor: pointer; }.collection-product figure:hover .collection-product__front { opacity: 0; transform: scale(1.05); }.collection-product figure:hover .collection-product__back { opacity: 1; transform: scale(1.05); }.collection-product figure:hover button { opacity: 1; transform: none; }.collection-product > div { padding: 1rem 0 .35rem; }.collection-product > div > span { color: #7c807b; font: 700 .54rem/1 "DM Mono", monospace; letter-spacing: .1em; }.collection-product h3 { margin: .48rem 0 .3rem; font: 600 1.4rem/1.1 var(--shop-serif); letter-spacing: -.035em; }.collection-product p { margin: 0; color: #3d4d49; font: 700 .72rem/1 "DM Mono", monospace; }.collection-product p small { color: #91938e; font-size: .48rem; letter-spacing: .07em; text-transform: uppercase; }.product-card__bottom { display: flex; align-items: center; gap: .35rem; margin-top: .9rem; }.product-card__bottom .swatch { width: .65rem; height: .65rem; }.product-card__bottom button { display: inline-flex; justify-content: space-between; align-items: center; flex: 1; margin-left: .45rem; padding: .6rem 0 .6rem .75rem; border: 1px solid rgba(19,33,38,.2); color: var(--shop-ink); background: transparent; font: 700 .55rem/1 "DM Mono", monospace; letter-spacing: .05em; text-transform: uppercase; cursor: pointer; transition: background .2s ease, color .2s ease; }.product-card__bottom button b { display: grid; width: 2rem; margin-left: .5rem; border-left: 1px solid currentColor; place-items: center; font-size: 1rem; }.product-card__bottom button:hover { color: #fff; background: var(--shop-ink); }

/* Devices */
.device-commerce { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(3rem, 7vw, 9rem); align-items: center; }.device-commerce__copy h2 { max-width: 9ch; }.device-commerce__copy > p { max-width: 29rem; color: var(--shop-muted); font-size: 1rem; line-height: 1.75; }.device-commerce__copy ul { display: grid; gap: .8rem; margin: 2rem 0 0; padding: 0; list-style: none; color: #41564e; font: 600 .75rem/1.45 "DM Mono", monospace; }.device-commerce__copy li span { margin-right: .65rem; color: var(--shop-clay); font-size: 1rem; }.device-scene { position: relative; min-height: 34rem; }.device { position: absolute; overflow: hidden; background: #fbfaf7; box-shadow: 0 20px 45px rgba(27,46,39,.16); }.device--desktop { z-index: 1; top: 0; left: 0; width: 84%; border: 8px solid #e5e6de; border-radius: 1rem; }.device-bar { display: flex; align-items: center; gap: .35rem; height: 2rem; padding: 0 .7rem; background: #fff; }.device-bar i { width: .42rem; height: .42rem; border-radius: 50%; background: #e7c3af; }.device-bar i:nth-child(2) { background: #b2c6c2; }.device-bar i:nth-child(3) { background: #bdc7e2; }.device-bar span { margin-left: auto; margin-right: auto; color: #8b9593; font: 600 .48rem/1 "DM Mono", monospace; }.device--desktop__store { position: relative; min-height: 28rem; padding: 3rem; overflow: hidden; color: #fff; background: #2c4e42; }.device--desktop__store > p { position: relative; z-index: 2; margin: 0; color: #d8ddae; font: 700 .55rem/1 "DM Mono", monospace; letter-spacing: .12em; }.device--desktop__store > div { position: relative; z-index: 2; max-width: 16rem; margin-top: 4.5rem; }.device--desktop__store h3 { margin: 0; color: #fffdf9; font: 600 clamp(2rem,3.5vw,3.5rem)/.93 var(--shop-serif); letter-spacing: -.06em; }.device--desktop__store button { margin-top: 1.3rem; padding: .65rem .85rem; border: 0; color: #29493e; background: #fffdf9; font: 700 .52rem/1 "DM Mono", monospace; letter-spacing: .05em; }.device--desktop__store img { position: absolute; top: 0; right: 0; width: 56%; height: 100%; object-fit: cover; opacity: .9; }.device--tablet { z-index: 3; right: 3%; bottom: 0; width: 15rem; border: 6px solid #f3f1ea; border-radius: 1rem; transform: rotate(5deg); }.device--phone { z-index: 4; right: -3%; top: 4.5rem; width: 9rem; border: 5px solid #fffdf9; border-radius: 1.2rem; transform: rotate(-6deg); }.device--tablet > p, .device--phone > p { display: flex; justify-content: space-between; margin: 0; padding: .7rem; color: #33584d; font: 700 .45rem/1 "DM Mono", monospace; letter-spacing: .07em; }.device--tablet img { width: 100%; height: 12rem; object-fit: cover; }.device--phone img { width: 100%; height: 11.5rem; object-fit: cover; }.device--tablet > div, .device--phone > div { padding: .7rem; color: #314a42; font: 600 .48rem/1.55 "DM Mono", monospace; }.device--tablet span, .device--phone button { display: block; margin-top: .25rem; color: #71817c; }.device--phone button { border: 0; padding: 0; color: #31584c; background: transparent; font: 700 .42rem/1 "DM Mono", monospace; }

/* Journey */
.purchase-journey { background: #f1e8dc; }.purchase-journey__steps { position: relative; display: grid; grid-template-columns: repeat(6, 1fr); gap: 1rem; max-width: 95rem; margin: 0 auto; padding-top: 2rem; }.purchase-journey__steps::before { position: absolute; top: 8.8rem; left: 8%; right: 8%; height: 2px; background: linear-gradient(90deg, #cca282, #31584c); content: ""; transform-origin: left; }.purchase-journey__steps article { position: relative; z-index: 2; text-align: center; }.journey-ui { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 8.6rem; height: 8.6rem; margin: 0 auto 1rem; overflow: hidden; border: 1px solid rgba(49,88,76,.17); border-radius: 50%; background: #fffdf9; box-shadow: 0 10px 20px rgba(76,56,39,.08); }.journey-ui img { width: 100%; height: 100%; object-fit: cover; }.journey-ui--detail b { color: var(--shop-ink); font: 600 1.1rem/1 var(--shop-serif); }.journey-ui--detail i { width: 3.5rem; height: .35rem; margin: .55rem 0 .3rem; border-radius: 5px; background: #d5dbd3; }.journey-ui--detail small { color: var(--shop-clay); font: 700 .5rem/1 "DM Mono", monospace; }.journey-ui--options { flex-direction: row; flex-wrap: wrap; gap: .35rem; padding: 2rem; }.journey-ui--options b { width: 100%; margin-top: .4rem; color: #60726a; font: 700 .48rem/1 "DM Mono", monospace; }.journey-ui--cart b { color: #31584c; font: 700 .8rem/1 "DM Mono", monospace; }.journey-ui--cart em { display: inline-grid; width: 1rem; height: 1rem; border-radius: 50%; place-items: center; color: #fff; background: var(--shop-clay); font-style: normal; font-size: .52rem; }.journey-ui--cart i { width: 4.4rem; height: .6rem; margin: .7rem; background: #d9d0c4; }.journey-ui--cart button { padding: .38rem .6rem; border: 0; border-radius: 99px; color: #fff; background: var(--shop-ink); font: 700 .44rem/1 "DM Mono", monospace; }.journey-ui--checkout { gap: .45rem; }.journey-ui--checkout i { width: 4.3rem; height: .42rem; background: #d9d0c4; }.journey-ui--checkout i:nth-child(2) { width: 3.4rem; }.journey-ui--checkout b { margin-top: .25rem; color: var(--shop-green); font: 700 .46rem/1 "DM Mono", monospace; }.journey-ui--confirmed b { display: grid; width: 2.8rem; height: 2.8rem; margin-bottom: .55rem; border-radius: 50%; place-items: center; color: #fff; background: var(--shop-green); font-size: 1.2rem; }.journey-ui--confirmed span { color: var(--shop-green); font: 700 .48rem/1 "DM Mono", monospace; }.purchase-journey__steps h3 { margin: 0; color: var(--shop-ink); font: 600 1.15rem/1.1 var(--shop-serif); }.journey-bag { position: absolute; z-index: 3; top: 6.8rem; left: 8%; display: grid; width: 3rem; height: 3rem; border-radius: 50%; place-items: center; color: #fff; background: var(--shop-clay); box-shadow: 0 9px 20px rgba(184,103,76,.35); font-size: 1.2rem; animation: travelBag 13s ease-in-out infinite; }

/* Checkout */
.checkout-demo { background: #e9eee9; }.checkout-demo__heading { max-width: 48rem; margin: 0 auto 3.5rem; text-align: center; }.checkout-demo__heading h2 { margin: 1rem auto; }.checkout-demo__heading > p { margin: 0 auto; color: var(--shop-muted); line-height: 1.7; }.checkout-demo__layouts { display: grid; grid-template-columns: minmax(18rem,.7fr) minmax(28rem,1.3fr); max-width: 84rem; margin: 0 auto; overflow: hidden; border: 1px solid rgba(49,88,76,.22); border-radius: 1.5rem; background: #fffdf9; box-shadow: 0 30px 65px rgba(25,53,43,.12); }.bag-panel { display: flex; flex-direction: column; min-height: 36rem; padding: 1.5rem; background: #f7f4ee; }.bag-panel__head { display: flex; justify-content: space-between; align-items: center; padding-bottom: 1.3rem; border-bottom: 1px solid var(--shop-line); }.bag-panel h3 { margin: 0; font: 600 1.6rem/1 var(--shop-serif); }.bag-panel h3 span { display: inline-grid; width: 1.25rem; height: 1.25rem; border-radius: 50%; place-items: center; color: #fff; background: var(--shop-clay); font: 700 .5rem/1 "DM Mono", monospace; }.bag-panel__head button { border: 0; color: #758079; background: transparent; font-size: 1.4rem; }.bag-product { display: grid; grid-template-columns: 4.8rem 1fr auto; gap: .75rem; padding: 1.4rem 0; }.bag-product img { width: 4.8rem; height: 5.8rem; object-fit: cover; }.bag-product b, .bag-product span { display: block; }.bag-product b { color: #30463d; font: 600 1rem/1.1 var(--shop-serif); }.bag-product span { margin: .3rem 0 .75rem; color: #78837c; font: .52rem/1 "DM Mono", monospace; }.bag-product > p { margin: 0; color: #40554c; font: 700 .58rem/1 "DM Mono", monospace; }.bag-product > div > div { display: flex; align-items: center; width: max-content; border: 1px solid var(--shop-line); }.bag-product button { width: 1.4rem; height: 1.35rem; border: 0; background: transparent; cursor: pointer; }.bag-product output { width: 1.35rem; color: #55645e; text-align: center; font: .55rem/1 "DM Mono", monospace; }.bag-panel__summary { margin-top: auto; padding-top: 1.2rem; border-top: 1px solid var(--shop-line); }.bag-panel__summary p { display: flex; justify-content: space-between; color: #3c4d47; font: 700 .65rem/1 "DM Mono", monospace; }.bag-panel__summary small { color: #758079; font: .5rem/1.45 "DM Mono", monospace; }.bag-panel__summary button { display: flex; justify-content: space-between; width: 100%; margin-top: 1rem; padding: .95rem 1rem; border: 0; color: #fff; background: var(--shop-ink); font: 700 .58rem/1 "DM Mono", monospace; letter-spacing: .07em; text-transform: uppercase; cursor: pointer; }
.checkout-panel { position: relative; overflow: hidden; padding: clamp(1.4rem,3vw,3rem); }.checkout-panel__top { display: flex; justify-content: space-between; align-items: center; }.checkout-panel__top > span { color: #33584a; font: 600 1.25rem/1 var(--shop-serif); letter-spacing: .16em; }.checkout-panel__top p { margin: 0; color: #73817c; font: 600 .48rem/1 "DM Mono", monospace; letter-spacing: .04em; }.checkout-panel__top i { color: var(--shop-clay); font-style: normal; }.checkout-progress { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: .5rem; margin: 1.7rem 0 2rem; }.checkout-progress i { height: .22rem; background: #dbe1da; }.checkout-progress i:first-child { background: var(--shop-green); }.checkout-demo.is-checkout .checkout-progress i:nth-child(2), .checkout-demo.is-complete .checkout-progress i { background: var(--shop-green); }.checkout-panel__content { display: grid; grid-template-columns: 1.1fr .9fr; gap: 2rem; }.checkout-panel h3 { margin: 0 0 1rem; color: #314b42; font: 600 1.1rem/1 var(--shop-serif); }.checkout-panel label { display: grid; gap: .4rem; margin-bottom: .8rem; color: #66766f; font: 700 .48rem/1 "DM Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }.checkout-panel input { height: 2.2rem; padding: 0 .65rem; border: 1px solid #d7ddd4; border-radius: .2rem; color: #52635d; background: #fff; font: .66rem/1 Manrope, sans-serif; }.checkout-fields { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; }.delivery-choice { display: grid; grid-template-columns: 1fr auto; gap: .25rem; padding: .7rem; border: 1px solid #b3c7b8; border-radius: .35rem; color: #42584e; font: .55rem/1 "DM Mono", monospace; }.delivery-choice span { color: #74837c; }.delivery-choice strong { grid-row: span 2; align-self: center; color: #31584c; font-size: .5rem; }.checkout-panel__content > aside { padding: 1rem; background: #f6f4ed; }.checkout-panel__content > aside > div { display: grid; grid-template-columns: 2.4rem 1fr auto; gap: .5rem; align-items: center; color: #4c5c55; font: 600 .54rem/1.35 "DM Mono", monospace; }.checkout-panel__content > aside img { width: 2.4rem; height: 2.4rem; object-fit: cover; }.checkout-panel__content > aside small { color: #77847e; font-size: .46rem; }.checkout-panel__content > aside > p { display: flex; justify-content: space-between; margin: .75rem 0 0; color: #66746f; font: .52rem/1 "DM Mono", monospace; }.checkout-panel__content .checkout-total { padding-top: .75rem; border-top: 1px solid #d8ddd5; color: #314b42; font-weight: 700; }.checkout-panel__content > aside button { width: 100%; margin-top: 1rem; padding: .75rem; border: 0; color: #fff; background: var(--shop-green); font: 700 .52rem/1 "DM Mono", monospace; letter-spacing: .04em; cursor: pointer; }.checkout-secure { display: block; margin-top: .75rem; color: #75837c; text-align: center; font: .44rem/1.3 "DM Mono", monospace; }.order-confirmation { position: absolute; z-index: 4; right: 1.5rem; bottom: 1.5rem; display: flex; align-items: center; gap: .75rem; padding: .9rem 1.1rem; border: 1px solid #b7d7be; border-radius: .65rem; color: #31584c; background: #f7fff6; box-shadow: 0 12px 27px rgba(28,80,44,.13); opacity: 0; transform: translateY(1rem); pointer-events: none; transition: opacity .35s ease, transform .35s ease; }.checkout-demo.is-complete .order-confirmation { opacity: 1; transform: none; }.order-confirmation b { display: grid; width: 1.55rem; height: 1.55rem; border-radius: 50%; place-items: center; color: #fff; background: #46775a; }.order-confirmation span { font: 700 .58rem/1 "DM Mono", monospace; letter-spacing: .04em; }.order-confirmation p { margin: .2rem 0 0; color: #668070; font: .5rem/1.3 "DM Mono", monospace; }

/* Services */
.services-editorial { display: grid; grid-template-columns: minmax(17rem,.8fr) minmax(25rem,1.2fr); gap: clamp(3rem,9vw,11rem); background: #fffdf9; }.services-editorial__intro { position: sticky; top: 7rem; align-self: start; }.services-editorial__intro h2 { max-width: 7ch; }.services-editorial__intro > p { max-width: 25rem; color: var(--shop-muted); line-height: 1.7; }.services-editorial__intro > a, .performance-preview__copy > a, .shopify-faq__intro > a { display: inline-block; margin-top: 1.35rem; padding-bottom: .35rem; border-bottom: 1px solid currentColor; color: var(--shop-green); font: 700 .62rem/1 "DM Mono", monospace; letter-spacing: .06em; text-decoration: none; }.services-editorial__list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 2rem; }.services-editorial__list article { padding: 1.25rem 0; border-top: 1px solid var(--shop-line); }.services-editorial__list article:nth-child(2n) { margin-top: 4rem; }.services-editorial__list b { color: #29473b; font: 600 1.25rem/1.15 var(--shop-serif); }.services-editorial__list p { margin: .55rem 0 0; color: #6d7d77; font-size: .8rem; line-height: 1.6; }.services-editorial__list a { color: var(--shop-green); font-weight: 700; }

/* Customizer */
.store-customizer { color: #f7f2eb; background: #1e332d; }.store-customizer h2 { color: #fff; }.store-customizer .shopify-kicker { color: #b6cda6; }.store-customizer__heading { max-width: 43rem; margin: 0 auto 3.5rem; text-align: center; }.store-customizer__heading h2 { margin: 1rem auto; }.store-customizer__heading p { margin: 0; color: #c6d0c7; line-height: 1.75; }.customizer-shell { display: grid; grid-template-columns: minmax(14rem,.5fr) minmax(30rem,1.5fr); max-width: 87rem; margin: auto; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 1.3rem; background: #f5f1ea; }.customizer-controls { padding: clamp(1.5rem,3vw,2.6rem); color: #e9efea; background: #243f36; }.customizer-controls fieldset { margin: 0 0 1.7rem; padding: 0 0 1.5rem; border: 0; border-bottom: 1px solid rgba(255,255,255,.15); }.customizer-controls legend { margin-bottom: .75rem; color: #bdcec0; font: 700 .55rem/1 "DM Mono", monospace; letter-spacing: .12em; text-transform: uppercase; }.customizer-options { display: flex; flex-wrap: wrap; gap: .45rem; }.customizer-options button { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem .6rem; border: 1px solid rgba(255,255,255,.2); border-radius: .25rem; color: #e9efea; background: transparent; font: 600 .53rem/1 "DM Mono", monospace; cursor: pointer; }.customizer-options button.is-selected { color: #1f372e; border-color: #ecf1df; background: #ecf1df; }.customizer-options i { width: .65rem; height: .65rem; border-radius: 50%; }.customizer-preview { --custom-color: #b8674c; --custom-radius: 1.25rem; --custom-gap: 1.2rem; min-height: 32rem; padding: 1.1rem; color: #1e312b; background: #f6eee4; transition: color .35s ease, background .35s ease; }.customizer-preview.is-cobalt { --custom-color: #2254be; background: #edf1fa; }.customizer-preview.is-forest { --custom-color: #315c4c; background: #ebf0e8; }.customizer-preview.is-modern h3 { font-family: Manrope, sans-serif; font-weight: 800; letter-spacing: -.08em; }.customizer-preview.is-square .customizer-preview__main, .customizer-preview.is-square .customizer-preview__main button { border-radius: .1rem; }.customizer-preview.is-compact { --custom-gap: .55rem; }.customizer-preview__bar { display: flex; justify-content: space-between; padding: .65rem 1rem; color: var(--custom-color); background: #fff; font: 700 .55rem/1 "DM Mono", monospace; letter-spacing: .08em; }.customizer-preview__bar b { display: inline-grid; width: 1rem; height: 1rem; border-radius: 50%; place-items: center; color: #fff; background: var(--custom-color); font-size: .45rem; }.customizer-preview__main { display: grid; grid-template-columns: .9fr 1.1fr; min-height: 20rem; margin-top: var(--custom-gap); overflow: hidden; border-radius: var(--custom-radius); color: #fff; background: var(--custom-color); transition: border-radius .35s ease, background .35s ease; }.customizer-preview__main > div { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(1rem,3vw,3rem); }.customizer-preview__main p { margin: 0 0 .6rem; color: #e3e2bc; font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .1em; }.customizer-preview__main h3 { margin: 0; font: 600 clamp(1.7rem,3.4vw,3.7rem)/.93 var(--shop-serif); letter-spacing: -.06em; }.customizer-preview__main button { margin-top: 1.2rem; padding: .6rem .8rem; border: 0; border-radius: 99px; color: var(--custom-color); background: #fff; font: 700 .52rem/1 "DM Mono", monospace; }.customizer-preview__main img { width: 100%; height: 100%; object-fit: cover; }.customizer-preview__products { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--custom-gap); margin-top: var(--custom-gap); }.customizer-preview__products span { display: grid; gap: .55rem; padding: .5rem; color: #43534d; background: #fff; font: 600 .55rem/1 "DM Mono", monospace; }.customizer-preview__products img { width: 100%; height: 7rem; object-fit: cover; }

/* Product feature and integrations */
.product-features { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(3rem,7vw,8rem); align-items: center; background: #f8f4ed; }.product-features__copy h2 { max-width: 8ch; }.product-features__copy p { max-width: 24rem; color: var(--shop-muted); line-height: 1.7; }.feature-product { position: relative; padding: 2.5rem 2rem; }.feature-product__page { padding: .8rem; border: 1px solid rgba(19,33,38,.18); border-radius: 1rem; background: #fff; box-shadow: 0 25px 55px rgba(35,45,41,.13); }.feature-product__top { display: flex; justify-content: space-between; padding: .5rem .8rem 1rem; color: #5a7068; font: 700 .54rem/1 "DM Mono", monospace; letter-spacing: .1em; }.feature-product__body { display: grid; grid-template-columns: 1.15fr .85fr; background: #eff1ea; }.feature-product__body > img { width: 100%; height: 22rem; object-fit: cover; }.feature-product__body > div { padding: 2rem 1.5rem; }.feature-product__body p { margin: 0; color: #759076; font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .1em; }.feature-product__body h3 { margin: .7rem 0 .45rem; color: #263f36; font: 600 2rem/1 var(--shop-serif); }.feature-product__body > div > b { color: #52655c; font: 700 .65rem/1 "DM Mono", monospace; }.feature-sizes { display: flex; gap: .35rem; margin: 1.5rem 0; }.feature-sizes span { display: grid; width: 1.75rem; height: 1.75rem; border: 1px solid #bfcbc0; place-items: center; color: #53675e; font: 600 .5rem/1 "DM Mono", monospace; }.feature-sizes .is-selected { color: #fff; border-color: #31584c; background: #31584c; }.feature-product__body button { width: 100%; padding: .75rem; border: 0; color: #fff; background: #253e35; font: 700 .52rem/1 "DM Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }.feature-product__body small { display: block; margin-top: .8rem; color: #73817a; font: .47rem/1 "DM Mono", monospace; }.feature-callout { position: absolute; display: flex; align-items: center; gap: .5rem; color: #31584c; font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .07em; text-transform: uppercase; opacity: .55; }.feature-callout i { display: block; width: 3.2rem; height: 1px; background: currentColor; }.feature-callout--photo { top: 3%; left: 0; }.feature-callout--options { top: 28%; right: -2%; }.feature-callout--cart { bottom: 14%; right: 0; }.feature-callout--details { bottom: 3%; left: 3%; }.feature-product.is-visible .feature-callout { opacity: 1; animation: calloutPulse 3.8s ease infinite; }.feature-product.is-visible .feature-callout--options { animation-delay: .5s; }.feature-product.is-visible .feature-callout--cart { animation-delay: 1s; }.feature-product.is-visible .feature-callout--details { animation-delay: 1.5s; }
.integration-system { color: #edf3ea; background: #243c34; }.integration-system h2 { color: #fffdf8; }.integration-system .shopify-kicker { color: #b8cdab; }.integration-system .shopify-section__heading p { color: #c7d2ca; }.integration-orbit { position: relative; width: min(100%, 67rem); aspect-ratio: 1.85 / 1; margin: 0 auto; border-radius: 50%; border: 1px solid rgba(200,218,191,.17); background: radial-gradient(ellipse at center, rgba(139,178,147,.22), transparent 40%); }.integration-orbit::before, .integration-orbit::after { position: absolute; inset: 13%; border: 1px dashed rgba(211,226,182,.22); border-radius: 50%; content: ""; }.integration-orbit::after { inset: 29%; }.integration-store { position: absolute; left: 50%; top: 50%; z-index: 2; display: grid; width: 11rem; height: 11rem; border: 1px solid rgba(221,234,201,.55); border-radius: 50%; place-content: center; color: #fff; background: #31584c; box-shadow: 0 0 0 1.1rem rgba(64,105,88,.28), 0 0 45px rgba(192,222,181,.25); text-align: center; transform: translate(-50%,-50%); }.integration-store span { color: #c9daa8; font: 700 .45rem/1 "DM Mono", monospace; letter-spacing: .12em; }.integration-store b { margin-top: .55rem; font: 600 1.1rem/1.05 var(--shop-serif); }.integration-store i { margin-top: .6rem; color: #dce6bf; font-style: normal; }.integration-node { position: absolute; display: grid; gap: .25rem; min-width: 5rem; color: #d9e3d7; text-align: center; font-size: 1.05rem; }.integration-node b { font: 700 .47rem/1 "DM Mono", monospace; letter-spacing: .05em; }.integration-node--payment { top: 7%; left: 47%; }.integration-node--email { top: 27%; left: 12%; }.integration-node--shipping { bottom: 15%; left: 19%; }.integration-node--inventory { bottom: 6%; left: 42%; }.integration-node--support { right: 16%; bottom: 17%; }.integration-node--social { right: 7%; top: 31%; }.integration-node--analytics { right: 25%; top: 8%; }.integration-node--reviews { left: 28%; top: 7%; }

/* Performance and project proof */
.performance-preview { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(3rem,8vw,9rem); align-items: center; background: #e9edeb; }.performance-preview__copy h2 { max-width: 8ch; }.performance-preview__copy > p { max-width: 28rem; color: var(--shop-muted); line-height: 1.75; }.performance-console { overflow: hidden; border-radius: 1rem; color: #d9e8de; background: #162e29; box-shadow: 0 25px 50px rgba(25,54,47,.18); }.performance-console__head { display: flex; justify-content: space-between; padding: 1rem 1.25rem; border-bottom: 1px solid rgba(214,234,218,.15); font: 700 .52rem/1 "DM Mono", monospace; letter-spacing: .09em; }.performance-console__head i { color: #b5d78a; font-style: normal; }.performance-console__body { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem 2rem; min-height: 22rem; padding: 2rem 13rem 2rem 2rem; }.performance-console__body article { position: relative; z-index: 2; }.performance-console__body article > span { display: block; color: #eef5e9; font: 600 .75rem/1.2 Manrope, sans-serif; }.performance-console__body article > div { height: .55rem; margin: .8rem 0 .45rem; overflow: hidden; border-radius: 99px; background: rgba(217,232,222,.12); }.performance-console__body article i { display: block; width: var(--progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #8dc3b0, #d1e588); transform-origin: left; animation: progressPreview 2.4s ease both; }.performance-console__body article small { color: #9db0a6; font: .48rem/1.2 "DM Mono", monospace; }.performance-orb { position: absolute; z-index: 1; right: 2rem; top: 50%; display: grid; width: 9.5rem; height: 9.5rem; border: 1px solid rgba(204,230,191,.5); border-radius: 50%; place-content: center; color: #d3e598; background: radial-gradient(circle, rgba(123,169,139,.3), transparent 65%); text-align: center; transform: translateY(-50%); }.performance-orb b { font-size: 2.5rem; font-weight: 400; }.performance-orb span { color: #cfdfcf; font: 700 .43rem/1.55 "DM Mono", monospace; letter-spacing: .07em; }
.project-concept { background: #f8f5ef; }.project-concept__head { display: grid; grid-template-columns: 1fr .6fr; gap: 3rem; max-width: 86rem; margin: 0 auto 3.3rem; }.project-concept__head h2 { max-width: 10ch; }.project-concept__head p { align-self: end; max-width: 27rem; margin: 0; color: var(--shop-muted); line-height: 1.7; }.concept-store { position: relative; display: grid; grid-template-columns: 1fr 12.5rem; gap: 1rem; max-width: 80rem; margin: auto; padding: 1rem; border: 1px solid var(--shop-line); background: #e7d6bf; box-shadow: 0 23px 52px rgba(53,43,32,.12); }.concept-store__browser { overflow: hidden; background: #f9f0e6; }.concept-store__browser > div { display: flex; justify-content: space-between; padding: 1rem 1.4rem; color: #5d3a2b; background: #fffaf2; font: 700 .53rem/1 "DM Mono", monospace; letter-spacing: .1em; }.concept-store__browser > section { position: relative; display: flex; align-items: flex-start; min-height: 31rem; padding: 3rem; overflow: hidden; }.concept-store__browser h3 { position: relative; z-index: 2; max-width: 8ch; margin: 0; color: #352218; font: 600 clamp(2.5rem,5vw,5rem)/.9 var(--shop-serif); letter-spacing: -.07em; }.concept-store__browser img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .75; }.concept-store__browser button { position: absolute; z-index: 2; bottom: 3rem; left: 3rem; padding: .75rem .95rem; border: 0; color: #fff; background: #352218; font: 700 .54rem/1 "DM Mono", monospace; letter-spacing: .06em; }.concept-store__phone { align-self: end; overflow: hidden; border: 5px solid #fefbf5; border-radius: 1rem; background: #fff; box-shadow: 0 15px 28px rgba(64,41,25,.18); transform: translateX(2rem) translateY(2rem) rotate(4deg); }.concept-store__phone p { display: flex; justify-content: space-between; margin: 0; padding: .7rem; color: #563c2d; font: 700 .48rem/1 "DM Mono", monospace; }.concept-store__phone img { display: block; width: 100%; height: 15rem; object-fit: cover; }.concept-store__phone b { display: block; padding: .75rem; color: #493125; font: 600 .85rem/1.3 var(--shop-serif); }.concept-store__phone small { color: #796e63; font: .45rem/1 "DM Mono", monospace; }

/* Why, FAQ, and launch */
.why-shopify { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(3rem,9vw,11rem); align-items: center; }.why-shopify__visual { position: relative; min-height: 38rem; }.why-shopify__visual figure { width: min(75%, 29rem); height: 34rem; margin: 0 auto; overflow: hidden; border-radius: 12rem 12rem 1.2rem 1.2rem; }.why-shopify__visual img { width: 100%; height: 100%; object-fit: cover; }.why-label { position: absolute; padding: .65rem .8rem; border: 1px solid #ced9ce; border-radius: 99px; color: #31584c; background: #fffdf9; box-shadow: 0 8px 20px rgba(32,57,45,.09); font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .07em; }.why-label--one { top: 12%; left: 0; }.why-label--two { top: 35%; right: 0; }.why-label--three { bottom: 12%; left: 4%; }.why-label--four { bottom: 31%; right: -2%; }.why-shopify__copy h2 { max-width: 9ch; }.why-shopify__copy > p { max-width: 30rem; color: var(--shop-muted); line-height: 1.75; }.why-shopify__copy ul { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem 1rem; margin: 2rem 0 0; padding: 0; list-style: none; }.why-shopify__copy li { padding: .75rem 0; border-top: 1px solid var(--shop-line); color: #3d584d; font: 600 .66rem/1.35 "DM Mono", monospace; letter-spacing: .03em; }
.shopify-faq { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(3rem,9vw,11rem); background: #eef1eb; }.shopify-faq__intro { position: sticky; top: 7rem; align-self: start; }.shopify-faq__intro h2 { max-width: 8ch; }.shopify-faq__intro > p { max-width: 22rem; color: var(--shop-muted); line-height: 1.7; }.shopify-faq__list { border-top: 1px solid var(--shop-line); }.shopify-faq details { border-bottom: 1px solid var(--shop-line); }.shopify-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.3rem 0; color: #2c493e; cursor: pointer; font: 600 clamp(1.05rem,1.5vw,1.35rem)/1.25 var(--shop-serif); }.shopify-faq summary span { font: 400 1.4rem/1 Manrope, sans-serif; transition: transform .2s ease; }.shopify-faq details[open] summary span { transform: rotate(45deg); }.shopify-faq details p { max-width: 43rem; margin: 0; padding: 0 0 1.3rem; color: #66766f; font-size: .9rem; line-height: 1.72; }
.shopify-launch { position: relative; display: grid; grid-template-columns: minmax(24rem,1.1fr) minmax(18rem,.9fr); gap: clamp(3rem,8vw,9rem); align-items: center; min-height: 48rem; padding: clamp(5rem,9vw,9rem) 7vw; overflow: hidden; color: #f9f7f1; background: radial-gradient(circle at 15% 85%, rgba(184,103,76,.48), transparent 21rem), radial-gradient(circle at 85% 20%, rgba(90,137,121,.45), transparent 20rem), #112a25; }.launch-copy { position: relative; z-index: 3; order: -1; }.launch-copy .shopify-kicker { color: #cfddae; }.launch-copy h2 { max-width: 9ch; margin: 1rem 0; color: #fff; font: 600 clamp(2.8rem,5vw,5.5rem)/.95 var(--shop-serif); letter-spacing: -.07em; }.launch-copy p { max-width: 30rem; color: #d0ddd4; line-height: 1.75; }.launch-copy > div { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }.launch-call { display: inline-flex; align-items: center; padding: .9rem .25rem; border-bottom: 1px solid #fff; color: #fff; font: 700 .58rem/1 "DM Mono", monospace; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }.launch-store { position: relative; z-index: 2; width: 100%; overflow: hidden; border: 1px solid rgba(255,255,255,.4); border-radius: 1rem; background: #f6eadc; box-shadow: 0 28px 55px rgba(0,0,0,.32); }.launch-store__top { display: flex; justify-content: space-between; padding: 1rem; color: #664837; background: #fffaf4; font: 700 .48rem/1 "DM Mono", monospace; letter-spacing: .09em; }.launch-store__body { position: relative; display: flex; align-items: flex-start; min-height: 26rem; padding: 2.5rem; overflow: hidden; }.launch-store__body > div { position: relative; z-index: 2; }.launch-store__body small { color: #72513e; font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .1em; }.launch-store__body h2 { max-width: 7ch; margin: .7rem 0; color: #3f281d; font: 600 clamp(2.2rem,4vw,4rem)/.92 var(--shop-serif); letter-spacing: -.07em; }.launch-store__body img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .75; }.launch-store__body button { margin-top: 1rem; padding: .7rem .85rem; border: 0; color: #fff; background: #3f281d; font: 700 .52rem/1 "DM Mono", monospace; letter-spacing: .05em; }.launch-product { position: absolute; z-index: 1; width: 11rem; height: 11rem; object-fit: cover; border-radius: 50%; box-shadow: 0 22px 36px rgba(0,0,0,.23); }.launch-product--one { top: 11%; left: 43%; transform: rotate(12deg); }.launch-product--two { right: 4%; bottom: 8%; transform: rotate(-9deg); }.launch-status { position: absolute; z-index: 1; top: 2.4rem; left: 7vw; right: 7vw; display: flex; justify-content: space-between; gap: 1rem; color: rgba(232,242,225,.58); font: 700 .5rem/1 "DM Mono", monospace; letter-spacing: .07em; text-transform: uppercase; }.launch-status span { animation: launchStatus 10s ease infinite; }.launch-status span:nth-child(2) { animation-delay: 1.2s; }.launch-status span:nth-child(3) { animation-delay: 2.4s; }.launch-status span:nth-child(4) { animation-delay: 3.6s; }.launch-status span:nth-child(5) { animation-delay: 4.8s; }

/* Motion */
.hero-store__browser { animation: storeFloat 8s ease-in-out infinite; }.hero-phone { animation: phoneFloat 7s ease-in-out -1s infinite; }.hero-float--added { animation: addedPulse 4.5s ease-in-out infinite; }.hero-float--swatches .swatch { animation: swatchPulse 3s ease-in-out infinite; }.hero-float--swatches .swatch:nth-child(3) { animation-delay: .45s; }.hero-float--swatches .swatch:nth-child(4) { animation-delay: .9s; }
@keyframes storeFloat { 50% { transform: translateY(-.75rem) rotate(-.25deg); } }
@keyframes phoneFloat { 50% { transform: rotate(4deg) translateY(-.65rem); } }
@keyframes addedPulse { 50% { transform: translateY(-.35rem); box-shadow: 0 22px 45px rgba(36,54,47,.2); } }
@keyframes swatchPulse { 50% { transform: scale(1.25); } }
@keyframes journeyStage { 0%, 100% { transform: translateY(0); } 22% { transform: translateY(-.4rem); border-color: #d9e3a3; } }
@keyframes progressPreview { from { transform: scaleX(0); } }
@keyframes calloutPulse { 0%, 100% { transform: translateX(0); } 40% { transform: translateX(.35rem); } }
@keyframes travelBag { 0%, 12% { left: 8%; } 18%, 27% { left: 25%; } 34%, 43% { left: 42%; } 50%, 59% { left: 58%; } 66%, 75% { left: 75%; } 82%, 100% { left: 89%; } }
@keyframes launchStatus { 0%, 35%, 100% { color: rgba(232,242,225,.45); text-shadow: none; } 8%, 25% { color: #fff; text-shadow: 0 0 14px rgba(217,238,175,.7); } }

@media (max-width: 1100px) {
  .shopify-hero { grid-template-columns: 1fr; padding-top: 5rem; }.shopify-hero__copy { max-width: 48rem; }.hero-store { width: min(100%, 48rem); min-height: 33rem; margin: 0 auto; }.hero-store__browser { margin-left: 0; }.hero-phone { right: -1.5rem; }
  .product-demo__shell, .device-commerce, .product-features, .performance-preview { grid-template-columns: 1fr; }.device-commerce__copy, .product-features__copy, .performance-preview__copy { max-width: 40rem; }.device-scene { width: min(100%, 45rem); margin: 0 auto; }.feature-product { width: min(100%, 46rem); margin: 0 auto; }.services-editorial, .shopify-faq { grid-template-columns: .85fr 1.15fr; gap: 4rem; }.shopify-section__heading, .collection-showcase__head, .project-concept__head { grid-template-columns: 1fr .65fr; }
  .product-collection { grid-template-columns: repeat(2, 1fr); }.purchase-journey__steps { grid-template-columns: repeat(3, 1fr); row-gap: 3rem; }.purchase-journey__steps::before { display: none; }.journey-bag { display: none; }.concept-store { grid-template-columns: 1fr 10rem; }.shopify-launch { grid-template-columns: 1fr; }.launch-copy { order: 0; }.launch-store { max-width: 42rem; }.launch-product--one { left: auto; right: 3%; top: 8%; }.launch-product--two { right: 2%; bottom: 2%; }
}

@media (max-width: 760px) {
  .shopify-page .site-header { background: #fffdf9; }.shopify-page .nav { background: #fffdf9; }
  .shopify-section { padding: 4.6rem 6vw; }.shopify-section h2, .shopify-hero h1 { letter-spacing: -.065em; }.shopify-section__heading, .collection-showcase__head, .project-concept__head { display: block; }.shopify-section__heading > p, .collection-showcase__head > p, .project-concept__head p { margin-top: 1.2rem; }.shopify-hero { min-height: auto; gap: 1rem; padding: 4.4rem 6vw 3.5rem; }.shopify-hero h1 { font-size: clamp(3.05rem, 13vw, 4.3rem); }.shopify-hero__lede { font-size: .95rem; }.shopify-hero__actions { display: grid; }.shopify-button { width: 100%; font-size: .58rem; }.hero-store { min-height: 27rem; margin-top: 1rem; }.hero-store__browser { margin-top: 0; border-radius: .9rem; }.store-nav { padding: .85rem; }.store-nav > span { display: none; }.store-editorial { grid-template-columns: 1fr; min-height: 28rem; }.store-editorial > div { min-height: 14rem; padding: 1.4rem; }.store-editorial h2 { font-size: 2.4rem; }.store-editorial img { min-height: 15rem; height: 15rem; }.store-mini-collection { display: none; }.hero-phone { top: auto; right: -.6rem; bottom: -.7rem; width: 7.1rem; }.hero-phone img { height: 8rem; }.hero-float--swatches { top: -1rem; right: .4rem; transform: scale(.86); transform-origin: right top; }.hero-float--added { bottom: 0; left: -.5rem; transform: scale(.84); transform-origin: left bottom; }.hero-float--secure { display: none; }
  .commerce-strip { grid-template-columns: 1fr 1fr; }.commerce-strip > div { min-height: 4rem; font-size: .48rem; }.commerce-strip > div:last-child { grid-column: span 2; }
  .product-demo__shell { display: block; }.product-gallery { grid-template-columns: 3.9rem 1fr; gap: .6rem; padding: .6rem; }.product-gallery__main { min-height: 25rem; }.product-detail { padding: 2.3rem 1.35rem; }.product-detail h3 { font-size: 3rem; }.product-detail__actions { grid-template-columns: 1fr; }
  .store-journey__canvas { min-height: 44rem; border-radius: 1.1rem; }.journey-product { width: 11rem; height: 15rem; }.journey-stage { max-width: 8.5rem; padding: .75rem; }.journey-stage b { font-size: .95rem; }.journey-stage small { font-size: .46rem; }.journey-stage--product { top: 6%; left: 3%; }.journey-stage--presentation { top: 6%; right: 3%; }.journey-stage--page { left: 3%; bottom: 8%; }.journey-stage--store { right: 3%; bottom: 8%; }.journey-path { display: none; }
  .product-collection { display: flex; gap: 1rem; overflow-x: auto; margin-right: -6vw; padding-right: 6vw; scroll-snap-type: x mandatory; }.collection-product { flex: 0 0 78%; scroll-snap-align: start; }.collection-product figure { height: 25rem; }.collection-product figure button { position: static; width: 100%; margin-top: .8rem; opacity: 1; transform: none; }.collection-product figure { display: flex; flex-direction: column; overflow: visible; }.collection-product figure img { height: 25rem; }.collection-product__back { display: none; }
  .device-scene { min-height: 28rem; }.device--desktop { width: 90%; border-width: 5px; }.device--desktop__store { min-height: 20rem; padding: 1.5rem; }.device--desktop__store > div { margin-top: 2.5rem; }.device--desktop__store h3 { font-size: 2rem; }.device--tablet { width: 10.5rem; right: 6%; }.device--phone { width: 6.6rem; right: -1%; top: 2.5rem; }.device--tablet img { height: 8rem; }.device--phone img { height: 8.5rem; }
  .purchase-journey__steps { grid-template-columns: 1fr 1fr; }.journey-ui { width: 7rem; height: 7rem; }.purchase-journey__steps h3 { font-size: .95rem; }.checkout-demo__layouts { grid-template-columns: 1fr; border-radius: 1rem; }.bag-panel { min-height: 22rem; }.checkout-panel { padding: 1.1rem; }.checkout-panel__top p { display: none; }.checkout-panel__content { grid-template-columns: 1fr; }.order-confirmation { right: .9rem; bottom: .9rem; }
  .services-editorial, .shopify-faq, .why-shopify { grid-template-columns: 1fr; gap: 2.8rem; }.services-editorial__intro, .shopify-faq__intro { position: static; }.services-editorial__list { grid-template-columns: 1fr; }.services-editorial__list article:nth-child(2n) { margin-top: 0; }.customizer-shell { grid-template-columns: 1fr; }.customizer-preview { min-height: 22rem; }.customizer-preview__main { min-height: 16rem; }.customizer-preview__products img { height: 4rem; }.feature-product { padding: 1.2rem 0; }.feature-product__body { grid-template-columns: 1fr; }.feature-product__body > img { height: 17rem; }.feature-callout { display: none; }.integration-orbit { width: 100%; aspect-ratio: 1/1; }.integration-store { width: 8rem; height: 8rem; }.integration-node { min-width: 3rem; font-size: .75rem; }.integration-node b { font-size: .38rem; }.integration-node--payment { top: 3%; left: 43%; }.integration-node--email { top: 26%; left: 2%; }.integration-node--shipping { bottom: 17%; left: 5%; }.integration-node--inventory { bottom: 3%; left: 40%; }.integration-node--support { right: 5%; bottom: 17%; }.integration-node--social { right: 1%; top: 30%; }.integration-node--analytics { right: 20%; top: 6%; }.integration-node--reviews { left: 23%; top: 8%; }
  .performance-console__body { padding: 1.4rem 1rem 10rem; grid-template-columns: 1fr; }.performance-orb { top: auto; bottom: .8rem; right: 50%; transform: translateX(50%); }.concept-store { display: block; padding: .6rem; }.concept-store__browser > div { padding: .8rem; }.concept-store__browser > div span { display: none; }.concept-store__browser > section { min-height: 23rem; padding: 1.5rem; }.concept-store__browser h3 { font-size: 2.5rem; }.concept-store__browser button { left: 1.5rem; bottom: 1.5rem; }.concept-store__phone { width: 8.5rem; margin: -6rem 1rem 0 auto; transform: none; }.concept-store__phone img { height: 10rem; }
  .why-shopify__visual { min-height: 31rem; }.why-shopify__visual figure { height: 28rem; }.why-label { font-size: .42rem; }.why-label--one { left: -2%; }.why-label--two { right: -3%; }.why-label--four { display: none; }.why-shopify__copy ul { grid-template-columns: 1fr; }.launch-status { display: grid; grid-template-columns: 1fr 1fr; top: 1rem; font-size: .38rem; }.shopify-launch { min-height: auto; padding: 5rem 6vw 4rem; }.launch-copy h2 { font-size: 3.1rem; }.launch-store__body { min-height: 20rem; padding: 1.4rem; }.launch-store__body h2 { font-size: 2.6rem; }.launch-product { width: 7rem; height: 7rem; }.launch-product--one { right: -1rem; top: 3rem; }.launch-product--two { display: none; }
}

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

.checkout-demo__layouts.is-checkout .checkout-progress i:nth-child(2),
.checkout-demo__layouts.is-complete .checkout-progress i { background: var(--shop-green); }
.checkout-demo__layouts.is-complete .order-confirmation { opacity: 1; transform: none; }

/* Layout correction and scroll-led motion */
.shopify-section__heading:not(.shopify-section__heading--center) > .shopify-kicker { grid-column: 1; grid-row: 1; }
.shopify-section__heading:not(.shopify-section__heading--center) > h2 { grid-column: 1; grid-row: 2; }
.shopify-section__heading:not(.shopify-section__heading--center) > p { grid-column: 2; grid-row: 1 / span 2; align-self: end; }

@media (prefers-reduced-motion: no-preference) {
  .shopify-page.shopify-motion-ready .shopify-section:not(.shopify-hero) { opacity: 0; transform: translateY(1.6rem); transition: opacity .72s ease, transform .72s cubic-bezier(.2,.7,.2,1); }
  .shopify-page.shopify-motion-ready .shopify-section:not(.shopify-hero).is-revealed { opacity: 1; transform: none; }
  .shopify-page.shopify-motion-ready .product-demo.is-revealed .product-demo__shell,
  .shopify-page.shopify-motion-ready .device-commerce.is-revealed .device-scene,
  .shopify-page.shopify-motion-ready .checkout-demo.is-revealed .checkout-demo__layouts,
  .shopify-page.shopify-motion-ready .store-customizer.is-revealed .customizer-preview,
  .shopify-page.shopify-motion-ready .project-concept.is-revealed .concept-store { animation: shopifySectionSettle .9s cubic-bezier(.2,.7,.2,1) both; }
  .shopify-page.shopify-motion-ready .collection-showcase .collection-product { opacity: 0; transform: translateY(1.6rem); transition: opacity .56s ease, transform .56s cubic-bezier(.2,.7,.2,1), box-shadow .3s ease; }
  .shopify-page.shopify-motion-ready .collection-showcase.is-revealed .collection-product { opacity: 1; transform: none; }
  .shopify-page.shopify-motion-ready .collection-showcase.is-revealed .collection-product:nth-child(2) { transition-delay: .09s; }
  .shopify-page.shopify-motion-ready .collection-showcase.is-revealed .collection-product:nth-child(3) { transition-delay: .18s; }
  .shopify-page.shopify-motion-ready .collection-showcase.is-revealed .collection-product:nth-child(4) { transition-delay: .27s; }
  .shopify-page.shopify-motion-ready .collection-showcase.is-revealed .collection-product:nth-child(5) { transition-delay: .36s; }
  .shopify-page.shopify-motion-ready .collection-showcase.is-revealed .collection-product:nth-child(6) { transition-delay: .45s; }
  .shopify-page.shopify-motion-ready .integration-system.is-revealed .integration-orbit { animation: integrationBreath 7s ease-in-out infinite; }
  .shopify-page.shopify-motion-ready .integration-system.is-revealed .integration-node { animation: integrationNode 4.8s ease-in-out infinite; }
  .shopify-page.shopify-motion-ready .integration-system.is-revealed .integration-node:nth-child(3n) { animation-delay: .8s; }
}

@keyframes shopifySectionSettle { from { opacity: 0; transform: translateY(2rem) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes integrationBreath { 50% { transform: scale(1.018); box-shadow: 0 0 5rem rgba(162,196,144,.1); } }
@keyframes integrationNode { 50% { transform: translateY(-.4rem); color: #fff; } }

@media (max-width: 760px) {
  .shopify-section__heading:not(.shopify-section__heading--center) > .shopify-kicker,
  .shopify-section__heading:not(.shopify-section__heading--center) > h2,
  .shopify-section__heading:not(.shopify-section__heading--center) > p { grid-column: auto; grid-row: auto; }
}

/* Local product visual safety: keep the image visible while revealing actions. */
.collection-product figure:hover .collection-product__front,
.collection-product figure:focus-within .collection-product__front { opacity: 1; transform: scale(1.035); }
.collection-product figure:hover .collection-product__back,
.collection-product figure:focus-within .collection-product__back { opacity: 0; }
.collection-product:nth-child(1) .collection-product__front { object-position: 58% 48%; }
.collection-product:nth-child(2) .collection-product__front { object-position: 70% 46%; }
.collection-product:nth-child(3) .collection-product__front { object-position: 90% 37%; }
.collection-product:nth-child(4) .collection-product__front { object-position: 53% 74%; }
.collection-product:nth-child(5) .collection-product__front { object-position: 57% 60%; }
.collection-product:nth-child(6) .collection-product__front { object-position: 78% 68%; }

.project-concept__head > .shopify-kicker { grid-column: 1; grid-row: 1; }
.project-concept__head > h2 { grid-column: 1; grid-row: 2; }
.project-concept__head > p { grid-column: 2; grid-row: 1 / span 2; align-self: end; }

@media (max-width: 760px) {
  .project-concept__head > .shopify-kicker,
  .project-concept__head > h2,
  .project-concept__head > p { grid-column: auto; grid-row: auto; }
}
