.pie-shop .shop-intro img{max-width:440px}.pie-shop .shop-layout{grid-template-columns:minmax(0,1fr) 350px}.pie-shop form>h2{font-size:42px;margin:16px 0 30px}.pie-step{border-top:1px solid var(--line);padding:28px 0}.pie-step h3{font:400 28px/1.25 Georgia,serif;margin:0 0 24px}.pie-step h3>span{font:12px Arial,sans-serif;color:var(--rust);margin-right:14px}.pie-step>p{font-size:18px;color:#62584e}.pie-choice{border:0;padding:0;margin:24px 0;display:flex;flex-wrap:wrap;gap:12px}.pie-choice legend,.pie-field{font:600 13px/1.5 Arial,sans-serif;color:var(--ink)}.pie-choice legend{margin-bottom:12px}.pie-choice label{position:relative;cursor:pointer}.pie-choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.pie-choice span{display:block;border:1px solid var(--line);border-radius:30px;padding:13px 24px;font:14px Arial,sans-serif}.pie-choice input:checked+span{background:var(--rust);color:var(--cream);border-color:var(--rust)}.pie-choice input:focus-visible+span{outline:3px solid var(--rust);outline-offset:3px}.pie-field{display:block;margin:20px 0}.pie-field select,.pie-field input{display:block;width:100%;margin-top:10px;border:1px solid var(--line);background:#fffaf2;color:var(--ink);border-radius:8px;padding:15px 12px;font:16px Arial,sans-serif;min-height:50px}.pie-field select:focus-visible,.pie-field input:focus-visible{outline:2px solid var(--rust);outline-offset:2px}.pickup-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pie-qty{max-width:150px}#pie-summary{margin:0}#pie-summary>div{padding:12px 0;border-bottom:1px solid var(--line)}#pie-summary dt{font:11px Arial,sans-serif;color:#62584e;margin-bottom:6px}#pie-summary dd{font:17px/1.4 Georgia,serif;margin:0}#pie-summary dd.unselected{color:#756b60;font-style:italic}@media(max-width:950px){.pie-shop .shop-layout{grid-template-columns:1fr}}@media(max-width:600px){.pie-shop form>h2{font-size:35px}.pie-step h3{font-size:25px}.pie-shop .shop-intro img{max-width:330px}.pickup-fields{grid-template-columns:1fr;gap:0}}
.pie-shop .shop-bag{position:static}

/* A shorter introduction and grouped choices keep the builder easy to scan. */
.pie-shop{padding-top:24px;padding-bottom:50px}
.pie-shop .shop-intro{padding:24px 0 30px;gap:28px}
.pie-shop .shop-intro h1{font-size:clamp(40px,4.5vw,62px);margin:14px 0}
.pie-shop .shop-intro p{font-size:18px;margin:12px 0}
.pie-shop .shop-intro img{max-width:260px}
.pie-shop .shop-intro figcaption{font-size:16px;margin-top:10px}
.pie-shop .shop-layout{padding-top:30px;gap:30px}
.pie-shop form>h2{font-size:34px;margin:10px 0 18px}
.pie-step{padding:18px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;align-items:start}
.pie-step>h3,.pie-step>p{grid-column:1/-1}
.pie-step h3{font-size:24px;margin:0 0 12px}
.pie-step>p{margin:0 0 10px;font-size:16px}
.pie-choice{margin:8px 0;gap:8px}
.pie-choice legend{margin-bottom:8px}
.pie-choice span{padding:10px 15px}
.pie-field{margin:8px 0}
.pie-field select,.pie-field input{margin-top:6px;min-height:44px;padding:11px 10px}
.pie-step:nth-of-type(2){grid-template-columns:1fr}
.pie-step:nth-of-type(2) .pie-field{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:10px}
.pie-step:nth-of-type(2) select{margin-top:0}
.pickup-fields{grid-column:1/-1;gap:18px}
.pie-qty{max-width:130px}
.pie-shop .shop-bag{padding:24px 20px}
.pie-shop .shop-bag h2{font-size:30px;margin:12px 0 16px}
#pie-summary>div{padding:8px 0}
#pie-summary dt{margin-bottom:4px}
#pie-summary dd{font-size:16px}
.pie-shop .pickup-note{margin:16px 0;padding-top:16px}
@media(max-width:600px){
.pie-shop .shop-intro{grid-template-columns:minmax(0,1fr) 120px;gap:12px}
.pie-shop .shop-intro h1{font-size:36px;letter-spacing:-1px}
.pie-shop .shop-intro img{max-width:120px}
.pie-shop .shop-intro figcaption{font-size:13px}
.pie-shop .shop-intro .eyebrow{font-size:8px;letter-spacing:1px}
.pie-shop .shop-intro p{font-size:16px}
.pie-shop .shop-intro .shop-price span{display:block;margin-top:5px;font-size:12px}
.pie-step{column-gap:12px}
.pie-step:nth-of-type(2) .pie-field{grid-template-columns:100px minmax(0,1fr)}
.pie-choice span{padding:10px 12px}
.pickup-fields{grid-template-columns:1fr 1fr;gap:12px}
.pie-shop form>h2{font-size:30px}
}
@media(max-width:360px){.pie-shop .shop-intro{grid-template-columns:1fr}.pie-shop .shop-intro figure{display:none}.pie-step{grid-template-columns:1fr}}
