:root{--background:#f2f2f2;--foreground:#171717;--muted:#737373;--border:#dedede;font-family:Geist,Arial,Helvetica,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:3rem}body{margin:0;background:var(--background);color:var(--foreground);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,a,input{touch-action:manipulation}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #555;outline-offset:5px}::selection{background:#d5d5d5}[hidden]{display:none!important}.skip-link{position:fixed;top:1rem;left:1rem;z-index:100;background:#fff;padding:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.site-header{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:18px 32px;gap:28px}.wordmark{display:inline-flex;align-items:flex-start;flex-direction:column;justify-self:start}.wordmark>span{font-size:1.125rem;letter-spacing:-.04rem;line-height:1.2;font-weight:500;overflow-wrap:anywhere}.wordmark .brand-star{font-size:1.1rem;font-weight:400;vertical-align:top;padding-left:4px}.wordmark small{font-size:.75rem;letter-spacing:.11em;line-height:1.6;color:var(--muted)}.site-header nav{display:flex;gap:8px;font-size:.875rem;align-items:center}.site-header nav a{display:inline-flex;gap:6px;align-items:center;padding:10px 14px;border-radius:24px}.nav-active{background:#fff}.nav-count{color:var(--muted);font-size:.75rem;align-self:flex-start}.studio-nav{color:var(--muted)}.bag-button{justify-self:end;display:flex;align-items:center;gap:8px;background:#fff;border:0;border-radius:24px;font-size:.875rem;padding:10px 14px}.bag-count{min-width:23px;height:23px;border-radius:50%;background:#e7e7e7;display:grid;place-items:center;font-size:.75rem;padding:0 4px}
.intro{padding:82px 20px 84px;text-align:center}.eyebrow{font-size:.75rem;font-weight:400;letter-spacing:.065em;text-transform:uppercase}.intro>.eyebrow{margin:0 auto 22px;color:var(--muted);border:1px solid #e2e2e2;border-radius:24px;display:table;padding:3px 9px;letter-spacing:0;text-transform:none;font-size:.8125rem}.intro h1{font-size:clamp(2rem,3vw,2.5rem);font-weight:500;line-height:1.14;letter-spacing:-.04em;margin:0;overflow-wrap:anywhere}.intro-description{font-size:1rem;line-height:1.5;margin:15px auto 0;color:var(--muted);max-width:510px}.collection{max-width:1440px;padding:0 32px 65px;margin:auto}.collection-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px}.collection-heading h2{font-size:.875rem;font-weight:400;margin:0;background:#fff;border-radius:24px;padding:8px 14px;display:flex;gap:11px;align-items:center}.collection-heading>span{font-size:.8125rem;color:var(--muted);border:1px solid #e2e2e2;border-radius:24px;padding:8px 14px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product{min-width:0;background:#fff;border-radius:20px;overflow:hidden;padding-bottom:16px}.product-image-button{display:block;position:relative;border:0;padding:30px 40px 8px;width:100%;aspect-ratio:1.2/1;overflow:hidden;text-align:left;background:#fff}.product-image-button img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .5s cubic-bezier(.2,.65,.2,1)}.product-image-button:hover img{transform:scale(1.025)}.product-open{position:absolute;top:16px;right:16px;width:36px;height:36px;background:#f5f5f5;color:var(--muted);display:grid;place-items:center;border-radius:50%;transition:background .2s}.product-image-button:hover .product-open{background:#e8e8e8}.product-meta{display:flex;align-items:baseline;margin:10px 16px 0;font-size:.875rem;color:var(--muted);gap:5px}.product-title-row{display:flex;gap:12px;align-items:baseline;justify-content:space-between;margin:3px 16px 0}.product-title-row h2,.product-title-row h3{font-size:.875rem;font-weight:400;line-height:1.5;letter-spacing:-.01em;margin:0;overflow-wrap:anywhere}.product-title-row button{border:0;background:none;padding:0;text-align:left}.product-title-row button:hover{text-decoration:underline;text-underline-offset:4px}.price{font-size:.875rem;white-space:nowrap}.text-link{display:inline-flex;align-items:center;gap:9px;font-size:.875rem;background:none;border:0;border-bottom:1px solid #bcbcbc;padding:0 0 3px}.text-link:hover{border-color:#171717}.collection-note{font-size:.75rem;line-height:1.6;color:var(--muted);text-align:center;margin:26px 0 0}.site-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px 24px;border-top:1px solid var(--border);padding:24px 32px;font-size:.75rem;color:var(--muted);max-width:1440px;margin:0 auto}
.side-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(100%,620px);max-width:100%;height:100dvh;max-height:100dvh;border:0;padding:0;color:var(--foreground);background:var(--background);overflow-y:auto;overscroll-behavior:contain}.side-dialog::backdrop{background:rgb(0 0 0 / .35)}.dialog-close{position:absolute;top:20px;right:20px;z-index:2;background:#fff;border:0;border-radius:50%;width:40px;height:40px;display:grid;place-items:center}.detail-image{width:100%;height:380px;background:#fff}.detail-image img{width:100%;height:100%;object-fit:contain}.detail-copy{padding:32px 38px 45px}.detail-copy>.eyebrow{color:var(--muted);margin:0 0 13px}.detail-copy h1,.detail-copy h2{font-size:2rem;font-weight:500;line-height:1.15;letter-spacing:-.04em;margin:0}.detail-description{font-size:1rem;line-height:1.6;color:var(--muted);margin:13px 0 0}.detail-price{margin:23px 0;display:flex;gap:13px;align-items:baseline}.detail-price strong{font-weight:500;font-size:1.25rem}.detail-price span{font-size:.75rem;color:var(--muted)}.detail-color{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--border);font-size:.875rem}.detail-color span:last-child{color:var(--muted)}.size-selector{margin:23px 0;border:0;padding:0}.size-selector>p{display:flex;justify-content:space-between;margin:0 0 12px;font-size:.875rem}.size-selector legend{font-size:.875rem;margin-bottom:12px;padding:0}.size-selector>p>span{font-size:.75rem;color:var(--muted)}.size-options{display:flex;flex-wrap:wrap;gap:8px}.size-option{min-width:48px;border:1px solid var(--border);cursor:pointer;font-size:.875rem;text-align:center;position:relative}.size-option>span{display:block;padding:12px 15px}.size-option input{position:absolute;opacity:0;inset:0;pointer-events:none}.size-option:has(input:checked){color:#fff;background:#171717;border-color:#171717}.size-option:has(input:focus-visible){outline:2px solid #555;outline-offset:3px}.size-option.sold-out{color:#888;text-decoration:line-through;cursor:not-allowed}.preview-size{padding:12px 15px;cursor:default}.primary-button{display:flex;width:100%;min-height:52px;padding:15px 20px;align-items:center;justify-content:space-between;gap:16px;border:1px solid #171717;background:#171717;color:#fff;font-size:.875rem;transition:background .2s;text-align:left}.primary-button:hover:not(:disabled){background:#3d3d3d}.primary-button:disabled{background:#dedede;border-color:#dedede;color:#686868}.secondary-button{border:1px solid #171717;background:transparent;padding:12px 18px;min-height:46px;margin-bottom:12px;font-size:.875rem}.availability-note{color:#686868;font-size:.75rem;line-height:1.6;text-align:center;margin:12px 0 0}.form-message{color:#843b28;font-size:.875rem}.form-message:empty{display:none}.design-note,.reference-note{margin-top:28px;border-top:1px solid var(--border);padding-top:23px}.design-note h3,.reference-note h3{font-size:.875rem;font-weight:500;margin:0 0 10px}.design-note p,.reference-note p,.rte{font-size:1rem;line-height:1.65;color:var(--muted)}.design-note p,.reference-note p{margin:0}.rte p+p{margin-top:1em}.rte a{text-decoration:underline;text-underline-offset:3px}.reference-note p{font-size:.75rem;margin-top:12px}.product-page-link{margin-top:24px}
.bag-dialog{width:min(100%,500px);padding:35px 30px 28px}.bag-dialog[open]{display:flex;flex-direction:column}.bag-header{padding:0 30px 20px 0;border-bottom:1px solid var(--border)}.bag-header h2{font-size:1.6rem;font-weight:500;letter-spacing:-.03em;margin:0}.bag-header h2>span{color:var(--muted)}.bag-header p{font-size:1rem;color:var(--muted);margin:8px 0 0}.bag-announcement{color:#555;font-size:.875rem;min-height:28px;margin:0;padding-top:8px}.empty-bag{margin:auto 0;text-align:center;padding:60px 0}.empty-bag>svg{width:38px;height:38px;margin:0 auto 25px;color:var(--muted)}.empty-bag h2,.empty-bag h3{font-size:1.25rem;font-weight:500;letter-spacing:-.025em;margin:0}.empty-bag p{font-size:1rem;color:var(--muted);margin:10px 0 28px}.bag-lines{margin-bottom:30px}.bag-line{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:17px;padding:22px 0;border-bottom:1px solid var(--border)}.bag-line>img{width:90px;height:112px;object-fit:contain;background:#fff}.bag-line-info h2,.bag-line-info h3{font-size:1rem;line-height:1.3;font-weight:500;margin:1px 0 5px;letter-spacing:-.02em}.bag-line-info>p{font-size:.75rem;color:var(--muted);margin:0 0 11px}.quantity-control{display:flex;align-items:center;gap:15px;font-size:.875rem;margin-left:-8px}.quantity-control button{background:none;border:0;padding:8px;min-width:32px}.remove-button{display:block;font-size:.875rem;color:#686868;padding:2px 0 0;border:0;text-decoration:underline;background:none;text-underline-offset:2px}.line-price{font-size:.875rem;white-space:nowrap}.bag-bottom{margin-top:auto;padding-top:15px}.subtotal{display:flex;justify-content:space-between;font-size:1rem}.subtotal strong{font-weight:500}.bag-bottom>p{font-size:.75rem;color:var(--muted);line-height:1.6;margin:10px 0 20px}.continue-shopping{margin:24px auto 0;display:flex;width:fit-content}.cart-fallback{font-size:.75rem;text-align:center;margin:20px 0 0}.page-shell{width:100%;max-width:960px;margin:auto;padding:60px 32px 90px;min-height:60vh}.page-shell>h1{font-size:2rem;font-weight:500;letter-spacing:-.04em}.cart-page{max-width:700px}.product-page{max-width:1300px;display:grid;grid-template-columns:1.15fr 1fr;gap:32px;margin:40px auto 80px;padding:0 32px}.product-page-image{background:#fff;border-radius:20px;overflow:hidden;align-self:start}.product-page-image img{display:block;width:100%;height:auto}.product-page .detail-copy{padding:30px 0}.quantity-label{display:block;font-size:.875rem}.quantity-label input{display:block;max-width:80px;background:#fff;border:1px solid var(--border);padding:8px;margin:6px 0}.empty-bag form{max-width:380px;margin:30px auto;text-align:left}.empty-bag input[type=password]{display:block;width:100%;padding:12px;border:1px solid var(--border);margin:8px 0 16px}.product noscript{display:block;padding:10px 16px}
@media(max-width:1000px){.site-header{gap:20px;padding-top:22px;padding-bottom:22px}.product-grid{gap:17px}.intro{padding-top:62px;padding-bottom:66px}.product-title-row{gap:6px}}
@media(max-width:680px){.site-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:22px 20px}.wordmark>span{font-size:1.35rem}.wordmark .brand-star{font-size:1.2rem}.site-header nav{display:none}.intro{padding:48px 22px 55px}.intro>.eyebrow{margin-bottom:16px}.intro h1{font-size:2.25rem;line-height:1.16;letter-spacing:-.05em}.intro-description{max-width:340px;line-height:1.6;margin-top:20px}.desktop-break{display:none}.collection{padding:0 20px 42px}.collection-heading{padding-top:16px;margin-bottom:18px}.product-grid{grid-template-columns:1fr;gap:18px}.product-image-button{aspect-ratio:1.2/1;padding:30px 34px 8px}.product-title-row h3,.product-title-row h2{font-size:1rem}.collection-note{max-width:340px;margin:25px auto 0}.site-footer{padding:22px 20px;flex-direction:column;gap:7px}.detail-image{height:310px}.detail-copy{padding:27px 24px 40px}.detail-copy h2{font-size:1.8rem}.bag-dialog{padding:28px 22px}.bag-line{grid-template-columns:80px minmax(0,1fr) auto;gap:13px}.bag-line>img{width:80px;height:105px}.product-page{display:block;padding:0 20px;margin-top:20px}.page-shell{padding:35px 20px 60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
