/* Content sits on a readable surface panel so the pinstripe fence never fights the text. */
.store-info-page { max-width: 860px !important; margin: clamp(24px, 4vw, 48px) auto 80px; padding: clamp(30px, 4vw, 54px); line-height: 1.75; color: var(--ink); background: var(--surface); border: 1px solid var(--rule); border-radius: 20px; box-shadow: var(--isl-shadow-card, 0 20px 50px rgba(0,0,0,.22)); }
.store-info-page::before { content: ""; display: block; width: 80px; height: 5px; margin-bottom: 26px; background: var(--rule-dark); }
.store-info-page .store-kicker { margin: 0 0 8px; color: var(--muted); font-size: .68rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.store-info-page h1 { margin: 0 0 24px; color: var(--ink); font-family: "Arial Narrow", "Franklin Gothic Medium", "Segoe UI", sans-serif; font-size: clamp(2.5rem, 6vw, 4.4rem); font-weight: 600; line-height: .95; letter-spacing: -.055em; }
.store-info-page h2 { margin: 34px 0 7px; padding-top: 13px; color: var(--ink); border-top: 1px solid var(--rule); font-size: 1.05rem; }
.store-info-page p, .store-info-page li { color: var(--ink); opacity: .92; }
.store-info-page a { color: var(--ink); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
.store-about-seal { float: right; width: min(38vw,360px); height: auto; margin: 0 0 34px 48px; object-fit: contain; }
@media (max-width: 700px) { .store-about-seal { float: none; display: block; width: min(72vw,320px); margin: 0 auto 34px; } }
@media (max-width: 600px) { .store-info-page { padding: 38px 13px; } }

/* About page — established storefront presentation --------------------------- */
.about-shop { max-width: 1080px; margin: 0 auto; padding: clamp(40px, 7vw, 96px) 20px clamp(56px, 8vw, 104px); }
.about-hero { display: flex; flex-direction: column; align-items: center; text-align: center; }
.about-seal {
    width: clamp(160px, 26vw, 236px); height: auto; object-fit: contain;
    padding: 18px; border-radius: 50%;
    border: 1px solid var(--rule);
    box-shadow: 0 18px 60px rgba(8, 15, 32, .35);
}
.about-kicker {
    margin: 34px 0 0; color: var(--muted);
    font-size: .72rem; font-weight: 750; letter-spacing: .34em; text-transform: uppercase;
}
.about-hero h1 {
    margin: 16px 0 0; max-width: 16ch;
    font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;
    font-weight: 600; font-size: clamp(2.3rem, 5.4vw, 4rem); line-height: 1.02; letter-spacing: -.01em;
}
.about-lead {
    margin: 22px auto 0; max-width: 60ch;
    color: var(--ink); opacity: .9;
    font-size: clamp(1.05rem, 1.6vw, 1.28rem); line-height: 1.66;
}
.about-rule { width: 84px; height: 2px; margin: clamp(40px, 6vw, 64px) auto; background: var(--muted); opacity: .55; }
.about-pillars { display: grid; gap: clamp(20px, 3vw, 34px); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.about-pillar {
    padding: clamp(22px, 2.6vw, 32px);
    border: 1px solid var(--rule);
    border-radius: 14px;
    background: var(--surface-soft);
}
.about-pillar .num { display: inline-block; margin: 0 0 14px; font-size: .74rem; font-weight: 750; letter-spacing: .2em; color: var(--muted); }
.about-pillar h2 {
    margin: 0 0 10px;
    font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;
    font-weight: 600; font-size: 1.32rem; letter-spacing: -.01em;
}
.about-pillar p { margin: 0; color: var(--ink); opacity: .82; line-height: 1.62; }
.about-close { margin: clamp(44px, 6vw, 68px) auto 0; max-width: 62ch; text-align: center; color: var(--ink); opacity: .78; font-size: 1.02rem; line-height: 1.7; }
.about-close strong { font-weight: 700; opacity: 1; }
.about-actions { margin: 34px 0 0; display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; }
@media (max-width: 680px) { .about-pillars { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .about-seal { box-shadow: none; } }
