/* ETRNL storefront UI — ported from the Codex frontend */
:root{--bg:#f2f0ea;--ink:#111;--muted:#77756f;--line:rgba(17,17,17,.18);--etrnl-paper:#f4f2ee;--etrnl-panel:#f4f3f0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;letter-spacing:-.02em}body.etrnl-overlay-open{overflow:hidden}a{color:inherit}.shopify-section-group-header-group,.shopify-section-group-footer-group{position:relative;z-index:auto}.site-header{position:sticky;top:0;z-index:80;height:68px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 24px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px);color:#111}.site-header.home-header{position:fixed;inset:0 0 auto;height:78px;padding:0 32px;border:0;background:transparent;color:#fff;backdrop-filter:none;mix-blend-mode:difference}.site-header.home-header.is-past-hero{background:#f4f2ee;color:#090909;border-bottom:1px solid #d7d3cc;mix-blend-mode:normal}.site-header a,.header-action{color:inherit;text-decoration:none}.header-brand{justify-self:start;font-size:13px;font-weight:700;letter-spacing:.3em}.header-center,.header-right{display:flex;align-items:center;gap:30px}.header-center{justify-self:center}.header-right{justify-self:end}.header-center a,.header-action{font-size:11px;font-weight:600;letter-spacing:.2em}.header-action{appearance:none;border:0;background:transparent;padding:0;font-family:inherit;cursor:pointer}.mobile-menu-button{display:none}
/* Navigation overlays */
.search-modal-layer,.mobile-menu-layer{position:fixed;inset:0;z-index:108}.search-modal-layer[hidden],.mobile-menu-layer[hidden],.account-modal-layer[hidden]{display:none!important}.search-modal-backdrop,.mobile-menu-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.72)}.search-modal{position:absolute;top:0;right:0;width:min(720px,calc(100vw - 12px));height:100dvh;overflow-y:auto;background:#f4f3f0;color:#0a0a0a}.search-modal-head{min-height:118px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid #d7d4cf;font-size:22px;letter-spacing:.1em}.search-input-wrap{padding:34px 36px 24px;border-bottom:1px solid #d7d4cf}.search-input-wrap input{width:100%;height:58px;border:0;border-bottom:1px solid #111;border-radius:0;outline:0;background:transparent;color:#111;font-family:inherit;font-size:22px;letter-spacing:-.02em}.search-input-wrap input::placeholder{color:#aaa59f}.search-results{padding:0 36px 42px}.search-state{padding:70px 0;color:#aaa59f;text-align:center;font-size:12px;letter-spacing:.14em}.search-result{min-height:132px;display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:20px;border-bottom:1px solid #d7d4cf;color:inherit;text-decoration:none;font-size:12px}.search-result-image{width:88px;height:106px;overflow:hidden;background:#d7d4cf}.search-result-image img{width:100%;height:100%;object-fit:cover}.search-result-copy{display:grid;gap:8px;min-width:0}.search-result-copy span{overflow:hidden;color:#918d86;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-panel{position:absolute;top:0;right:0;width:min(420px,calc(100vw - 8px));height:100dvh;background:#f4f3f0;color:#0a0a0a;padding:24px}.mobile-menu-head{min-height:58px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7d4cf;font-size:12px;letter-spacing:.2em}.mobile-menu-links{display:grid;padding-top:34px}.mobile-menu-links a,.mobile-menu-links button{min-height:66px;display:flex;align-items:center;border:0;border-bottom:1px solid #d7d4cf;background:transparent;color:inherit;padding:0;text-decoration:none;font:inherit;font-size:20px;letter-spacing:.08em;cursor:pointer}
/* Cart drawer */
.cart-drawer-layer{position:fixed;inset:0;z-index:100;pointer-events:none;visibility:hidden;transition:visibility 0s linear 320ms}.cart-drawer-layer.is-open{pointer-events:auto;visibility:visible;transition-delay:0s}.cart-drawer-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.46);opacity:0;transition:opacity 260ms ease}.cart-drawer-layer.is-open .cart-drawer-backdrop{opacity:1}.cart-drawer{position:absolute;inset:0 0 0 auto;width:min(820px,calc(100vw - 12px));height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:#f4f3f0;color:#0a0a0a;transform:translateX(100%);transition:transform 320ms cubic-bezier(.22,.72,.2,1);box-shadow:-14px 0 34px rgba(0,0,0,.08)}.cart-drawer-layer.is-open .cart-drawer{transform:translateX(0)}.cart-drawer-head{min-height:138px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7d4cf;font-size:25px;letter-spacing:.08em}.drawer-close{border:0;background:transparent;color:inherit;padding:0;font:inherit;font-size:24px;letter-spacing:.08em;cursor:pointer}.drawer-close span{font-size:31px;font-weight:300;line-height:0}.cart-drawer-body{overflow-y:auto;min-height:0}.drawer-empty{margin:0;padding-top:140px;text-align:center;color:#b2afa9;font-size:24px;letter-spacing:.08em}.drawer-items{padding:8px 38px 24px}.drawer-item{display:grid;grid-template-columns:112px minmax(0,1fr);gap:22px;padding:28px 0;border-bottom:1px solid #d7d4cf}.drawer-item-image{position:relative;aspect-ratio:.8;overflow:hidden;background:#dedbd5}.drawer-item-image img{width:100%;height:100%;object-fit:cover}.drawer-item-copy{min-width:0;font-size:13px}.drawer-item-copy p{margin:9px 0 0;color:#8d8983}.drawer-item-line{display:flex;justify-content:space-between;gap:16px;font-size:14px}.drawer-item-controls{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px}.drawer-item-controls label{display:flex;align-items:center;gap:10px}.drawer-item-controls select{border:1px solid #c8c5c0;background:transparent;padding:6px 22px 6px 8px}.drawer-remove{border:0;background:transparent;padding:0;text-decoration:underline;cursor:pointer;font-size:11px;letter-spacing:.05em}.cart-drawer-foot{padding:28px 38px 34px;border-top:1px solid #d7d4cf;background:#f4f3f0}.drawer-subtotal{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px;font-size:24px}.drawer-checkout-note{margin:0 0 22px;color:#8d8983;font-size:10px;line-height:1.5;letter-spacing:.08em}.drawer-checkout{width:100%;min-height:88px;border:0;background:#090909;color:#fff;font-size:20px;font-weight:700;letter-spacing:.24em;cursor:pointer}.drawer-checkout:disabled{background:#c9c6c1;cursor:not-allowed}.drawer-error{margin:0 0 18px;font-size:12px;color:#8d2525}
/* Account modal */
.account-modal-layer{position:fixed;inset:0;z-index:110;display:grid;place-items:start center;padding:82px 28px;overflow-y:auto}.account-modal-backdrop{position:fixed;inset:0;border:0;background:rgba(0,0,0,.9)}.account-modal{position:relative;z-index:1;width:min(960px,calc(100vw - 56px));background:#f4f3f0;color:#0a0a0a;padding:64px 44px 52px}.account-modal-close{position:absolute;top:42px;right:42px;border:0;background:transparent;color:inherit;font-size:24px;letter-spacing:.08em;cursor:pointer}.account-modal-close span{font-size:30px}.account-modal-heading h2{margin:0;font-size:39px;letter-spacing:-.04em}.account-modal-heading p{margin:14px 0 52px;color:#918d86;font-size:23px}.account-form{display:grid;gap:34px}.account-form[hidden]{display:none}.account-form label{display:grid;gap:12px}.account-form label>span{color:#8d8983;font-size:18px;letter-spacing:.12em}.account-form input{width:100%;min-height:82px;border:1px solid #d4d1cc;background:transparent;padding:0 18px;font-size:20px;outline:none}.account-form input:focus{border-color:#8b8781}.account-submit{width:100%;margin-top:14px;min-height:90px;border:0;background:#090909;color:#fff;font-size:20px;font-weight:700;letter-spacing:.25em;cursor:pointer}.account-form-message{margin:-12px 0 18px;font-size:11px;letter-spacing:.08em;color:#8d8983}.account-mode-switch,.account-forgot-password{display:block;margin:36px auto 0;border:0;background:transparent;color:#96918a;font-size:19px;letter-spacing:.07em;cursor:pointer;text-decoration:none}.account-forgot-password{margin-top:20px;font-size:14px}.account-orders{margin:-18px 0 28px;border-top:1px solid #d7d4cf}.account-orders-head{min-height:52px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7d4cf;font-size:11px;letter-spacing:.12em}.account-orders-state{margin:0;padding:34px 0;color:#918d86;font-size:11px;letter-spacing:.1em}.account-order{padding:20px 0;border-bottom:1px solid #d7d4cf;font-size:11px}.account-order-topline{display:flex;justify-content:space-between;gap:20px}.account-order-topline>div{display:grid;gap:5px}.account-order-topline span,.account-order-items,.account-order-fulfillment{color:#918d86}.account-order-items,.account-order-fulfillment{display:grid;gap:5px;margin-top:14px}
/* Product detail */
.etrnl-product-page{min-height:calc(100vh - 68px);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.75fr);background:#f4f2ee}.product-detail-image{position:relative;align-self:start;aspect-ratio:4/5;min-height:0;border-right:1px solid var(--line);background:#c9c9c6}.product-detail-image img{width:100%;height:100%;display:block;object-fit:contain;object-position:center top}.product-info{display:flex;flex-direction:column;justify-content:space-between;gap:42px;padding:42px 34px 34px;background:#f4f2ee}.product-heading-block{display:grid;gap:18px}.product-kicker{margin:0;color:#918d86;font-size:9px;letter-spacing:.2em}.product-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid rgba(17,17,17,.18)}.product-title-line h1,.product-title-line strong{margin:0;font-size:22px;line-height:1;font-weight:700;letter-spacing:-.04em}.product-info .description{max-width:36ch;margin:0;color:#85817a;font-size:12px;line-height:1.6}.buy-box{display:grid;gap:12px}.size-heading{display:flex;justify-content:space-between;gap:16px;color:#77756f;font-size:10px;letter-spacing:.08em}.size-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.size-button{min-height:48px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;color:#111;font-family:inherit;cursor:pointer}.size-button.selected{background:#111;color:#fff}.size-button:disabled{color:#aaa59f;text-decoration:line-through;cursor:not-allowed}.primary-button{width:100%;min-height:52px;border:0;background:#111;color:#fff;font-family:inherit;font-weight:700;letter-spacing:.14em;cursor:pointer}.primary-button:disabled{background:#c9c6c1;cursor:not-allowed}.product-specs{border-top:1px solid var(--ink)}.product-specs p{margin:0;padding:14px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.06em}.product-specs span{color:#85817a}.product-specs strong{font-weight:500}@media(min-width:801px){.product-info{position:sticky;top:68px;height:calc(100vh - 68px);overflow-y:auto}}
/* Cart page */
.etrnl-cart-page{max-width:1040px;margin:0 auto;padding:72px 24px 100px;min-height:70vh}.etrnl-cart-page h1{margin:0 0 36px;font-size:52px;letter-spacing:-.06em}.cart-list{border-top:1px solid var(--ink)}.cart-row{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.cart-thumb{position:relative;aspect-ratio:.8;overflow:hidden;background:#dedbd5}.cart-thumb img{width:100%;height:100%;object-fit:cover}.cart-copy p{margin:0 0 7px;font-size:12px}.cart-copy p:last-child{color:var(--muted)}.cart-actions{display:flex;flex-direction:column;align-items:flex-end;gap:20px;font-size:11px}.cart-actions label{display:flex;align-items:center;gap:10px}.cart-actions select{border:1px solid var(--line);background:transparent;padding:6px 20px 6px 8px}.plain-button{border:0;background:transparent;padding:0;text-decoration:underline;font:inherit;cursor:pointer}.cart-summary{max-width:420px;margin-left:auto;padding-top:28px}.cart-summary-line{display:flex;justify-content:space-between;gap:20px;font-size:18px}.cart-summary-note{margin:12px 0 20px;color:var(--muted);font-size:10px;line-height:1.5;letter-spacing:.08em}.cart-page-checkout{width:100%;min-height:58px;border:0;background:#111;color:#fff;font-weight:700;letter-spacing:.16em;cursor:pointer}.empty-state{min-height:70vh;display:grid;place-content:center;gap:14px;text-align:center;font-size:12px}.empty-state a{text-decoration:underline}
/* Info + 404 */
.status-page,.info-page{min-height:calc(100vh - 68px);padding:72px 24px 100px}.info-page{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:64px;max-width:1200px;margin:0 auto}.info-heading{display:grid;align-content:start;gap:22px}.info-heading h1,.status-page h1{margin:0;font-size:clamp(48px,9vw,112px);line-height:.86;letter-spacing:-.075em}.info-body{align-self:end;border-top:1px solid var(--ink)}.info-body p{margin:0;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.65}.eyebrow{margin:0;font-size:10px;letter-spacing:.1em}.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;background:#111;color:#fff;text-decoration:none;font-size:11px;letter-spacing:.12em}.status-page{max-width:1000px;margin:0 auto;display:grid;align-content:center;gap:22px}.status-page>p:not(.eyebrow){max-width:48ch;margin:0;color:var(--muted);line-height:1.6}
/* Footer */
.footer.claude-footer{min-height:132px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding:30px 10px;background:#f4f3f0;color:#0a0a0a;border-top:1px solid #d7d4cf;font-size:15px;letter-spacing:.11em}.claude-footer .footer-brand{font-weight:800;letter-spacing:.28em}.claude-footer .footer-links{display:flex;gap:42px;justify-content:center;color:#8f8b85;font-size:14px}.claude-footer .footer-links a{text-decoration:none}.claude-footer .footer-copyright{justify-self:end;color:#aaa59e;font-size:12px;letter-spacing:.03em}
@media(max-width:800px){.site-header{height:62px;grid-template-columns:1fr auto;padding:0 14px}.site-header.home-header{height:62px;padding:0 14px}.header-center,.header-search,.header-account{display:none}.header-right{gap:14px}.mobile-menu-button{display:block}.search-modal{width:calc(100vw - 8px)}.search-modal-head{min-height:90px;padding:0 22px;font-size:17px}.search-input-wrap{padding:26px 22px 20px}.search-input-wrap input{height:50px;font-size:18px}.search-results{padding:0 22px 30px}.search-result{min-height:112px;grid-template-columns:72px minmax(0,1fr) auto;gap:14px}.search-result-image{width:72px;height:88px}.cart-drawer{width:calc(100vw - 8px)}.cart-drawer-head{min-height:92px;padding:0 24px;font-size:18px}.drawer-close{font-size:16px}.drawer-empty{padding-top:110px;font-size:16px}.drawer-items{padding:4px 20px 20px}.drawer-item{grid-template-columns:88px minmax(0,1fr);gap:16px;padding:22px 0}.cart-drawer-foot{padding:22px 24px 28px}.drawer-subtotal{font-size:18px;margin-bottom:22px}.drawer-checkout{min-height:64px;font-size:14px}.account-modal-layer{padding:38px 14px;align-items:start}.account-modal{width:100%;padding:76px 24px 36px}.account-modal-close{top:24px;right:22px;font-size:16px}.account-modal-heading h2{font-size:29px}.account-modal-heading p{margin:10px 0 36px;font-size:16px;line-height:1.45}.account-form{gap:24px}.account-form label>span{font-size:13px}.account-form input{min-height:58px;font-size:16px}.account-submit{min-height:64px;font-size:14px}.account-mode-switch{font-size:14px;text-align:center}.etrnl-product-page{grid-template-columns:1fr}.product-detail-image{border-right:0;border-bottom:1px solid var(--line)}.product-info{padding:28px 18px 40px}.product-title-line h1,.product-title-line strong{font-size:19px}.etrnl-cart-page{padding:44px 16px 72px}.etrnl-cart-page h1{font-size:42px}.cart-row{grid-template-columns:92px minmax(0,1fr);gap:16px}.cart-actions{grid-column:2;align-items:flex-start;flex-direction:row;justify-content:space-between}.info-page{grid-template-columns:1fr;gap:54px;padding:54px 18px 72px}.status-page{padding:54px 18px 72px}.footer.claude-footer{grid-template-columns:1fr;justify-items:start;min-height:250px;padding:44px 28px 36px;gap:30px}.claude-footer .footer-links{justify-content:flex-start;flex-wrap:wrap;gap:22px 34px}.claude-footer .footer-copyright{justify-self:start}}
