/* General Store: shared brand, distinct collections. No commerce assumptions. */
.general-store{background:#f8f6f0;color:#0e243a}
.general-store main{max-width:1440px;margin:auto}
.gs-edition{display:flex;justify-content:space-between;gap:24px;margin:0 40px;padding:22px 0;border-bottom:1px solid #c8ced0;font:600 12px 'Barlow Semi Condensed',sans-serif;letter-spacing:.08em}
.gs-edition a{letter-spacing:0}
.gs-hero{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:45px;padding:60px 40px 48px}
.gs-hero-copy h1{font:800 clamp(62px,6.7vw,96px)/.94 'Barlow Condensed',sans-serif;letter-spacing:-.025em;margin:23px 0 30px;text-transform:none}
.gs-hero-copy>p{font-size:17px;line-height:1.8}
.gs-text-link{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid #0e243a;padding:13px 0 8px;font:600 18px 'Barlow Semi Condensed',sans-serif;min-height:44px}
.gs-text-link:hover{color:#a3121e;border-color:#a3121e}
.gs-hero-copy .gs-status{font-size:12px;margin:24px 0 0;color:#526475}
.gs-hero figure{margin:0;min-width:0}
.gs-hero figure>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.gs-hero figcaption{font-size:10px;margin-top:12px;letter-spacing:.03em;color:#526475}
.gs-collection-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0 40px;border-top:1px solid #a9b6be;border-bottom:1px solid #a9b6be;scroll-margin-top:130px}
.gs-collection-nav a{display:block;padding:24px 20px;border-right:1px solid #c8ced0;font:600 25px/1.2 'Barlow Semi Condensed',sans-serif}
.gs-collection-nav a:first-child{padding-left:0}.gs-collection-nav a:last-child{border:0}
.gs-collection-nav a:hover{color:#a3121e;background:#eeeae1}
.gs-collection-nav span{display:block;font:400 10px/1.7 'Public Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;margin-bottom:10px}
.gs-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:60px 40px 40px;align-items:start}
.gs-intro>p:first-child{font:600 36px/1.1 'Barlow Semi Condensed',sans-serif;margin:0}
.gs-intro>p:last-child{font-size:16px;line-height:1.8;max-width:52ch;margin:0}
.gs-collection{padding:45px 40px 70px;scroll-margin-top:105px}
.gs-collection-heading{display:grid;grid-template-columns:1fr .7fr;gap:70px;align-items:end;border-top:1px solid #a9b6be;padding-top:28px;margin-bottom:34px}
.gs-collection-heading h2{font:800 clamp(44px,5vw,66px)/1 'Barlow Condensed',sans-serif;text-transform:none;margin:14px 0}
.gs-collection-heading>p{max-width:48ch;font-size:15px;line-height:1.8;margin:0 0 5px}
.gs-subtitle{font:600 22px 'Barlow Semi Condensed',sans-serif;margin:0}
.gs-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.gs-card{min-width:0;scroll-margin-top:130px}
.gs-photo{position:relative;overflow:hidden;aspect-ratio:var(--photo-ratio);background:#e9e5dd;isolation:isolate}
.gs-photo>img{position:absolute;display:block;width:var(--photo-width);max-width:none;height:auto;left:var(--photo-left);top:var(--photo-top);margin:0}
.gs-card .gs-photo{height:275px;aspect-ratio:auto}
/* Each viewport has a fixed width matching its focal rectangle, so photo geometry stays intact. */
.gs-card .gs-photo>img{top:var(--photo-top)}
.gs-meta{font:600 11px/1.4 'Barlow Semi Condensed',sans-serif;text-transform:uppercase;letter-spacing:.06em;margin:20px 0 9px;color:#526475}
.gs-card h3{font:600 25px/1.12 'Barlow Semi Condensed',sans-serif;margin:0 0 12px;min-height:56px}
.gs-card-copy{font-size:13px;line-height:1.7;margin:0 0 18px;min-height:45px;max-width:30ch}
.gs-card details{border-top:1px solid #bdc7cc;margin:0;padding:0}
.gs-card summary{font:600 14px/1.5 'Barlow Semi Condensed',sans-serif;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:44px;padding:9px 0}
.gs-card summary::-webkit-details-marker{display:none}.gs-card details[open] summary span{transform:rotate(45deg)}
.gs-card details p{font-size:12px;line-height:1.75;margin:10px 0}
.gs-card .gs-concept-label{color:#526475;font-size:11px}
.gs-interlude{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#e3edf2;padding:35px 60px;margin:0 40px 25px}
.gs-interlude>img{width:115px;height:auto}
.gs-interlude>div{flex:1}.gs-interlude p{font:800 41px/1 'Barlow Condensed',sans-serif;margin:14px 0 0}
.gs-interlude>a{font:600 17px 'Barlow Semi Condensed',sans-serif;border-bottom:1px solid #0e243a;padding:12px 0}
#souvenir-counter{background:#f0ece2;border-top:5px solid #a3121e}
#souvenir-counter .gs-collection-heading{border-top:0;padding-top:0}
.gs-notes{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin:15px 40px 65px;border-top:1px solid #a9b6be;padding-top:35px}
.gs-notes h2{font:800 56px/.98 'Barlow Condensed',sans-serif;text-transform:none;margin:18px 0}
.gs-notes>div>p{font-size:13px;line-height:1.8;margin:0 0 16px;max-width:66ch}
.general-store .eyebrow,.gs-home .eyebrow{font:600 11px/1.5 'Barlow Semi Condensed',sans-serif;letter-spacing:.12em}
.gs-home{max-width:1360px;margin:20px auto 70px;padding:42px 40px 30px;border-top:4px solid #0e243a;background:#f0ece2;color:#0e243a}
.gs-home-heading{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:32px;margin-bottom:30px}
.gs-home-heading h2{font:800 60px/.98 'Barlow Condensed',sans-serif;text-transform:none;margin:18px 0 0}
.gs-home-heading>p{font-size:15px;line-height:1.7;margin:0}.gs-home-heading .gs-text-link{font-size:16px}
.gs-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gs-home-card{display:block}.gs-home-card .gs-photo{height:280px;aspect-ratio:auto}
.gs-home-card>span{display:flex;justify-content:space-between;padding:18px 0 12px;border-bottom:1px solid #a9b6be;font:600 24px 'Barlow Semi Condensed',sans-serif}
.gs-home-note{font-size:11px;color:#526475;margin:24px 0 0}
.general-store :focus-visible,.gs-home :focus-visible{outline:2px solid #a3121e;outline-offset:5px}
@media(min-width:1400px){.gs-card .gs-photo{height:310px}}
@media(max-width:1050px){.gs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}.gs-card .gs-photo{height:auto;aspect-ratio:var(--photo-ratio);max-height:410px}.gs-hero{gap:30px}.gs-hero-copy h1{font-size:68px}.gs-home-heading{grid-template-columns:1fr 1fr}.gs-home-heading>a{grid-column:2;justify-self:start}.gs-home-heading>p{align-self:center}.gs-home-card .gs-photo{height:230px}.gs-interlude{padding:30px}.gs-interlude p{font-size:35px}.gs-interlude>a{max-width:160px}}
@media(max-width:700px){.gs-edition{margin:0 20px;padding:18px 0;font-size:10px}.gs-hero{grid-template-columns:1fr;padding:35px 20px;gap:30px}.gs-hero-copy h1{font-size:74px;max-width:500px;margin:20px 0}.gs-hero-copy>p{font-size:16px}.gs-hero-copy .gs-status{margin-top:18px}.gs-collection-nav{margin:0 20px;grid-template-columns:1fr}.gs-collection-nav a,.gs-collection-nav a:first-child{padding:18px 0;border-right:0;border-bottom:1px solid #c8ced0;font-size:24px}.gs-collection-nav span{margin-bottom:5px}.gs-intro{grid-template-columns:1fr;gap:20px;padding:35px 20px 20px}.gs-intro>p:first-child{font-size:31px}.gs-intro>p:last-child{font-size:14px}.gs-collection{padding:35px 20px 45px}.gs-collection-heading{grid-template-columns:1fr;gap:20px;padding-top:24px;margin-bottom:28px}.gs-collection-heading h2{font-size:51px}.gs-collection-heading>p{font-size:14px}.gs-grid{gap:30px 16px}.gs-card h3{font-size:23px;min-height:0}.gs-card-copy{font-size:12px;min-height:0}.gs-meta{font-size:10px}.gs-card details p{font-size:11px}.gs-card .gs-photo{height:230px;aspect-ratio:auto}.gs-interlude{margin:0 20px;gap:22px;padding:25px;flex-wrap:wrap}.gs-interlude>img{width:75px}.gs-interlude p{font-size:31px}.gs-interlude>a{max-width:none;flex-basis:auto;margin-left:97px;font-size:15px}.gs-notes{grid-template-columns:1fr;gap:20px;margin:0 20px 40px;padding-top:28px}.gs-notes h2{font-size:49px}.gs-home{margin:10px 20px 45px;padding:28px 20px 24px}.gs-home-heading{grid-template-columns:1fr;gap:20px}.gs-home-heading>a{grid-column:1}.gs-home-heading h2{font-size:53px}.gs-home-grid{gap:25px;grid-template-columns:1fr}.gs-home-card .gs-photo{height:auto;aspect-ratio:4/3}.gs-home-card>span{font-size:25px}}
@media(max-width:420px){.gs-grid{grid-template-columns:1fr;gap:35px}.gs-card .gs-photo{height:auto;aspect-ratio:var(--photo-ratio);max-height:none}.gs-card h3{font-size:28px}.gs-card-copy{font-size:14px;max-width:none}.gs-card details p{font-size:13px}.gs-meta{font-size:11px}.gs-hero-copy h1{font-size:67px}.gs-edition span{max-width:150px;text-align:right}.gs-interlude p{font-size:27px}.gs-interlude .eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep the entire selected object in view, without stretching source photography. */
.gs-frame{aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e6dfd1}
.gs-frame>.gs-photo{width:calc(100% * var(--photo-fit));height:auto!important;aspect-ratio:var(--photo-ratio)!important;max-height:none!important;flex:none}
.gs-home-card .gs-frame{aspect-ratio:4/3}
.gs-home-card .gs-frame>.gs-photo{width:calc(100% * min(1,var(--photo-fit) * 0.75))}
.general-store .gs-collection-nav{width:auto;min-width:0;position:static}
.gs-collection-nav a,.gs-collection-heading>*,.gs-notes>*,.gs-home-heading>*{min-width:0}
.gs-photo img{border-radius:0}
.general-store .site-header nav a[aria-current=page]{color:#a3121e;border-color:#d61c2c}
.gs-home a:hover{color:#a3121e}
.gs-selected .gs-photo{position:relative!important;aspect-ratio:4/5!important;overflow:hidden!important;background:#e7e2d8!important}.gs-selected .gs-photo img{position:static!important;transform:none!important;width:100%!important;height:100%!important;object-fit:contain!important;max-width:none!important}.gs-new-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 28px}.gs-new-piece h3{font:600 29px/1.15 'Barlow Semi Condensed',sans-serif;margin:14px 0}.gs-new-piece p{font-size:16px;line-height:1.7}.gs-new-piece small{font-size:11px;color:#526475}.gs-hero figure>img{aspect-ratio:4/5;max-height:650px}.gs-new-piece .gs-meta{display:block;margin-top:20px;font:600 12px 'Barlow Semi Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em}@media(max-width:850px){.gs-new-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.gs-new-grid{grid-template-columns:1fr}}
.gs-new-grid>.store-quote{background:#d61c2c;color:#fff;border-radius:12px;padding:35px;display:flex;flex-direction:column;justify-content:center;min-height:360px}.store-quote .eyebrow,.store-quote a{color:#fff}.store-quote blockquote{font:550 clamp(28px,3vw,44px)/1.3 Shantell,cursive;margin:30px 0}.product-view-toggle{display:block;margin:15px 0 0;border:0;border-bottom:1px solid #aebdc5;background:none;padding:8px 0;font:600 12px 'Barlow Semi Condensed',sans-serif;cursor:pointer;color:#526475}
