.shop-breadcrumb { display:flex; flex-wrap:wrap; gap:9px; margin:28px 0; font-size:12px; color:var(--muted); }
.shop-breadcrumb a { color:inherit; text-decoration:none; }
.product-story { display:grid; grid-template-columns:1.1fr 1fr; gap:64px; align-items:center; margin:28px 0 80px; }
.story-copy h1 { font-size:clamp(34px,4.3vw,62px); line-height:1.08; margin:16px 0 24px; overflow-wrap:anywhere; }
.story-lead { font-size:19px; line-height:1.6; }
.story-copy .product-copy { color:var(--muted); line-height:1.8; }
.story-tags { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0; }
.story-tags span { border:1px solid var(--line); border-radius:30px; padding:7px 12px; font-size:11px; }
.shop-cta { display:inline-flex; align-items:center; justify-content:space-between; gap:35px; background:var(--accent); color:white; border-radius:10px; padding:17px 24px; text-decoration:none; font-weight:600; }
.shop-cta:hover { background:#51425b; }
.admin-card a.shop-cta, .admin-card a.shop-cta:visited { background:#65536f; color:#fff; }
.admin-card a.shop-cta:hover { background:#51425b; color:#fff; }
.admin-card a.shop-cta:focus-visible { outline:3px solid #65536f; outline-offset:4px; }
.story-details { display:grid; grid-template-columns:1fr 1fr; gap:70px; border-top:1px solid var(--line); padding:40px 0; }
.story-details p { line-height:1.8; }
.story-closing { background:#eee7ef; padding:40px; border-radius:20px; display:flex; gap:24px; justify-content:space-between; align-items:center; margin:25px 0 65px; }
.product-visual { position:relative; aspect-ratio:1/1; min-width:0; overflow:hidden; border-radius:24px; background:radial-gradient(ellipse at 20% 10%,#fff9f7,#eee7ef); display:flex; align-items:center; justify-content:center; padding:32px; }
.product-visual:before { content:""; position:absolute; width:75%; height:75%; border-radius:50%; border:1px solid #ffffff90; transform:translate(25%,30%); }
.visual-caption,.visual-note { position:absolute; left:24px; right:24px; font-size:10px; letter-spacing:2px; color:#625869; }
.visual-caption { top:24px; }.visual-note { bottom:22px; letter-spacing:.5px; }
.sample-lettering { position:relative; font:bold italic clamp(22px,3.6vw,54px) Georgia,serif; color:#65536f; transform:rotate(-7deg); }
.raised { color:#a790b4; font-size:clamp(36px,6vw,80px); text-shadow:1px 2px #715d80,2px 4px #715d80,5px 12px 12px #5553; }
.visual-lettering3d { background:radial-gradient(ellipse at 20% 10%,#f5f0f9,#ded5e4); }
.visual-pennant { background:linear-gradient(130deg,#eee7ef,#cdc1cf); }
.sample-bunting { display:flex; gap:9px; width:100%; position:relative; transform:rotate(-5deg); }
.sample-bunting span { background:#a99ab2; color:white; aspect-ratio:4/5; flex:1; display:flex; align-items:center; justify-content:center; padding-bottom:12%; clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%); font:bold 30px Georgia,serif; }
.sample-bunting span:nth-child(2n) { background:#c1adca; }.sample-bunting span:nth-child(3n) { background:#cdc1cf; }
.sample-card { position:relative; background:#fff9f7; border:6px solid #a893b3; outline:8px solid #fff9f7; border-radius:8px; width:65%; aspect-ratio:3/4; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px; transform:rotate(-8deg); box-shadow:12px 16px 22px #39453820; color:#8c739c; }
.sample-card span { font:italic 24px Georgia,serif; }.sample-card strong { font:32px Georgia,serif; }.sample-card i { font-size:9px; }
.sample-fabric { position:relative; width:80%; aspect-ratio:1/1; border:1px dashed #a99ab2; background:#cdc1cf; border-radius:20px; box-shadow:12px 15px 25px #61472920; display:grid; place-items:center; transform:rotate(8deg); }
.sample-fabric span { font:bold italic 30px Georgia,serif; text-align:center; color:#faf8f0; }
.product-tile { overflow:hidden; }.product-tile .product-visual { aspect-ratio:4/3; margin-bottom:24px; }.tile-visual-link { display:block; text-decoration:none; }.product-tile .sample-lettering { font-size:38px; }
.home-hero { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; padding:65px 0; }.home-hero h1 { font-size:clamp(40px,5vw,70px); line-height:1.06; margin:20px 0; }.home-hero p { line-height:1.8; }.home-hero .shop-cta { margin-top:18px; }
@media(max-width:750px){.product-story,.home-hero { grid-template-columns:1fr; gap:28px; margin-bottom:35px; }.home-hero { padding:30px 0; }.product-story .product-visual { aspect-ratio:5/4; }.story-details { grid-template-columns:1fr; gap:20px; }.story-closing { flex-direction:column; align-items:flex-start; padding:24px; }.sample-lettering { font-size:36px; }.raised { font-size:65px; }.product-visual { padding:24px; }.product-tile .sample-lettering { font-size:30px; }}
