/* Static compositions of the canonical Hey May token export. */
.foundation { font:var(--typography-body); color:var(--color-text-primary); background:var(--color-background-base); }
.foundation * { box-sizing:border-box; }
.foundation a { color:var(--color-action-primary-default); text-underline-offset:var(--space-1); }
.foundation a:hover { color:var(--color-action-primary-hover); }
.foundation :focus-visible { outline:var(--layout-border) solid var(--color-focus); outline-offset:var(--space-1); }
.foundation .shell { max-width:var(--layout-content); margin:0 auto; padding:var(--layout-page); }
.foundation .masthead { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--layout-gap); border-bottom:var(--layout-border) solid var(--color-border-default); }
.foundation nav { display:flex; flex-wrap:wrap; gap:var(--space-6); }
.foundation nav a { padding:var(--space-3) 0; }
.foundation .brand { font:var(--typography-heading1); text-decoration:none; }
.foundation h1,.foundation h2 { font:var(--typography-heading1); margin:0 0 var(--space-6); }
.foundation h3 { font:var(--typography-label); margin:0 0 var(--space-3); }
.foundation p { margin:0 0 var(--space-6); }
.foundation .eyebrow { font:var(--typography-label); color:var(--color-text-muted); }
.foundation .split { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--space-24)),1fr)); gap:var(--space-8); align-items:center; }
.foundation .hero { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-8); }
.foundation .hero > * { flex:1; flex-basis:calc(var(--space-24) * 3); min-width:0; }
.foundation img { display:block; width:100%; height:auto; }
.foundation .hero-image { aspect-ratio:3 / 4; object-fit:cover; }
.foundation .intro { padding:var(--space-6) 0; }
.foundation .cta { display:inline-flex; align-items:center; justify-content:center; min-height:var(--button-lg-height); padding:var(--space-3) var(--space-6); background:var(--color-action-primary-default); color:var(--color-text-onAction); font:var(--typography-label); text-decoration:none; border-radius:var(--button-radius); }
.foundation .cta:hover { background:var(--color-action-primary-hover); color:var(--color-text-onAction); }
.foundation .actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-6); }
.foundation .section { padding:var(--space-12) 0; border-bottom:var(--layout-border) solid var(--color-border-default); }
.foundation .tint { background:var(--color-background-elevated); padding:var(--space-8); }
.foundation .cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(var(--space-24) * 2)),1fr)); gap:var(--space-6); }
.foundation .cards img { aspect-ratio:3 / 4; object-fit:cover; margin-bottom:var(--space-4); }
.foundation dl { display:grid; grid-template-columns:1fr 2fr; gap:var(--space-3); margin:var(--space-6) 0; }
.foundation dt { color:var(--color-text-muted); }
.foundation dd { margin:0; }
.foundation summary { cursor:pointer; padding:var(--space-4) 0; font:var(--typography-label); }
.foundation details { border-bottom:var(--layout-border) solid var(--color-border-default); }
.foundation select { width:100%; min-height:var(--button-lg-height); font:var(--typography-body); color:var(--color-text-primary); background:var(--color-background-base); border:var(--layout-border) solid var(--color-border-interactive); margin:var(--space-3) 0; padding:var(--space-3); }
.foundation .purchase-bar { position:sticky; bottom:0; padding:var(--space-3) var(--space-6); background:var(--color-background-base); border-top:var(--layout-border) solid var(--color-border-default); display:flex; justify-content:center; gap:var(--space-4); align-items:center; }
.foundation .skip { display:block; padding:var(--space-2) var(--space-6); }
.foundation footer { padding:var(--space-8) 0; }
.foundation .note { color:var(--color-text-muted); }

.foundation[data-foundation-page="home"] { padding:0; }
.foundation .hero { min-height:0; }

.foundation .gallery { min-width:0; padding:0; }
.foundation .gallery-controls { display:flex; align-items:center; justify-content:space-between; gap:var(--space-3); margin:var(--space-4) 0; }
.foundation .gallery-controls p { margin:0; }
.foundation .gallery-arrow { min-width:var(--button-lg-height); min-height:var(--button-lg-height); font:var(--typography-body); border:var(--layout-border) solid var(--color-border-interactive); border-radius:var(--button-radius); color:var(--color-text-primary); background:var(--color-background-base); cursor:pointer; }
.foundation .gallery-arrow:hover { background:var(--color-background-elevated); }
.foundation .gallery-thumbs { display:flex; gap:var(--space-3); overflow-x:auto; position:relative; padding:var(--space-2); }
.foundation .gallery-thumb { flex:none; width:var(--space-16); padding:var(--space-1); border:var(--layout-border) solid var(--color-transparent); background:var(--color-background-base); cursor:pointer; }
.foundation .gallery-thumb[aria-current="true"] { border-color:var(--color-border-interactive); background:var(--color-background-elevated); }
.foundation .gallery-thumb img { aspect-ratio:3 / 4; object-fit:cover; }
.foundation .gallery-controls[hidden],.foundation .gallery-thumbs[hidden] { display:none; }
.foundation #product-image { touch-action:pan-y; user-select:none; }

/* Product pages reuse the reference layout at all catalog sizes. */
.foundation .purchase-actions { gap:var(--space-3); align-items:stretch; }
.foundation .purchase-actions .cta { flex:1; text-align:center; }
.foundation .purchase-bar .purchase-actions { width:100%; max-width:var(--layout-content); }
.foundation .intro,.foundation h1,.foundation h2,.foundation dd { overflow-wrap:anywhere; }
.foundation .gallery-arrow[hidden] { display:none; }
