/* Keep Builder geometry in the marketing animation and every card preview. */
.sheet.issue-sheet{width:94%;height:auto;padding:0;border-radius:4px;--paper:#fff;--template-banner:#f3d696;--template-banner-ink:#4d3414;--template-border:#cfc5b7}
#print-grid.slot-grid{grid-template-rows:repeat(4,minmax(0,1fr));gap:.65%;padding:.85%}
.print-card.issue-slot{display:block;min-height:0;padding:0;border:1px solid var(--template-border,#cfc5b7);border-radius:4px;text-align:initial;background:#fff}
.print-card.issue-slot.featured{border:2px solid #101010}
.print-card.issue-slot:hover{outline:2px solid #c48a2d;outline-offset:-2px}
.stage:not([data-stage="0"]){height:auto;min-height:440px;padding:24px 0}
.sheet-header strong{font-size:clamp(8px,1.1vw,15px)}
.sheet-footer strong,.sheet-footer span{font-size:clamp(6px,.8vw,11px)}
.sample-preview .print-card,.scan-card .print-card,#digital-card .print-card{width:100%;aspect-ratio:1.6;height:auto;min-height:0;padding:0}
.offer-art{display:block;padding:0;background:white}
.sample-preview .placement-card-logo,.scan-card .placement-card-logo,#digital-card .placement-card-logo{font-size:clamp(12px,4cqw,26px)}
.sample-preview .placement-card-copy strong,.scan-card .placement-card-copy strong,#digital-card .placement-card-copy strong{font-size:clamp(17px,5.2cqw,34px)}
.sample-preview .placement-card-copy span,.scan-card .placement-card-copy span,#digital-card .placement-card-copy span{font-size:clamp(12px,3.4cqw,22px)}
.sample-preview .placement-card-copy small,.scan-card .placement-card-copy small,#digital-card .placement-card-copy small{font-size:clamp(8px,2.3cqw,14px)}
#digital-card span{letter-spacing:normal}#digital-card strong{letter-spacing:-.02em}
.folded{top:85px;width:174px;height:267px;padding:0;border:0;overflow:hidden;background:white;left:calc(50% - 87px)}
.folded-source{position:absolute;width:348px;height:267px;left:-174px;top:0;border:0;border-radius:0;pointer-events:none}
.folded-source .slot-grid{min-height:0}.folded-source .sheet-header strong,.folded-source .sheet-footer strong{font-size:6px}
.folded-source .print-card{min-height:0}
@media(max-width:800px){.stage:not([data-stage="0"]){min-height:0;padding:16px 0}.sheet.issue-sheet{width:97%}.sheet-header strong{font-size:7px}.sheet-footer strong,.sheet-footer span{font-size:5px}.folded{top:80px;width:140px;height:215px;left:calc(50% - 70px)}.folded-source{width:280px;height:215px;left:-140px}.folded-source .sheet-header strong,.folded-source .sheet-footer strong{font-size:5px}}
/* A full-width presentation, with a stable print canvas at every viewport. */
.experience-grid{grid-template-columns:1fr;gap:0}
.stage,.stage:not([data-stage="0"]){height:clamp(360px,65vw,800px);min-height:0;padding:0;border-radius:0;background:radial-gradient(ellipse at 50% 65%,#34312b 0,#171717 55%,#101010 100%)}
.story{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:40px;padding:28px 0;align-items:center}
.story #sheet-side,.story .step-label,.story h2,.story>p{grid-column:1}.story #unbox-next{grid-column:2;grid-row:2 / 5}.story .step-controls{grid-column:1 / -1;margin-top:12px}.story .fine{margin-top:18px}.story #sheet-side{display:none}
.stage .real-bag{width:260px;left:calc(50% - 130px);bottom:12%;z-index:3;transform:none;opacity:1}
.stage .folded{width:180px;height:276px;left:calc(50% - 90px);top:auto;bottom:20%;z-index:2;transform:translateY(28px);animation:none;display:block;transition:transform 1s ease,opacity .6s ease;pointer-events:none}
.stage .folded-source{width:360px;height:276px;left:-180px}
.stage[data-stage="1"] .folded{display:block;transform:translateY(-150px) rotate(-4deg);z-index:4}
.stage[data-stage="1"] .real-bag{transform:translate(120px,65px) scale(.85);opacity:.65}
.stage[data-stage="2"] .folded,.stage[data-stage="3"] .folded,.stage[data-stage="4"] .folded{display:none}
.stage[data-stage="2"] .real-bag,.stage[data-stage="3"] .real-bag,.stage[data-stage="4"] .real-bag{opacity:0;transform:translateY(160px)}
.stage .sheet.issue-sheet{width:1000px;height:767.44px;max-width:none;flex-shrink:0;scale:var(--sheet-scale,.8);border-radius:0;animation:open-wide 1.1s ease both}
.stage .sheet.flip{animation:turn-sheet 1s ease both}
.issue-sheet .sheet-header{border-top:0;gap:0}.issue-sheet .sheet-footer{gap:0;flex-wrap:nowrap;justify-content:normal}
.issue-sheet .sheet-header strong{font-size:17px}.issue-sheet .sheet-footer strong,.issue-sheet .sheet-footer span{font-size:12px}
.folded-source .sheet-header strong,.folded-source .sheet-footer strong,.folded-source .sheet-footer span{font-size:5px}
.stage .sheet .placement-card-logo{font-size:13px}.stage .sheet .placement-card-copy strong{font-size:17px}.stage .sheet .placement-card-copy span{font-size:11px}.stage .sheet .placement-card-copy small{font-size:7px}
.stage[data-stage="3"] .print-card:not(.featured){opacity:1}
.stage[data-stage="4"] .print-card:not(.featured){opacity:.35}
.stage[data-stage="4"] .print-card.featured{outline:5px solid #c48a2d;outline-offset:2px}
.slot-grid::after{content:"";border-left:1px solid #0002;box-shadow:4px 0 10px #0002}
.sample-preview .print-card,.scan-card .print-card,#digital-card .print-card,.catalog-grid .print-card{aspect-ratio:2.4;height:auto;container-type:inline-size}
.placement-card{container-type:inline-size}.placement-card-copy strong{font-size:5.2cqw!important}.placement-card-copy span{font-size:3.4cqw!important;letter-spacing:normal}.placement-card-copy small{font-size:2.3cqw!important}.placement-card-logo{font-size:4cqw!important;overflow-wrap:normal}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.catalog-grid .print-card{border:1px solid #c48a2d;box-shadow:0 8px 24px #0000000d}
@keyframes open-wide{from{clip-path:inset(0 25%);transform:rotateY(-20deg);opacity:.5}to{clip-path:inset(0);transform:rotateY(0);opacity:1}}
@keyframes turn-sheet{0%{transform:rotateY(-90deg);opacity:.2}100%{transform:rotateY(0);opacity:1}}
@media(max-width:800px){.story{display:block}.story #unbox-next{margin-top:8px}.story h2{font-size:30px}.stage .real-bag{width:190px;left:calc(50% - 95px);bottom:8%}.stage .folded{width:130px;height:200px;left:calc(50% - 65px);bottom:16%}.stage .folded-source{width:260px;height:200px;left:-130px}.stage[data-stage="1"] .folded{transform:translate(-20px,-105px) rotate(-4deg)}.stage[data-stage="1"] .real-bag{transform:translate(60px,40px) scale(.8)}.catalog-grid{grid-template-columns:1fr}.stage .sheet.issue-sheet{width:1000px}.offer-layout .story{display:block}}
@media(prefers-reduced-motion:reduce){.stage *{animation:none!important;transition:none!important}}
/* Continuous extraction: fixed bag, one print canvas, no bounce. */
[data-view="unbox"] .intro{padding:26px 0 14px}
[data-view="unbox"] .intro h1{font-size:clamp(28px,3vw,42px);margin:8px 0}
[data-view="unbox"] .intro .eyebrow{margin-bottom:8px}
.film-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 16px}
.film-controls .secondary{font-size:14px;padding:8px 16px;min-height:44px}
#film-status{font-size:14px;font-weight:700;margin-left:auto}
.stage,.stage:not([data-stage="0"]){height:clamp(400px,53vw,640px)}
.stage .real-bag,.stage[data-stage="1"] .real-bag{width:200px;left:calc(50% - 100px);bottom:6%;transform:none;opacity:1;transition:opacity .8s ease;z-index:3}
.stage .folded{top:50%;bottom:auto;left:50%;margin-left:-250px;margin-top:-383.72px;width:500px;height:767.44px;scale:var(--sheet-scale,.8);transform:translateY(150px) scale(.25);transform-origin:center;display:block;z-index:2;transition:none;box-shadow:0 16px 50px #0005}
.stage .folded-source{width:1000px;height:767.44px;left:-500px;top:0}
.stage .folded-source .sheet-header strong{font-size:17px}.stage .folded-source .sheet-footer strong,.stage .folded-source .sheet-footer span{font-size:12px}
.stage[data-stage="0"] .folded{animation:none}
.stage[data-stage="1"] .folded{display:block;z-index:4;transform:translateY(0) scale(1);animation:lift-and-enlarge 3.4s cubic-bezier(.4,0,.2,1) both}
.stage[data-stage="1"] .real-bag{animation:bag-fade 3.4s ease both}
.stage[data-stage="2"] .real-bag,.stage[data-stage="3"] .real-bag,.stage[data-stage="4"] .real-bag{transform:none;opacity:0;animation:none}
.stage .sheet.issue-sheet{animation:spread-open 1.8s cubic-bezier(.4,0,.2,1) both}
.stage .sheet.flip{animation:turn-sheet 1.6s ease both}
.stage[data-stage="4"] .sheet.issue-sheet{animation:none}
.stage.film-paused *{animation-play-state:paused!important}
@keyframes lift-and-enlarge{0%{transform:translateY(150px) scale(.25)}40%{transform:translateY(-180px) scale(.25)}55%{transform:translateY(-180px) scale(.25)}100%{transform:translateY(0) scale(1)}}
@keyframes bag-fade{0%,55%{opacity:1}100%{opacity:0}}
@keyframes spread-open{0%{clip-path:inset(0 0 0 50%);transform:translateX(-25%)}100%{clip-path:inset(0);transform:translateX(0)}}
@media(max-width:800px){.stage,.stage:not([data-stage="0"]){height:400px}.stage .real-bag,.stage[data-stage="1"] .real-bag{width:150px;left:calc(50% - 75px);bottom:8%;transform:none}.stage .folded{width:500px;height:767.44px;left:50%;top:50%;bottom:auto;margin-left:-250px;margin-top:-383.72px;transform:translateY(200px) scale(.4)}.stage .folded-source{width:1000px;height:767.44px;left:-500px}.stage[data-stage="1"] .folded{transform:none;animation-name:lift-mobile}#film-status{width:100%;margin-left:0}.scan-panel{grid-template-columns:1fr}}
@keyframes lift-mobile{0%{transform:translateY(200px) scale(.4)}45%,55%{transform:translateY(-240px) scale(.4)}100%{transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.stage *{animation:none!important;transition:none!important}.stage[data-stage="1"] .real-bag{opacity:0}.stage[data-stage="1"] .folded{transform:none}}
body>header{padding:8px 5%;border-top-width:4px}body>header .brand{font-size:34px}body>header .brand img{width:30px;height:40px}body>nav{padding:6px 4%;gap:6px;flex-wrap:wrap}body>nav a{padding:8px 14px;min-height:44px}.intro.compact{padding-top:30px}
.dashboard-summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px;background:#101010;color:white}.dashboard-summary strong{font-size:46px;color:#edbb6b;display:block}.dashboard-summary span{display:block}.dashboard-summary p{margin-bottom:8px}.dashboard-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:24px 0}.dashboard-metrics article{border:2px solid #c48a2d;padding:20px}.dashboard-metrics span{font-weight:700;display:block}.dashboard-metrics strong{display:block;font-size:38px;margin:8px 0}.dashboard-metrics small{font-size:14px;color:#606060}.dashboard-details{display:grid;grid-template-columns:1fr 1fr;gap:32px}.dashboard-details article{background:#f5f5f5;padding:28px}.dashboard-details dl>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #ccc;padding:12px 0}.dashboard-details dd{font-weight:700;margin:0}.dashboard-details progress{width:100%;accent-color:#c48a2d;height:16px}#pricing-note{font-size:16px}input[readonly]{background:#eee;color:#333}
@media(max-width:800px){.dashboard-summary{display:block}.dashboard-metrics{grid-template-columns:1fr 1fr;gap:12px}.dashboard-metrics article{padding:16px}.dashboard-details{grid-template-columns:1fr}.dashboard-summary strong{font-size:36px}body>nav{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-details article{padding:20px}}
.center-action{display:flex;justify-content:center;text-align:center;margin:24px 0}.center-action .primary{text-align:center}.buyer-tabs{display:flex;gap:28px;flex-wrap:wrap;border-bottom:1px solid #ccc;padding:20px 0}.buyer-tabs a{font-weight:800;text-underline-offset:6px}.buyer-section{padding:32px 0;border-bottom:1px solid #ddd;scroll-margin-top:20px}.buyer-section .dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.buyer-rates{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;background:#f4f4f4;padding:24px}.buyer-rates strong{font-size:30px;display:block}.buyer-rates span{display:block;font-size:15px}.metric-notes{padding:24px 0}.metric-notes summary{cursor:pointer;font-weight:800}.metric-notes p{margin-top:16px;max-width:900px}@media(max-width:800px){.buyer-section .dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.buyer-rates{grid-template-columns:1fr}.buyer-tabs{gap:18px}.buyer-section h2{font-size:28px}}
/* Keep narrative links together; reserve grids for actual comparisons. */
.offer-layout{gap:28px;grid-template-columns:minmax(280px,480px) minmax(0,1fr);align-items:start}.offer-layout>.story{display:block;padding:0;max-width:640px}.offer-layout>.story .text-link{display:block;width:fit-content;margin:12px 0;text-align:left}.offer-layout .story h2{font-size:32px;margin:12px 0}.intro.compact{padding:20px 0 16px}.intro h1{margin:10px 0 14px}.eyebrow{letter-spacing:.09em}.campaign-list{display:grid;gap:16px}.campaign-list article{padding:22px;border:2px solid #c48a2d}.campaign-list h2{font-size:26px;margin-top:0}
[data-view="unbox"] .intro{padding:18px 0 12px}[data-view="unbox"] .intro .eyebrow{display:none}.stage,.stage:not([data-stage="0"]){height:clamp(340px,42vw,520px)}.film-caption{padding:12px 0}.film-caption h2{font-size:26px;margin:0 0 6px}.film-caption p{margin:0;font-size:16px}.stage[data-stage="5"] .real-bag,.stage[data-stage="6"] .real-bag,.stage[data-stage="5"] .folded,.stage[data-stage="6"] .folded{display:none}.film-digital{width:min(620px,92%);background:white;padding:20px;border-radius:10px;z-index:6;animation:reveal .6s ease both}.film-digital h2{font-size:clamp(18px,2.2vw,26px);margin:12px 0}.film-digital .fine{margin:8px 0 0}.film-digital .print-card{aspect-ratio:2.4;min-height:0;width:100%}.film-redemption{background:#c48a2d;padding:10px;font-weight:800;margin:10px 0 0}.stage[data-stage="1"] .folded{animation:extract-insert 2s ease-in-out both}.stage[data-stage="1"] .real-bag{animation:conceal-bag 2s ease both}
@keyframes extract-insert{0%{transform:translateY(150px) scale(.25)}50%{transform:translateY(0) scale(.5)}100%{transform:translateY(0) scale(1)}}
@keyframes conceal-bag{0%{opacity:1}50%,100%{opacity:0}}
@media(max-width:800px){.offer-layout{grid-template-columns:1fr;gap:20px}.stage,.stage:not([data-stage="0"]){height:340px}.film-digital{padding:14px}.stage[data-stage="1"] .folded{animation-name:extract-mobile}.film-caption h2{font-size:22px}.campaign-list article{padding:16px}}
@keyframes extract-mobile{0%{transform:translateY(200px) scale(.4)}50%{transform:translateY(0) scale(.65)}100%{transform:translateY(0) scale(1)}}
.stage,.stage:not([data-stage="0"]){background:#101010}.stage .real-bag{mix-blend-mode:lighten}
.book-leaf{display:none;position:absolute;top:50%;left:50%;width:500px;height:767.44px;margin-top:-383.72px;margin-left:-500px;scale:var(--sheet-scale,.6);transform-origin:100% 50%;z-index:5;overflow:hidden;background:white;pointer-events:none;backface-visibility:visible}
.leaf-source{width:1000px!important;height:767.44px!important;position:absolute;left:0;top:0;border:0}.stage[data-stage="2"] .book-leaf{display:block;animation:hinge-open 1.8s ease-in-out both}.stage[data-stage="2"] .sheet.issue-sheet{animation:none;clip-path:inset(0 0 0 50%);transform:none}.stage[data-stage="3"] .sheet.flip{animation:book-turn 1.8s ease-in-out both}.stage[data-stage="4"] .sheet.issue-sheet{animation:none}.stage[data-stage="4"] .featured .placement-card-qr{animation:scan-glow 1s ease-in-out 2;background:#ffe6a8}
.stage[data-stage="5"] .sheet.issue-sheet{animation:none;opacity:.18;filter:blur(1px)}.stage[data-stage="5"] .film-digital{position:absolute;animation:card-forward .8s cubic-bezier(.2,.75,.3,1) both}.film-actions{display:flex;gap:10px;margin:12px 0 0}.film-actions button{flex:1;padding:10px;min-height:44px}#film-action-status{font-size:14px;margin:10px 0 0}.film-digital .fine{font-size:13px}.stage[data-stage="5"] .film-digital h2{font-size:22px}
@keyframes hinge-open{from{transform:rotateY(180deg);filter:brightness(.65)}to{transform:rotateY(0deg);filter:brightness(1)}}
@keyframes book-turn{0%{transform:rotateY(180deg);opacity:.3}50%{transform:rotateY(270deg);opacity:.65}100%{transform:rotateY(360deg);opacity:1}}
@keyframes scan-glow{50%{box-shadow:inset 0 0 0 6px #c48a2d;filter:brightness(1.3)}}
@keyframes card-forward{from{opacity:0;transform:translate(-20%,-15%) scale(.25) rotateY(-15deg)}to{opacity:1;transform:translate(0,0) scale(1) rotateY(0)}}
@media(prefers-reduced-motion:reduce){.book-leaf,.film-digital{animation:none!important}}
/* The front of the bag occludes the paper until the paper clears its rim. */
.stage .real-bag,.stage[data-stage="1"] .real-bag,.stage .bag-front{position:absolute;width:240px;height:auto;left:calc(50% - 120px);bottom:6%;transform:none;mix-blend-mode:normal;z-index:1;opacity:1}.stage .bag-front{z-index:3;clip-path:polygon(12% 36%,88% 33%,90% 91%,12% 92%);pointer-events:none}.stage .folded,.stage[data-stage="1"] .folded{z-index:2}.stage[data-stage="1"] .folded{animation:paper-lift 1s ease-in-out both}.stage[data-stage="1"] .real-bag,.stage[data-stage="1"] .bag-front{animation:bag-disappear 1s ease both}.stage:not([data-stage="0"]):not([data-stage="1"]) .bag-front{display:none}.stage:not([data-stage="0"]):not([data-stage="1"]) .real-bag{opacity:0;pointer-events:none}.stage[data-stage="2"] .book-leaf{animation-duration:1s}.stage[data-stage="3"] .sheet.flip{animation-duration:.5s}.stage[data-stage="4"] .featured .placement-card-qr{animation-duration:1s;animation-iteration-count:1}
@keyframes paper-lift{0%{transform:translateY(230px) scale(.25)}60%{transform:translateY(-100px) scale(.35)}100%{transform:translateY(0) scale(1)}}
@keyframes bag-disappear{0%,55%{opacity:1}100%{opacity:0}}
.stage .film-digital.digital-offer{width:min(480px,92%);padding:0;border:3px solid #101010;border-radius:18px;box-shadow:8px 8px 0 #ead8b8;max-height:96%;overflow:auto}.film-digital #film-offer{padding:0;background:white}.film-digital .offer-body{padding:18px 22px}.film-digital .offer-body h2{font-size:23px;margin:0 0 12px}.film-digital .offer-body p{font-size:15px;margin-bottom:12px}.film-digital .film-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.film-digital .film-actions button{font-size:14px;padding:8px 5px}.film-digital .sample-badge{font-size:13px}.film-digital #film-action-status:empty{display:none}
@media(max-width:800px){.stage .real-bag,.stage[data-stage="1"] .real-bag,.stage .bag-front{width:160px;left:calc(50% - 80px)}.stage .film-digital.digital-offer{width:min(420px,94%)}.film-digital .offer-body{padding:12px}.film-digital .offer-body h2{font-size:19px}.film-digital .offer-body p{font-size:14px;margin-bottom:8px}}

/* Public Builder scan presentation: same anonymous offer and publisher identity. */
.stage[data-stage="5"]{height:720px;max-height:none;background:#fff}
.scan-catalog{position:absolute;inset:0;background:#faf8f3;overflow:hidden}
.scan-brandbar{height:90px;background:white;display:flex;align-items:center;justify-content:space-between;padding:16px 30px;gap:24px}
.scan-brandbar img{width:200px;height:48px;object-fit:contain}
.scan-brandbar a{background:#c48b28;color:#111;padding:12px 20px;border-radius:12px;font-weight:800}
.local-flower-wordmark{font-family:Georgia,serif;font-size:23px;line-height:1.05;color:#285844;letter-spacing:-.6px}
.scan-catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:24px}
.scan-catalog-grid .print-card{width:100%;height:155px}
.stage[data-stage="5"]:after{content:"";position:absolute;inset:0;background:#0009;z-index:6;pointer-events:none}
.stage[data-stage="5"] .sheet{visibility:hidden}
.stage[data-stage="5"] .film-digital{z-index:7;width:620px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);padding:30px;border:0;border-radius:24px;background:#fff;box-shadow:0 20px 60px #0003;text-align:center;overflow:auto}
.scan-close{position:absolute;right:14px;top:14px;border:0;border-radius:50%;background:#f0ece6;width:38px;height:38px;font-size:28px;cursor:pointer}
.scan-merchant{font:700 26px Georgia,serif;margin:12px auto 26px;max-width:260px;line-height:1.1;color:#3e3933}
.film-digital .scan-value{font-size:48px;line-height:1;margin:0 0 10px;letter-spacing:-2px}
.film-digital .scan-description{font-size:22px;margin:0 0 24px}
.scan-cobrand{display:flex;align-items:center;justify-content:center;gap:20px;background:#faf6ee;border-radius:12px;padding:18px;margin:0 0 20px;font-size:15px;color:#625d56}
.scan-cobrand .local-flower-wordmark{max-width:100px;font-size:20px}
.film-digital .film-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0}
.film-digital .film-actions button{padding:16px 8px;border-radius:12px;font-size:18px;min-width:0}
#film-action-status{font-size:13px;color:#726b61;margin:20px 0 10px;min-height:18px}
.film-digital>.text-link{font-size:14px}
.stage.catalog-revealed:after{display:none}
@media(max-width:650px){.stage[data-stage="5"]{height:600px}.scan-brandbar{padding:12px;gap:10px}.scan-brandbar img{width:110px}.scan-brandbar .local-flower-wordmark{font-size:17px}.scan-brandbar a{padding:10px;font-size:12px}.scan-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.stage[data-stage="5"] .film-digital{padding:24px 16px}.scan-cobrand{gap:10px;padding:14px}.film-digital .scan-value{font-size:40px}}

.catalog-groups { display: grid; gap: 28px; }
.catalog-title-row { display: flex; align-items: baseline; gap: 20px; flex-wrap: wrap; }
.catalog-title-row h1 { margin-bottom: 0; }
.catalog-title-row strong { color: var(--copper); font-size: 18px; }
.catalog-month-head { margin-bottom: 9px; display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.catalog-month-head h2 { margin: 0; font-size: 25px; }
.catalog-month-head span { color: var(--muted); font-size: 12px; font-weight: 800; }
.catalog-table { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(35,27,18,.04); }
.catalog-header, .catalog-row { display: grid; grid-template-columns: 2.2fr 1fr 1fr 1fr .7fr .8fr .8fr .45fr; gap: 12px; align-items: center; }
.catalog-header { padding: 9px 14px; background: #f5f0e8; color: var(--muted); font-size: 10px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.catalog-row { min-height: 78px; padding: 12px 14px; border-top: 1px solid #eee8df; font-size: 12px; }
.catalog-row > div:not(.catalog-merchant) { display: grid; gap: 2px; }
.catalog-row small { color: var(--muted); font-size: 10px; }
.catalog-merchant { display: grid; grid-template-columns: 72px 1fr; align-items: center; gap: 10px; }
.catalog-merchant img { width: 68px; height: 42px; object-fit: contain; }
.catalog-merchant span { min-width: 0; display: grid; }
.catalog-status, .shared-flag { width: fit-content; padding: 5px 7px; border-radius: 99px; background: #f0ece6; color: #5b554d; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.catalog-status.used { color: var(--green); background: var(--green-bg); }
.catalog-status.claimed, .catalog-status.saved { color: #805400; background: var(--amber-bg); }
.catalog-status.expired { color: var(--red); background: #fbeceb; }
.catalog-status.shared, .shared-flag.yes { color: #704a93; background: #f1eafa; }
.shared-flag:not(.yes) { padding-left: 0; background: transparent; }
.catalog-open { color: var(--copper); font-weight: 900; text-decoration: none; }
.catalog-open:hover { text-decoration: underline; }

/* Restored Local Flower catalog and offer window. */
.local-flower-logo{width:145px;height:66px;object-fit:contain;flex-shrink:0}
.scan-cobrand .local-flower-logo{width:90px;height:44px}
.scan-brandbar .local-flower-logo{width:145px;height:60px}
.sample-catalog-brand{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e7e0d5;padding:0 0 20px;margin-bottom:26px}
.sample-catalog-brand>strong{font-size:30px}
.catalog-title-row h1{font-size:38px;letter-spacing:-1px;margin:0}
.catalog-title-row strong{color:#90631c}
.catalog-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}
.catalog-metric{display:grid;gap:12px;padding:22px;border:1px solid #e4ddcf;border-radius:14px;background:#faf7f1}
.catalog-metric strong{font-size:32px}
.catalog-table{border-color:#e4ddcf}.catalog-header{font-size:12px;letter-spacing:0}.catalog-row{font-size:14px}.catalog-merchant{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.catalog-row small{font-size:12px}
.catalog-status,.shared-flag{font-size:12px}.catalog-status.used{color:#235c43;background:#e5f2e9}.catalog-status.saved,.catalog-status.claimed{background:#f7edcf;color:#805400}
.catalog-open{background:#c48b28;border:0;color:#111;border-radius:99px;padding:10px 16px;font-weight:900;cursor:pointer}
.standalone-scan{position:relative;isolation:isolate;display:grid;place-items:center;min-height:650px;padding:40px 16px;overflow:hidden;background:#555}
.standalone-backdrop{position:absolute;inset:0;z-index:-1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;opacity:.25;padding:20px;pointer-events:none}.standalone-backdrop .print-card{height:180px}
.local-offer-modal{position:relative;width:620px;max-width:100%;padding:36px 30px;background:white;border-radius:24px;box-shadow:0 20px 60px #0003;text-align:center}
.local-offer-modal .scan-value{font-size:48px;line-height:1.05;margin:10px 0;letter-spacing:-1px}.local-offer-modal .scan-description{font-size:22px;margin:0 0 24px}.local-offer-modal .film-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.local-offer-modal .film-actions button{font-size:18px;border-radius:12px;padding:16px 8px}.local-offer-modal .fine{font-size:13px;margin-top:22px}.local-offer-modal .scan-close{text-decoration:none;display:grid;place-items:center;color:#111}.local-offer-modal>.text-link{font-size:14px}
@media(max-width:760px){.catalog-metrics{grid-template-columns:repeat(2,1fr)}.catalog-table{overflow:auto}.catalog-header,.catalog-row{min-width:850px}.sample-catalog-brand{gap:10px}.sample-catalog-brand>strong{font-size:22px}.sample-catalog-brand .local-flower-logo{width:105px}.sample-catalog-brand .primary{padding:12px;font-size:14px}.local-offer-modal{padding:30px 16px}.scan-brandbar .local-flower-logo{width:100px}}

/* Give each reveal step another half second. */
.stage[data-stage="1"] .folded,.stage[data-stage="1"] .real-bag,.stage[data-stage="1"] .bag-front,.stage[data-stage="2"] .book-leaf,.stage[data-stage="4"] .featured .placement-card-qr{animation-duration:1.5s}
.stage[data-stage="3"] .sheet.flip{animation-duration:1s}
.stage[data-stage="5"] .film-digital{animation-duration:1.3s}

[data-view="inabag"]{background:#faf8f3;padding:16px;border-radius:14px}[data-view="inabag"] .scan-catalog-grid{padding:12px 0}[data-view="inabag"] .print-card{height:auto;aspect-ratio:1.6}

/* Keep the digital offer inside its actual viewport, including grid min sizing. */
#experience-main,[data-view="offer"],.standalone-scan,.local-offer-modal{min-width:0;max-width:100%}
.standalone-scan{width:100%;grid-template-columns:minmax(0,1fr);min-height:0;padding:24px 16px}
.local-offer-modal{width:min(620px,100%);justify-self:center;overflow-wrap:anywhere}
.merchant-wordmark{display:block;object-fit:contain;width:100%;height:100%;max-width:100%}
.scan-merchant{width:200px;height:88px;margin:6px auto 22px;max-width:75%}
.catalog-merchant .merchant-wordmark{width:100px;height:44px}
@media(max-width:600px){
 [data-view="offer"] .standalone-scan{padding:12px 8px}
 .local-offer-modal{padding:42px 16px 18px;border-radius:18px}
 .local-offer-modal .scan-merchant{height:66px;width:165px;margin:0 auto 14px}
 .local-offer-modal .scan-value{font-size:32px;letter-spacing:-.5px;margin:8px 0}
 .local-offer-modal .scan-description{font-size:18px;line-height:1.3;margin-bottom:16px}
 .local-offer-modal .scan-cobrand{padding:10px;gap:10px;font-size:13px;line-height:1.3;margin-bottom:16px}
 .local-offer-modal .scan-cobrand .local-flower-logo{width:65px;height:36px}
 .local-offer-modal .film-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .local-offer-modal .film-actions button{font-size:15px;padding:10px 3px;min-width:0;min-height:44px}
 .local-offer-modal .fine{margin:16px 0 10px;line-height:1.35}
 .local-offer-modal #offer-status{font-size:13px;line-height:1.3;margin-bottom:8px}
 .local-offer-modal>.text-link{margin:12px 0 0}
 .stage[data-stage="5"] .film-digital{width:calc(100% - 20px);min-width:0;padding:40px 14px 16px;max-height:calc(100% - 20px)}
 .stage[data-stage="5"] .film-digital .scan-merchant{height:66px;margin-bottom:14px}
 [data-view="inabag"]{padding:8px}.scan-brandbar{gap:8px;padding:10px 6px}.scan-brandbar .local-flower-logo{width:78px}.scan-brandbar>img:not(.local-flower-logo){width:90px}.scan-brandbar a{padding:10px 8px}
}

/* One continuous paper path, shared by the resting and lifting frames. */
.stage .folded,.stage[data-stage="0"] .folded,.stage[data-stage="1"] .folded{left:50%;top:50%;bottom:auto;margin:0;width:500px;height:767.44px;scale:1;transform-origin:center;transform:translate(-50%,-50%) translateY(var(--paper-start-y,80px)) scale(var(--paper-start-scale,.22));transition:none}
.stage[data-stage="0"] .folded{animation:none}
.stage[data-stage="1"] .folded{animation:continuous-paper-lift 2s cubic-bezier(.4,0,.2,1) both}
.stage[data-stage="1"] .real-bag,.stage[data-stage="1"] .bag-front{animation:bag-disappear 2s ease both}
@keyframes continuous-paper-lift{
 0%{transform:translate(-50%,-50%) translateY(var(--paper-start-y,80px)) scale(var(--paper-start-scale,.22))}
 48%{transform:translate(-50%,-50%) translateY(-75px) scale(var(--paper-start-scale,.22))}
 100%{transform:translate(-50%,-50%) translateX(calc(250px * var(--sheet-scale))) scale(var(--sheet-scale))}
}
/* Turn through the edge, then reveal the readable reverse face. */
@keyframes book-turn{0%{transform:rotateY(0);opacity:1}49.9%{transform:rotateY(90deg);opacity:1}50%{transform:rotateY(-90deg);opacity:1}100%{transform:rotateY(0);opacity:1}}
#delivery-metrics .dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
#draft-status{font-size:15px;margin:8px 0;min-height:1.4em}
.buyer-tabs{justify-content:flex-start;gap:24px}
@media(max-width:600px){#delivery-metrics .dashboard-metrics{grid-template-columns:1fr}.buyer-tabs{gap:16px;flex-wrap:wrap}}

/* Simplified ROI and Metrics Dashboard */
[data-view="dashboard"] .buyer-section .dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
[data-view="dashboard"] .dashboard-details dd{white-space:nowrap}
@media(max-width:600px){[data-view="dashboard"] .buyer-section .dashboard-metrics{grid-template-columns:1fr}}
