.shop-page{padding-top:clamp(2rem,4.5vw,3.75rem);padding-bottom:clamp(3.5rem,8vw,7rem)}.shop-hero{gap:clamp(1.1rem,2.4vw,1.6rem);max-width:60ch;margin-bottom:clamp(2.5rem,5vw,4rem);display:grid}.shop-hero__title{font-family:var(--font-display);letter-spacing:.015em;color:var(--ink);font-size:clamp(1.7rem,3.8vw,2.9rem);line-height:1.6}.shop-hero__lead{max-width:52ch;color:var(--ink-soft);font-size:1rem;line-height:2.05}.shop-hero__meta{font-family:var(--font-latin);letter-spacing:.16em;color:var(--olive-soft);flex-wrap:wrap;gap:.6rem 1.4rem;font-size:.9rem;display:flex}.shop-panel{background:var(--milk);border:1px solid var(--line);border-radius:var(--radius-soft);padding:clamp(1.6rem,4vw,3rem);box-shadow:0 30px 60px -55px #2c3129bf}.shop-panel+.shop-panel{margin-top:clamp(1.75rem,4vw,3rem)}.shop-panel--tint{background:var(--cream)}.shop-panel--olive{background:var(--olive);border-color:var(--olive);color:var(--cream)}.shop-panel--olive .shop-panel__title,.shop-panel--olive .shop-panel__lead{color:var(--cream)}.shop-panel--olive .shop-panel__lead{color:#f4eedddb}.shop-panel__head{gap:.85rem;margin-bottom:clamp(1.5rem,3vw,2.25rem);display:grid}.shop-panel__title{font-family:var(--font-display);color:var(--ink);font-size:clamp(1.3rem,2.6vw,1.95rem);line-height:1.7}.shop-panel__lead{max-width:58ch;color:var(--ink-soft);font-size:1rem;line-height:2}.shop-info{gap:clamp(1.75rem,4vw,3rem);display:grid}@media (width>=900px){.shop-info{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}.shop-info__list{align-content:start;gap:1.4rem;display:grid}.shop-info__row{border-bottom:1px solid var(--line);gap:.45rem;padding-bottom:1.4rem;display:grid}.shop-info__row:last-child{border-bottom:0;padding-bottom:0}.shop-info__label{font-family:var(--font-latin);letter-spacing:.24em;text-transform:uppercase;color:var(--olive-soft);align-items:center;gap:.65rem;margin:0;font-size:.8rem;display:flex}.shop-info__value{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.95}.shop-info__value a{color:var(--olive);border-bottom:1px solid var(--line-strong)}.shop-info__value a:hover,.shop-info__value a:focus-visible{border-color:var(--olive-deep);color:var(--olive-deep)}.shop-pending{border:1px dashed var(--line-strong);letter-spacing:.06em;color:var(--olive);background:#dfe4ce6b;border-radius:999px;align-items:baseline;gap:.6rem;padding:.55rem 1.05rem;font-size:.85rem;display:inline-flex}.shop-info__note{border-left:2px solid var(--line-strong);color:var(--ink-soft);background:#dfe4ce52;border-radius:0 14px 14px 0;margin-top:1.5rem;padding:1.1rem 1.35rem;font-size:.94rem;line-height:1.95}.shop-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,2vw,1.25rem);display:grid}.shop-gallery__item{background:var(--pistachio);aspect-ratio:1;border-radius:clamp(14px,2vw,22px);position:relative;overflow:hidden}.shop-gallery__item:nth-child(2){border-radius:50% 50% 18px 18px/34% 34% 18px 18px}.shop-gallery__item img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease)}.shop-gallery__item:hover img{transform:scale(1.04)}@media (width<=619.98px){.shop-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-gallery__item:nth-child(3){aspect-ratio:16/10;grid-column:span 2}}.shop-sns{align-content:start;gap:1.1rem;display:grid}.shop-sns__link{letter-spacing:.12em;color:var(--cream);transition:background-color .4s var(--ease), transform .4s var(--ease);border:1px solid #f4eedd8c;border-radius:999px;align-self:start;align-items:center;gap:.7rem;padding:.95rem 1.9rem;font-size:.95rem;display:inline-flex}.shop-sns__link:hover,.shop-sns__link:focus-visible{background:#f4eedd24;transform:translateY(-2px)}.shop-sns__notice{color:#f4eedde0;font-size:.96rem;line-height:2}.shop-sns__handle{font-family:var(--font-latin);letter-spacing:.14em;color:var(--cream);overflow-wrap:anywhere;font-size:1.05rem}.shop-form{gap:clamp(1.35rem,3vw,2rem);max-width:720px;display:grid}.shop-field{gap:.55rem;display:grid}.shop-field__label{letter-spacing:.04em;color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:.6rem;font-size:.98rem;font-weight:500;display:flex}.shop-field__badge{background:var(--olive);color:var(--milk);letter-spacing:.12em;border-radius:999px;padding:.15rem .6rem;font-size:.7rem}.shop-field__badge--optional{color:var(--olive-soft);background:#49574324}.shop-field__hint{color:var(--ink-soft);font-size:.86rem;line-height:1.8}.shop-field__control{width:100%;min-height:3.25rem;font-family:var(--font-body);color:var(--ink);border:1px solid var(--line-strong);transition:border-color .3s var(--ease), box-shadow .3s var(--ease);background:#fffdf8;border-radius:14px;padding:.85rem 1.05rem;font-size:1rem;line-height:1.8}select.shop-field__control{appearance:none;background-image:none}textarea.shop-field__control{resize:vertical;min-height:10rem}.shop-field__control:hover{border-color:#4957438c}.shop-field__control:focus-visible{border-color:var(--olive);outline:none;box-shadow:0 0 0 3px #4957432e}.shop-field__control[aria-invalid=true]{border-color:#a4452f}.shop-field__error{color:#a4452f;min-height:1.2em;margin:0;font-size:.86rem}.shop-check{border:1px solid var(--line);background:#dfe4ce42;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.8rem;padding:1.1rem 1.25rem;display:grid}.shop-check input{width:1.15rem;height:1.15rem;accent-color:var(--olive);margin-top:.35rem}.shop-check__text{color:var(--ink-soft);font-size:.96rem;line-height:1.95}.shop-check__text a,.shop-privacy a{color:var(--olive);border-bottom:1px solid var(--line-strong)}.shop-honeypot{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shop-privacy{border:1px solid var(--line);background:var(--cream);color:var(--ink-soft);border-radius:16px;padding:1.2rem 1.35rem;font-size:.92rem;line-height:1.95}.shop-privacy__title{font-family:var(--font-display);color:var(--ink);margin-bottom:.5rem;font-size:1.02rem}.shop-alert{border-radius:16px;padding:1.05rem 1.3rem;font-size:.95rem;line-height:1.95}.shop-alert--notice{border:1px solid var(--line-strong);color:var(--ink-soft);background:#dfe4ce66}.shop-alert--error{color:#87371f;background:#a4452f14;border:1px solid #a4452f6b}.shop-alert--success{color:var(--olive-deep);background:#dfe4ce8c;border:1px solid #49574366}.shop-confirm{border:1px solid var(--line-strong);background:#fffdf8;border-radius:18px;gap:1.1rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.shop-confirm__title{font-family:var(--font-display);color:var(--ink);font-size:1.15rem}.shop-confirm__list{gap:.9rem;display:grid}.shop-confirm__row{border-bottom:1px solid var(--line);gap:.25rem;padding-bottom:.9rem;display:grid}.shop-confirm__row:last-child{border-bottom:0;padding-bottom:0}.shop-confirm__label{font-family:var(--font-latin);letter-spacing:.2em;text-transform:uppercase;color:var(--olive-soft);font-size:.76rem}.shop-confirm__value{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.9}.shop-actions{flex-wrap:wrap;align-items:center;gap:.9rem 1.2rem;display:flex}.shop-btn{letter-spacing:.1em;cursor:pointer;min-height:3.1rem;transition:background-color .4s var(--ease), color .4s var(--ease), border-color .4s var(--ease), transform .4s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding:.9rem 2.1rem;font-size:.96rem;font-weight:500;display:inline-flex}.shop-btn--primary{background:var(--olive);color:var(--milk)}.shop-btn--primary:hover:not(:disabled),.shop-btn--primary:focus-visible:not(:disabled){background:var(--olive-deep);transform:translateY(-2px)}.shop-btn--ghost{border-color:var(--line-strong);color:var(--olive);background:0 0}.shop-btn--ghost:hover:not(:disabled),.shop-btn--ghost:focus-visible:not(:disabled){background:#dfe4ce80}.shop-btn:disabled{opacity:.45;cursor:not-allowed}.shop-status{color:var(--ink-soft);font-size:.9rem}@media (prefers-reduced-motion:reduce){.shop-gallery__item img,.shop-sns__link,.shop-btn{transition:none}.shop-gallery__item:hover img,.shop-sns__link:hover,.shop-btn--primary:hover:not(:disabled){transform:none}}.shop-page [hidden]{display:none!important}.shop-fieldset{border:0;gap:clamp(1.35rem,3vw,1.9rem);min-width:0;margin:0;padding:0;display:grid}.shop-info__note p{margin:0}.shop-info__note p+p{margin-top:.9rem}.shop-info__note .shop-pending{margin-top:.35rem}.shop-sns__notice{margin:0}.shop-status--error{color:#87371f}.shop-status--success{color:var(--olive-deep)}.shop-form .shop-confirm{max-width:720px}@media (width<=619.98px){.shop-info__note{padding:1rem 1.15rem}}
