/* Reveal-pack storefront. Loaded only on the isolated local pricing review. */
.pack-pricing__quantity strong > .pack-icon { display: block; width: 2.2rem; height: 2.2rem; }
.pack-pricing__covered { display: flex; align-items: center; gap: 1rem; margin-block-end: 1.5rem; padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid #d8be90; border-radius: 1.25rem; background: linear-gradient(120deg, #fff5df, #fffaf1); text-align: start; }
.pack-pricing__covered > div { flex: 1; min-width: 0; }
.pack-pricing__covered strong { font-size: 1.1rem; }
.pack-pricing__covered p { margin: .4rem 0 0; color: #715b58; font-size: .88rem; line-height: 1.6; }
.pack-pricing__covered-icon { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; border: 1px solid #d8be90; border-radius: 50%; color: #714218; background: #fffcf7; }
.pack-pricing__covered .button-link { min-height: 44px; white-space: nowrap; }
@media (max-width: 640px) { .pack-pricing__covered { flex-wrap: wrap; } .pack-pricing__covered .button-link { width: 100%; } }
.pricing-page--packs { overflow: clip; background: #fbf7f1; }
.pack-pricing { --pack-ink: #35232b; --pack-muted: #715b58; --pack-berry: #782d49; --pack-line: #e1d2c6; --pack-ease: cubic-bezier(.2,.8,.2,1); position: relative; isolation: isolate; color: var(--pack-ink); padding-block-end: 5rem; background: radial-gradient(ellipse 45% 10% at 98% 4%, #ecd9c68a, transparent), radial-gradient(ellipse 55% 12% at 0 33%, #f2dfdd80, transparent); }
.pack-pricing > * { width: min(100% - clamp(2rem, 6vw, 6rem), 76rem); margin-inline: auto; }
.pack-pricing .pack-icon { display: inline-block; flex: 0 0 auto; width: 1.25rem; height: 1.25rem; vertical-align: middle; }
.pack-pricing .eyebrow { display: flex; align-items: center; gap: .55rem; margin: 0; color: #80502b; font-size: .7rem; font-weight: 750; line-height: 1.6; letter-spacing: .12em; text-transform: uppercase; }
.pack-pricing h1, .pack-pricing h2, .pack-pricing h3 { text-wrap: balance; }
.pack-pricing h1 em, .pack-pricing h2 em { color: var(--pack-berry); font-weight: inherit; }
.pack-pricing a { text-underline-offset: .3em; }
.pack-pricing :focus-visible { outline: 3px solid var(--color-focus); outline-offset: 5px; }
.pack-pricing section[id] { scroll-margin-block-start: 7rem; }
.pack-pricing .button-link { display: inline-flex; align-items: center; justify-content: center; gap: .8rem; min-height: 3.25rem; padding: .85rem 1.4rem; border: 1px solid transparent; border-radius: .65rem; font-size: .88rem; font-weight: 700; line-height: 1.4; text-align: center; text-decoration: none; box-shadow: none; transition: background .22s, box-shadow .22s, transform .22s var(--pack-ease); }
.pack-pricing .button-link:hover { transform: translateY(-2px); box-shadow: 0 .5rem 1.2rem #492a3320; }
.pack-pricing .button-link:active { transform: translateY(0); }
.pack-pricing .pack-pricing__primary { background: var(--pack-berry); color: #fff9f4; }
.pack-pricing .pack-pricing__primary:hover { background: #5f203a; }
.pack-pricing .pack-pricing__secondary { border-color: #bca498; background: #fffaf4; color: var(--pack-berry); }
.pack-pricing__text-link { display: inline-flex; align-items: center; justify-content: flex-start; gap: .55rem; min-height: 2.75rem; color: var(--pack-berry); font-size: .86rem; font-weight: 750; text-decoration: underline; text-decoration-color: #b68d99; }
.pack-pricing__text-link:hover { color: #4e1c32; }

/* Hero: a gift, a keepsake note and a prominent entry price. */
.pack-pricing__hero { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); padding-block: clamp(3.5rem, 6vw, 6rem) 4.5rem; }
.pack-pricing__hero-atmosphere { position: absolute; z-index: -1; inset: 0 calc(-1 * clamp(1rem, 3vw, 3rem)); overflow: hidden; pointer-events: none; background: radial-gradient(ellipse at 10% 60%, #f1dce24d, transparent 55%), radial-gradient(ellipse at 85% 25%, #e4c79440, transparent 50%); mask-image: linear-gradient(transparent, #000 12%, #000 85%, transparent); }
.pack-pricing__hero-atmosphere > span { position: absolute; width: 40rem; height: 40rem; inset-block-start: -14rem; inset-inline-start: -22rem; border: 1px solid #bd946935; border-radius: 50%; box-shadow: 0 0 0 3rem #bd94690a, 0 0 0 6rem #bd946909, 0 0 0 9rem #bd946907; }
.pack-pricing__hero-atmosphere > span:last-child { inset: auto -25rem -22rem auto; width: 55rem; height: 55rem; border-color: #a4667c24; }
.pack-pricing__hero-copy { position: relative; z-index: 2; }
.pack-pricing__hero-copy h1 { max-width: 10.5ch; margin: 1rem 0 1.35rem; font: 500 clamp(3.8rem, 6vw, 6.25rem)/1.01 var(--font-display); letter-spacing: -.055em; }
.pack-pricing__hero-copy .pack-pricing__hero-message { max-width: 30rem; margin: 0; }
.pack-pricing__hero-message > strong { display: block; color: var(--pack-ink); font: 550 clamp(1.2rem, 1.7vw, 1.55rem)/1.35 var(--font-display); letter-spacing: -.02em; }
.pack-pricing__hero-message > span { display: block; max-width: 29rem; margin-top: .6rem; color: var(--pack-muted); font-size: .94rem; line-height: 1.65; text-wrap: pretty; }
.pack-pricing__starting { display: flex; align-items: center; gap: 1rem; max-width: 32rem; margin: 1.5rem 0 1.2rem; padding: 1rem 1.2rem; border: 1px solid #dcc7b0; border-radius: 1rem; background: linear-gradient(115deg, #fffdf8, #f8eddb); box-shadow: 0 .4rem 1.5rem #82533406, inset 0 1px #fff; }
.pack-pricing__starting-icon { display: grid; place-items: center; flex: 0 0 auto; width: 2.85rem; height: 2.85rem; border: 1px solid #cfaa6a; border-radius: 50%; background: linear-gradient(135deg, #fff1c9, #ecd09d); box-shadow: inset 0 0 0 3px #fff4d6; color: #815424; }
.pack-pricing__starting-icon .pack-icon { width: 1.4rem; height: 1.4rem; }
.pack-pricing__starting-label { display: block; margin-bottom: .3rem; color: #795331; font-size: .64rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.pack-pricing__starting-price { display: block; color: var(--pack-muted); font-size: .76rem; white-space: nowrap; }
.pack-pricing__starting-price strong { margin-inline-start: .15rem; color: var(--pack-berry); font: 500 2.6rem/1 var(--font-display); letter-spacing: -.045em; }
.pack-pricing__starting > p { margin: 0; margin-inline-start: auto; padding-inline-start: 1rem; border-inline-start: 1px solid #dcc7b0; color: #624937; }
.pack-pricing__starting > p > strong { display: block; font-size: .72rem; font-weight: 650; line-height: 1.5; }
.pack-pricing__starting small { display: block; margin-top: .25rem; color: var(--pack-muted); font-size: .62rem; line-height: 1.5; }
.pack-pricing__hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.pack-pricing__hero-actions > .pack-pricing__primary { min-height: 3.5rem; gap: .6rem; padding: .7rem .8rem .7rem 1.1rem; border: 1px solid #9c5069; border-radius: .9rem; background: linear-gradient(120deg, #923953, #65233e); box-shadow: inset 0 1px #ffffff26, 0 .4rem 1.1rem #782d491a; font-size: .82rem; }
.pack-pricing__hero-actions .pack-pricing__primary > .pack-icon { width: 1.05rem; height: 1.05rem; }
.pack-pricing__action-arrow { display: grid; place-items: center; width: 2rem; height: 2rem; margin-inline-start: .5rem; border: 1px solid #ffffff24; border-radius: .6rem; background: #ffffff0c; transition: transform .2s var(--pack-ease); }
.pack-pricing__primary:hover .pack-pricing__action-arrow { transform: translateX(2px); }
.pack-pricing__hero-secondary { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3.5rem; padding: .7rem .85rem; border: 1px solid #ddcfc4; border-radius: .9rem; background: #fffdf8a6; color: var(--pack-berry); font-size: .78rem; font-weight: 700; text-decoration: none; transition: background .2s, border-color .2s; }
.pack-pricing__hero-secondary > span { display: grid; place-items: center; }
.pack-pricing__hero-secondary .pack-icon { width: 1rem; height: 1rem; }
.pack-pricing__hero-secondary:hover { border-color: #b58a93; background: #fffaf6; color: #56203a; }
.pack-pricing__proof { display: flex; flex-wrap: wrap; gap: .55rem .85rem; margin: 1.1rem 0 0; padding: 0; list-style: none; }
.pack-pricing__proof li { display: flex; align-items: center; gap: .35rem; color: var(--pack-muted); font-size: .65rem; line-height: 1.5; }
.pack-pricing__proof .pack-icon { width: .95rem; height: .95rem; color: #8a6338; }
.pack-pricing__hero-art { position: relative; min-width: 0; margin: 0; padding: 2rem 1.5rem 4rem 1rem; isolation: isolate; }
.pack-pricing__hero-art::before { content: ''; position: absolute; z-index: -1; inset: -1rem -2.8rem -1rem -1.5rem; background: radial-gradient(ellipse, #ddc4ae80, transparent 69%); pointer-events: none; }
.pack-pricing__orbit { position: absolute; z-index: -1; inset: .4rem -.3rem 1.8rem -.4rem; border: 1px solid #c8a47f; border-radius: 48% 52% 47% 53%; transform: rotate(13deg); }
.pack-pricing__orbit::after { content: ''; position: absolute; top: 18%; right: 4%; width: .55rem; aspect-ratio: 1; border-radius: 50%; background: #ac7949; box-shadow: 0 0 0 .45rem #fbf7f1; }
.pack-pricing__image-frame { overflow: hidden; height: clamp(24rem, 34vw, 33rem); border: .5rem solid #fffaf2; border-radius: 46% 46% 1.3rem 1.3rem; box-shadow: 0 1.5rem 3rem #40231e1f; transform: rotate(-3deg); }
.pack-pricing__image-frame img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 49% center; transform: scale(1.025); transition: transform .8s var(--pack-ease); }
.pack-pricing__hero-art:hover img { transform: scale(1.075); }
.pack-pricing__art-seal { position: absolute; top: .3rem; right: -.8rem; display: grid; place-items: center; align-content: center; gap: .35rem; width: 7.4rem; aspect-ratio: 1; padding: .75rem; border: 1px solid #b28e58; border-radius: 50%; background: #eedab7; box-shadow: inset 0 0 0 .4rem #f8e8cd; color: #613e21; text-align: center; transform: rotate(12deg); }
.pack-pricing__art-seal span { font-size: .67rem; line-height: 1.3; }
.pack-pricing__art-seal em { font: italic 500 1.1rem/1.2 var(--font-display); }
.pack-pricing__art-note { position: absolute; top: 29%; left: -1.8rem; display: flex; align-items: center; gap: .7rem; padding: .9rem 1.1rem; border: 1px solid #e5d3c2; border-radius: .7rem; background: #fffaf3; box-shadow: 0 .8rem 2rem #40231e1c; transform: rotate(-6deg); }
.pack-pricing__art-note > .pack-icon { width: 1.8rem; height: 1.8rem; color: var(--pack-berry); }
.pack-pricing__art-note span { color: var(--pack-muted); font-size: .66rem; }
.pack-pricing__art-note strong { display: block; margin-top: .2rem; color: var(--pack-ink); font-size: .78rem; }
.pack-pricing__art-caption { position: absolute; right: -.3rem; bottom: .3rem; display: grid; gap: .7rem; width: min(19.5rem, 79%); padding: 1.5rem 1.7rem; border: 1px solid #e6d3c2; border-radius: .25rem; background: #fffaf3; box-shadow: 0 1.3rem 2.8rem #40231e26; transform: rotate(3deg); }
.pack-pricing__art-caption > span { display: flex; align-items: center; gap: .4rem; color: #7c5033; font-size: .62rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.pack-pricing__art-caption > span .pack-icon { width: .9rem; height: .9rem; }
.pack-pricing__art-caption strong { font: 500 clamp(1.7rem, 2.1vw, 2rem)/1.08 var(--font-display); }
.pack-pricing__art-caption strong em { color: var(--pack-berry); font-weight: inherit; }
.pack-pricing__art-caption small { color: var(--pack-muted); font-size: .68rem; }
.pack-pricing__journey { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0; border-block: 1px solid var(--pack-line); list-style: none; }
.pack-pricing__journey li { display: flex; align-items: center; gap: 1rem; padding: 1.5rem 1.6rem; border-inline-end: 1px solid var(--pack-line); }
.pack-pricing__journey li:first-child { padding-inline-start: 0; }
.pack-pricing__journey li:last-child { border: 0; }
.pack-pricing__journey li > span { color: #966c41; font: italic 1.6rem/1 var(--font-display); }
.pack-pricing__journey li > .pack-icon { margin-inline-start: auto; color: #92624d; }
.pack-pricing__journey strong, .pack-pricing__journey small { display: block; }
.pack-pricing__journey strong { font-size: .87rem; }
.pack-pricing__journey small { margin-top: .3rem; color: var(--pack-muted); font-size: .72rem; line-height: 1.45; }

/* Quantity packages and payment brands. */
.pack-pricing__section-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-block-end: 2.5rem; }
.pack-pricing h2 { margin: .65rem 0 0; font: 500 clamp(2.5rem, 4vw, 3.8rem)/1.08 var(--font-display); letter-spacing: -.04em; }
.pack-pricing__section-heading > p, .pack-pricing__section-heading > div > p:not(.eyebrow) { max-width: 25rem; margin-block: 0; color: var(--pack-muted); font-size: .95rem; line-height: 1.7; }
.pack-pricing__section-heading--center { display: flex; flex-direction: column; align-items: center; gap: .5rem; text-align: center; margin-block-end: 3rem; }
.pack-pricing__section-heading--center h2 { margin: .3rem 0 .5rem; }
.pack-pricing__section-heading--center > p:not(.eyebrow) { max-width: 33rem; }
.pack-pricing__offers { padding-block: clamp(4rem, 7vw, 6rem) 3rem; }
.pack-pricing__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 1.1rem; }
.pack-pricing__card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: clamp(1.4rem, 2.25vw, 2.1rem); border: 1px solid #e0d0c3; border-radius: 1.3rem; background: #fffdf9; box-shadow: 0 .6rem 1.8rem #3e252b08; transition: transform .3s var(--pack-ease), box-shadow .3s, border-color .3s; }
.pack-pricing__card::before { content: ''; position: absolute; inset: .4rem; border: 1px solid #bfa58b30; border-radius: .95rem; pointer-events: none; }
.pack-pricing__card:hover { transform: translateY(-.4rem); box-shadow: 0 1.5rem 3rem #4e2b3819; border-color: #b17a89; }
.pack-pricing__card--featured { color: #fff9f1; border-color: #57243b; background: radial-gradient(ellipse at 100% 0, #97546c70, transparent 65%), #482435; box-shadow: 0 1.4rem 2.8rem #48243526; }
.pack-pricing__card--featured::before { border-color: #eed1b638; }
.pack-pricing__card--value { background: linear-gradient(150deg, #fffdf9 45%, #f7ecdb); border-color: #ceb48e; }
.pack-pricing__card-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem; min-height: 2.5rem; margin-bottom: 1.6rem; }
.pack-pricing__card-icon { display: grid; place-items: center; width: 2.5rem; aspect-ratio: 1; border: 1px solid #d9bcb3; border-radius: .8rem; background: #f8eee7; color: var(--pack-berry); }
.pack-pricing__card-icon .pack-icon { width: 1.4rem; height: 1.4rem; }
.pack-pricing__badge { display: inline-flex; align-items: center; min-height: 1.75rem; padding: .3rem .6rem; border: 1px solid #dfcfc4; border-radius: 2rem; color: #78574a; font-size: .61rem; font-weight: 750; letter-spacing: .02em; }
.pack-pricing__card--featured .pack-pricing__card-icon { border-color: #d9adb04f; background: #ffffff0a; color: #f4d2bc; }
.pack-pricing__card--featured .pack-pricing__badge { border-color: #d6b7a64a; color: #f4d5c3; }
.pack-pricing__card--value .pack-pricing__badge { border-color: #dec498; background: #f4e3c0; color: #644217; }
.pack-pricing__card h3 { margin: 0; font: 500 clamp(1.8rem, 2.5vw, 2.35rem)/1.12 var(--font-display); letter-spacing: -.035em; }
.pack-pricing__card-description { min-height: 3.4rem; margin: .8rem 0 1.5rem; color: var(--pack-muted); font-size: .83rem; line-height: 1.6; }
.pack-pricing__card--featured .pack-pricing__card-description { color: #ead4db; }
.pack-pricing__value-row { display: grid; grid-template-columns:minmax(0,1fr) max-content; align-items: center; gap: .65rem; padding-top: 1.25rem; border-top: 1px solid var(--pack-line); }
.pack-pricing__price { display: flex; flex-direction: column; align-items: flex-start; gap: .3rem; min-width: 0; }
.pack-pricing__price { text-align:end; }
.pack-pricing__price strong { font: 500 clamp(1.7rem, 2vw, 2rem)/1 var(--font-display); letter-spacing: -.045em; white-space: nowrap; }
.pack-pricing__price > span { color: var(--pack-muted); font-size: .65rem; line-height: 1.6; }
.pack-pricing__quantity { display: flex; align-items: center; width:fit-content; max-width:100%; gap: .35rem; margin: 0; padding: .6rem .5rem; border: 1px solid #e2c9ae; border-radius: .75rem; background: linear-gradient(120deg, #fbf0db, #fff9ee); color: #6f4426; }
.pack-pricing__quantity > strong { display:inline-flex; align-items:center; justify-content:center; color: var(--pack-berry); font: 700 1.5rem/1 var(--font-body); letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
.pack-pricing__quantity > span:last-child { max-width: 8ch; color: #5d4132; font-size: .65rem; font-weight: 700; line-height: 1.3; }
.pack-pricing__quantity-icon { display: grid; place-items: center; }
.pack-pricing__quantity-icon .pack-icon { width: 1.05rem; height: 1.05rem; stroke-width: 1.5; }
.pack-pricing__card--featured .pack-pricing__quantity { border-color: #dfb77a73; background: linear-gradient(110deg, #f6ddb9, #eed1aa); }
.pack-pricing__card--featured .pack-pricing__quantity > strong { color: #5d283d; }
.pack-pricing__unit-price { margin: .6rem 0 0; color: var(--pack-muted); font-size: .74rem; }
.pack-pricing__card--featured .pack-pricing__value-row { border-color: #ffffff2b; }
.pack-pricing__card--featured .pack-pricing__price > span, .pack-pricing__card--featured .pack-pricing__unit-price { color: #ead4db; }
.pack-pricing__saving { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; min-height: 4rem; margin: 1.15rem 0 1.25rem; }
.pack-pricing__saving > span { padding: .3rem .55rem; border-radius: .4rem; color: #43604b; background: #e8efe4; font-size: .7rem; font-weight: 800; }
.pack-pricing__saving p { margin: 0; font-size: .78rem; font-weight: 650; }
.pack-pricing__saving small { display: block; margin-top: .15rem; color: var(--pack-muted); font-size: .65rem; font-weight: 450; }
.pack-pricing__card--featured .pack-pricing__saving > span { background: #f0d4b3; color: #54331d; }
.pack-pricing__card--featured .pack-pricing__saving small { color: #ead4db; }
.pack-pricing .pack-pricing__choose { width: 100%; margin-top: auto; color: var(--pack-berry); border-color: #c79fa9; background: #fffaf5; font-size: .8rem; }
.pack-pricing .pack-pricing__choose:hover { background: #f8e9e8; }
.pack-pricing__card--featured .pack-pricing__choose { border-color: #f3dac4; color: #492435; background: #f3dac4; }
.pack-pricing__card--value .pack-pricing__choose { background: var(--pack-berry); color: #fff9f1; border-color: var(--pack-berry); }
.pack-pricing__card--value .pack-pricing__choose:hover { background: #5f203a; }
.pack-pricing .pack-pricing__choose:disabled { cursor: not-allowed; opacity: .65; transform: none; }
.pack-pricing__card-includes { display: grid; gap: .5rem; padding: 1.3rem 0 0; margin: 0; list-style: none; }
.pack-pricing__card-includes li { display: flex; align-items: center; gap: .5rem; color: var(--pack-muted); font-size: .72rem; }
.pack-pricing__card-includes .pack-icon { width: .95rem; height: .95rem; color: #6b7556; }
.pack-pricing__card--featured .pack-pricing__card-includes li { color: #eddae0; }
.pack-pricing__card--featured .pack-pricing__card-includes .pack-icon { color: #f0d4b3; }
.pack-pricing__payments { display: grid; justify-items: center; gap: .85rem; margin-block: 2.5rem 0; text-align: center; }
.pack-pricing__payments > p { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .5rem; margin: 0; font-size: .78rem; }
.pack-pricing__payments > p .pack-icon { width: 1rem; height: 1rem; color: var(--pack-berry); }
.pack-pricing__payments > p > span { color: var(--pack-muted); font-size: .73rem; }
.pack-pricing__payment-logos { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; }
.pack-pricing__payment-logos > span { display: grid; place-items: center; width: 3.9rem; height: 2.7rem; border: 1px solid var(--pack-line); border-radius: .4rem; background: #fffdf9; }
.pack-pricing__payment-logos img { display: block; max-width: 100%; object-fit: contain; }
.pack-pricing__payments > small { max-width: 32rem; color: var(--pack-muted); font-size: .65rem; line-height: 1.5; }

/* Premium value: three visual stories, followed by practical extras. */
.pack-pricing__features { position: relative; padding-block: clamp(3.5rem, 6vw, 6rem); }
.pack-pricing__features::before { content: ''; position: absolute; z-index: -1; inset: 0 calc((100% - 100vw) / 2); border-block: 1px solid #e9dace; background: #f4ece3; }
.pack-pricing__feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.15rem; }
.pack-pricing__feature { overflow: hidden; min-width: 0; border: 1px solid #e1d1c4; border-radius: 1.1rem; background: #fffaf4; box-shadow: 0 .8rem 1.6rem #38242b06; }
.pack-pricing__feature-art { position: relative; display: grid; place-items: center; height: 15rem; overflow: hidden; border-bottom: 1px solid #e1d1c4; }
.pack-pricing__palette-art { background: radial-gradient(circle at 20% 10%, #f8e9d5, transparent), #ead7ca; }
.pack-pricing__photo-card { position: absolute; top: 1.6rem; left: 16%; display: grid; place-items: center; gap: .5rem; width: 57%; height: 9rem; padding: 1rem .75rem; border: .5rem solid #fffaf2; border-bottom-width: 1.5rem; background: linear-gradient(145deg, #bc9c80, #dcc4a0 55%, #b88682); box-shadow: .4rem .6rem 1rem #57372d26; transform: rotate(-9deg); }
.pack-pricing__photo-card > .pack-icon { width: 2.7rem; height: 2.7rem; color: #563d36; }
.pack-pricing__photo-card em { color: #49352d; font: italic 500 .9rem/1.2 var(--font-display); text-align: center; }
.pack-pricing__swatches { position: absolute; top: 2.2rem; right: 11%; display: grid; grid-template-columns: repeat(2, 1fr); gap: .45rem; padding: .7rem; border: 1px solid #e2cfc0; border-radius: .55rem; background: #fffaf1; box-shadow: 0 .6rem 1.2rem #57372d18; transform: rotate(9deg); }
.pack-pricing__swatches i { width: 1.5rem; aspect-ratio: 1; border: 1px solid #00000020; border-radius: 50%; background: #8a3d53; }
.pack-pricing__swatches i:nth-child(2) { background: #75846c; }
.pack-pricing__swatches i:nth-child(3) { background: #353149; }
.pack-pricing__swatches i:nth-child(4) { background: #8da6a3; }
.pack-pricing__swatches i:nth-child(5) { background: #c78667; }
.pack-pricing__swatches i:nth-child(6) { background: #b6cbd4; }
.pack-pricing__swatches i:nth-child(7) { background: #dec59b; }
.pack-pricing__swatches i:nth-child(8) { background: #71506e; }
.pack-pricing__art-label { position: absolute; bottom: 1.2rem; color: #73513f; font-size: .68rem; }
.pack-pricing__timing-art { background: radial-gradient(ellipse at 50% 100%, #c7cabb, transparent), #e7e9df; }
.pack-pricing__calendar { display: grid; justify-items: center; position: absolute; top: 1.4rem; width: 8rem; padding: .6rem .7rem 1rem; border: 1px solid #bfbfae; border-radius: .75rem; background: #fffaf1; box-shadow: .5rem .7rem 0 #c1c6b770, 0 1rem 1.5rem #3d4b3a16; transform: rotate(5deg); }
.pack-pricing__calendar > .pack-icon { width: 1rem; height: 1rem; color: #61705b; }
.pack-pricing__calendar strong { font: 500 3.6rem/1.15 var(--font-display); color: #3f5949; }
.pack-pricing__calendar small { color: #5d6656; font-size: .65rem; }
.pack-pricing__schedule-chip, .pack-pricing__reply-chip { display: flex; align-items: center; gap: .45rem; position: absolute; bottom: 1.3rem; padding: .65rem .9rem; border: 1px solid #c4c9ba; border-radius: 2rem; color: #3f5949; background: #fbfcf7; font-size: .65rem; box-shadow: 0 .4rem .8rem #3d4b3a0d; }
.pack-pricing__schedule-chip .pack-icon, .pack-pricing__reply-chip .pack-icon { width: 1rem; height: 1rem; }
.pack-pricing__reply-art { background: radial-gradient(circle at 80% 80%, #f0cfd2, transparent), #f2e0dd; }
.pack-pricing__reply-example { position: absolute; top: 1.2rem; color: #7b5359; font-size: .6rem; letter-spacing: .04em; }
.pack-pricing__reply-art blockquote { position: relative; margin: -.5rem 0 0; padding: 1.1rem 1.4rem; border: 1px solid #dfb8b8; border-radius: .85rem .85rem .85rem .1rem; color: #593043; background: #fff7f0; font: 500 1.6rem/1.2 var(--font-display); box-shadow: .4rem .5rem 0 #d9b7b833; transform: rotate(-4deg); }
.pack-pricing__reply-art blockquote > .pack-icon { position: absolute; bottom: -.7rem; right: -.4rem; width: 1.9rem; height: 1.9rem; padding: .35rem; border: 1px solid #d8a3b0; border-radius: 50%; color: #853851; background: #fff6ef; }
.pack-pricing__reply-chip { border-color: #e0bec3; color: #764153; background: #fff5f1; }
.pack-pricing__feature-copy { position: relative; padding: 1.75rem 1.5rem 1.5rem; }
.pack-pricing__feature-icon { display: grid; place-items: center; width: 2.5rem; aspect-ratio: 1; margin-bottom: 1.1rem; border: 1px solid #e3c9c6; border-radius: .75rem; color: var(--pack-berry); background: #f8eae4; }
.pack-pricing__feature-copy h3 { margin: 0 0 .85rem; font: 500 clamp(1.4rem, 2vw, 1.8rem)/1.15 var(--font-display); letter-spacing: -.03em; }
.pack-pricing__feature-copy p { margin: 0; color: var(--pack-muted); font-size: .84rem; line-height: 1.7; }
.pack-pricing__feature-detail { display: block; padding-top: 1.25rem; margin-top: 1.25rem; border-top: 1px solid var(--pack-line); color: var(--pack-berry); font-size: .65rem; font-weight: 700; }
.pack-pricing__extras { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-top: 2.5rem; }
.pack-pricing__extras article { display: flex; gap: .8rem; padding-inline-end: 1rem; border-inline-end: 1px solid #dcccc0; }
.pack-pricing__extras article:last-child { border: 0; padding: 0; }
.pack-pricing__extras article > .pack-icon { margin-top: .1rem; color: #8b624b; }
.pack-pricing__extras h3 { margin: 0 0 .6rem; font-size: .85rem; font-weight: 750; }
.pack-pricing__extras p { margin: 0; color: var(--pack-muted); font-size: .77rem; line-height: 1.7; }

/* Full, semantic comparison. No horizontal scrolling required. */
.pack-pricing__comparison { padding-block: clamp(4rem, 7vw, 6rem); }
.pack-pricing__table-wrap { border: 1px solid #ddcabe; border-radius: 1.1rem; overflow: hidden; background: #fffdfa; box-shadow: 0 1rem 2rem #43282f07; }
.pack-pricing__table { width: 100%; table-layout: fixed; border-collapse: collapse; text-align: start; font-size: .84rem; line-height: 1.5; }
.pack-pricing__table th, .pack-pricing__table td { padding: 1rem 1.4rem; border-bottom: 1px solid #e9ded5; text-align: start; vertical-align: middle; overflow-wrap: anywhere; }
.pack-pricing__table thead th { padding-block: 1.7rem; color: #63524b; background: #f7f0e8; }
.pack-pricing__table thead th:first-child { width: 42%; font: italic 500 1.5rem/1.2 var(--font-display); }
.pack-pricing__table thead th:nth-child(2) { width: 25%; }
.pack-pricing__table thead th:last-child { width: 33%; color: #fffaf3; background: #51263b; }
.pack-pricing__table thead strong { display: block; margin-bottom: .3rem; font: 500 1.8rem/1.1 var(--font-display); }
.pack-pricing__table thead span { display: block; font-size: .66rem; font-weight: 450; }
.pack-pricing__table thead .pack-pricing__table-badge { display: inline-flex; align-items: center; gap: .35rem; margin-bottom: .6rem; padding: .25rem .5rem; border: 1px solid #d8b8b865; border-radius: 2rem; color: #f2d7bf; font-size: .57rem; letter-spacing: .06em; text-transform: uppercase; }
.pack-pricing__table-badge .pack-icon { width: .8rem; height: .8rem; }
.pack-pricing__table-group th { color: #6e3e4d; background: #f2e7df; font-size: .72rem; font-weight: 800; letter-spacing: .025em; }
.pack-pricing__table-group .pack-icon { width: 1.05rem; height: 1.05rem; margin-inline-end: .6rem; }
.pack-pricing__feature-row th { font-weight: 600; }
.pack-pricing__feature-row td { color: var(--pack-muted); }
.pack-pricing__feature-row td:last-child { color: #5f2a40; background: #fbf2ed; font-weight: 600; border-inline-start: 1px solid #e9d3cd; }
.pack-pricing__feature-row td > .pack-icon { width: .95rem; height: .95rem; margin-inline-end: .55rem; color: #42654c; vertical-align: -.1em; }
.pack-pricing__feature-row td[data-availability="unavailable"] { color: var(--pack-muted); }
.pack-pricing__feature-row td[data-availability="unavailable"] > .pack-icon { color: #9b8880; }
.pack-pricing__feature-row:hover > * { background-color: #f9f3eb; }
.pack-pricing__feature-row:hover > td:last-child { background-color: #f7e7e1; }
.pack-pricing__table tfoot th { font: italic 500 1.2rem/1.3 var(--font-display); }
.pack-pricing__table tfoot td:last-child { background: #fbf2ed; }
.pack-pricing__table tfoot .button-link { font-size: .78rem; }
.pack-pricing__table tfoot tr > * { border-bottom: 0; }
.pack-pricing__comparison-note { max-width: 54rem; margin: 1.2rem auto 0; color: var(--pack-muted); font-size: .73rem; line-height: 1.65; text-align: center; }

/* Terms, reassurance, free path, questions and the closing invitation. */
.pack-pricing__terms { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 5vw, 5rem); padding: clamp(2rem, 4vw, 4rem); overflow: hidden; border: 1px solid #513342; border-radius: 1.3rem; color: #fff8f1; background: radial-gradient(ellipse at 0 100%, #79506366, transparent 65%), #35232d; }
.pack-pricing__terms::before { content: ''; position: absolute; inset: -9rem auto auto -7rem; width: 24rem; aspect-ratio: 1; border: 1px solid #ccae9226; border-radius: 50%; pointer-events: none; }
.pack-pricing__terms .eyebrow { color: #efd4b8; }
.pack-pricing__terms h2 em { color: #edbec5; }
.pack-pricing__terms > div > p:last-child { max-width: 22rem; margin-top: 1.5rem; color: #e7d1d9; font-size: .9rem; line-height: 1.7; }
.pack-pricing__terms dl { margin: 0; }
.pack-pricing__terms dl > div { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 1.25rem; padding: 1.3rem 0; border-bottom: 1px solid #ffffff26; }
.pack-pricing__terms dl > div:first-child { padding-top: 0; }
.pack-pricing__terms dl > div:last-child { padding-bottom: 0; border: 0; }
.pack-pricing__terms dt { color: #efd4b8; font-size: .74rem; }
.pack-pricing__terms dt strong { display: block; font: 500 2.8rem/1.1 var(--font-display); }
.pack-pricing__terms dd { margin: 0; color: #e7d1d9; font-size: .8rem; line-height: 1.65; }
.pack-pricing__assurance { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; padding-block: clamp(4rem, 7vw, 6rem); }
.pack-pricing__assurance ul { display: grid; gap: 1.4rem; padding: 0; margin: 0; list-style: none; }
.pack-pricing__assurance li { display: flex; gap: 1rem; }
.pack-pricing__assurance li > .pack-icon { width: 2.5rem; height: 2.5rem; padding: .65rem; border: 1px solid #d5beb0; border-radius: .8rem; color: var(--pack-berry); background: #f7ede3; }
.pack-pricing__assurance li strong, .pack-pricing__assurance li span { display: block; }
.pack-pricing__assurance li strong { margin-bottom: .3rem; font: 500 1.3rem/1.2 var(--font-display); }
.pack-pricing__assurance li span { color: var(--pack-muted); font-size: .81rem; line-height: 1.65; }
.pack-pricing__free { display: flex; align-items: center; gap: 1.5rem; padding: clamp(1.5rem, 3vw, 2.8rem); border: 1px solid #dbc7b6; border-radius: 1rem; background: #f4e8dc; }
.pack-pricing__free-mark { flex: 0 0 auto; display: grid; place-items: center; width: 3.75rem; aspect-ratio: 1; border: 1px solid #d5b89a; border-radius: 50%; color: #85583b; }
.pack-pricing__free-mark .pack-icon { width: 1.8rem; height: 1.8rem; }
.pack-pricing__free h2 { margin-top: .3rem; font-size: clamp(1.6rem, 2.5vw, 2.2rem); }
.pack-pricing__free p:not(.eyebrow) { max-width: 42rem; margin: .7rem 0 0; color: var(--pack-muted); font-size: .8rem; line-height: 1.65; }
.pack-pricing__free .button-link { flex: 0 0 auto; font-size: .8rem; }
.pack-pricing__faq { display: grid; grid-template-columns: .7fr 1.3fr; gap: 4rem; padding-block: clamp(4rem, 7vw, 6rem); }
.pack-pricing__faq h2 { font-size: clamp(2.3rem, 3.5vw, 3.3rem); }
.pack-pricing__faq > div > p:not(.eyebrow) { margin-top: 1.1rem; color: var(--pack-muted); font-size: .9rem; }
.pack-pricing__faq-list { border-top: 1px solid var(--pack-line); }
.pack-pricing__faq-list details { border-bottom: 1px solid var(--pack-line); }
.pack-pricing__faq-list summary { position: relative; min-height: 3.5rem; padding: 1.25rem 2.5rem 1.25rem 0; font-size: .88rem; font-weight: 650; cursor: pointer; list-style: none; }
.pack-pricing__faq-list summary::-webkit-details-marker { display: none; }
.pack-pricing__faq-list summary::after { content: '+'; position: absolute; top: 1.05rem; inset-inline-end: .2rem; display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border: 1px solid #d6bcae; border-radius: 50%; color: var(--pack-berry); font: 400 1.2rem/1 var(--font-body); }
.pack-pricing__faq-list summary:hover::after { background: #f1dfd6; }
.pack-pricing__faq-list details[open] summary::after { content: '−'; background: #f1dfd6; }
.pack-pricing__faq-list p { margin: 0 1rem 1.4rem 0; color: var(--pack-muted); font-size: .84rem; line-height: 1.75; }
.pack-pricing__final { position: relative; display: flex; align-items: center; gap: 2rem; overflow: hidden; padding: clamp(2rem, 5vw, 4.5rem); border-radius: 1.3rem; color: #fff8f2; background: radial-gradient(ellipse at 100% 100%, #a65c7155, transparent 65%), #652a43; }
.pack-pricing__final::before, .pack-pricing__final::after { content: ''; position: absolute; right: -6rem; top: -7rem; width: 30rem; aspect-ratio: 1; border: 1px solid #f2d0af35; border-radius: 50%; pointer-events: none; }
.pack-pricing__final::after { width: 24rem; right: -3rem; top: -4rem; }
.pack-pricing__final > div { position: relative; z-index: 1; max-width: 42rem; }
.pack-pricing__final .eyebrow { color: #f4d5be; }
.pack-pricing__final h2 { max-width: 19ch; font-size: clamp(2.8rem, 4.6vw, 4.6rem); }
.pack-pricing__final h2 em { color: #f2cdb0; }
.pack-pricing__final p:not(.eyebrow) { max-width: 29rem; margin-block: 1.2rem 1.5rem; color: #f0dce2; font-size: .92rem; line-height: 1.7; }
.pack-pricing__final .button-link { color: #512638; background: #fff4e7; }
.pack-pricing__final small { display: block; margin-top: 1.1rem; color: #f0dce2; font-size: .67rem; }
.pack-pricing__final-mark { margin-inline: auto 2rem; color: #edc4a4; transform: rotate(-12deg); }
.pack-pricing__final-mark > .pack-icon { width: clamp(7rem, 14vw, 12rem); height: auto; stroke-width: .65; }
.pack-pricing:dir(rtl) .button-link > .pack-icon, .pack-pricing:dir(rtl) .pack-pricing__text-link > .pack-icon { transform: scaleX(-1); }

/* Finite, decorative motion never hides text or blocks an action. */
@media (prefers-reduced-motion: no-preference) {
  .pack-pricing__hero-atmosphere > span { animation: pack-light-drift 4.8s var(--pack-ease) both; }
  .pack-pricing__hero-atmosphere > span:last-child { animation-direction: reverse; }
  .pack-pricing__hero-copy { animation: pack-enter .7s var(--pack-ease) both; }
  .pack-pricing__hero-art { animation: pack-enter 1s .08s var(--pack-ease) both; }
  .pack-pricing__art-caption { animation: pack-note-settle 1.8s .2s var(--pack-ease) both; }
  .pack-pricing__art-seal { animation: pack-seal-settle 2.2s var(--pack-ease) both; }
  .pack-pricing__feature:hover .pack-pricing__photo-card { transform: translateY(-.3rem) rotate(-6deg); }
  .pack-pricing__feature:hover .pack-pricing__swatches { transform: translateY(-.25rem) rotate(5deg); }
  .pack-pricing__feature:hover .pack-pricing__calendar { transform: translateY(-.3rem) rotate(2deg); }
  .pack-pricing__feature:hover blockquote { transform: translateY(-.3rem) rotate(-1deg); }
  .pack-pricing__photo-card, .pack-pricing__swatches, .pack-pricing__calendar, .pack-pricing__reply-art blockquote { transition: transform .6s var(--pack-ease); }
  .pack-pricing [data-pack-reveal].is-arriving { animation: pack-enter .65s var(--pack-ease) both; }
  @keyframes pack-enter { from { transform: translateY(1.2rem); } to { transform: translateY(0); } }
  @keyframes pack-light-drift { from { transform: translate(-2rem, 1rem) scale(.93); } to { transform: translate(0, 0) scale(1); } }
  @keyframes pack-note-settle { from { transform: translateY(1.3rem) rotate(-3deg); } to { transform: translateY(0) rotate(3deg); } }
  @keyframes pack-seal-settle { from { transform: translateY(-1rem) rotate(0); } to { transform: translateY(0) rotate(12deg); } }
}
@media (max-width: 64rem) {
  .pack-pricing__hero { gap: 2rem; }
  .pack-pricing__hero-copy h1 { font-size: clamp(3.6rem, 6.2vw, 5rem); }
  .pack-pricing__hero-art { padding-inline: .5rem; }
  .pack-pricing__art-note { left: -.8rem; }
  .pack-pricing__art-seal { right: -.3rem; width: 6.5rem; }
  .pack-pricing__art-caption { right: -.3rem; padding: 1.2rem; }
  .pack-pricing__journey li { padding-inline: 1rem; }
  .pack-pricing__journey li > .pack-icon { display: none; }
  .pack-pricing__card-top { align-content: start; }
  .pack-pricing__card-description { min-height: 4rem; }
  .pack-pricing__card h3 { min-height: 2.3em; }
  .pack-pricing__feature-copy { padding: 1.5rem 1.15rem; }
  .pack-pricing__photo-card { left: 9%; }
  .pack-pricing__swatches { right: 7%; }
  .pack-pricing__reply-art blockquote { padding-inline: 1rem; font-size: 1.4rem; }
  .pack-pricing__free { flex-wrap: wrap; }
  .pack-pricing__free > div { flex: 1 1 25rem; }
  .pack-pricing__free .button-link { margin-inline-start: 5.25rem; }
}
@media (max-width: 48rem) {
  .pack-pricing { padding-block-end: 3rem; }
  .pack-pricing__hero { grid-template-columns: 1fr; gap: 2rem; padding-block: 2.5rem 2rem; }
  .pack-pricing__hero-copy h1 { max-width: 12ch; font-size: clamp(3.6rem, 10vw, 5.8rem); }
  .pack-pricing__hero-art { width: min(100% - 1rem, 30rem); margin: .5rem auto 0; padding: 1.5rem .75rem 3.5rem; }
  .pack-pricing__image-frame { height: clamp(21rem, 77vw, 30rem); }
  .pack-pricing__art-seal { right: -.5rem; }
  .pack-pricing__art-note { left: -.6rem; }
  .pack-pricing__journey { grid-template-columns: 1fr; margin-top: 1rem; }
  .pack-pricing__journey li { padding: 1rem 0; border-inline: 0; border-bottom: 1px solid var(--pack-line); }
  .pack-pricing__journey li > .pack-icon { display: block; }
  .pack-pricing__section-heading { align-items: start; flex-direction: column; gap: 1.2rem; }
  .pack-pricing__section-heading--center { align-items: center; gap: .5rem; }
  .pack-pricing__section-heading > p, .pack-pricing__section-heading > div > p:not(.eyebrow) { max-width: 34rem; }
  .pack-pricing__cards { grid-template-columns: 1fr; gap: 1.2rem; max-width: 31rem; margin-inline: auto; }
  .pack-pricing__card { padding: 1.8rem; }
  .pack-pricing__card-top { margin-bottom: 1.2rem; }
  .pack-pricing__card h3 { min-height: 0; font-size: 2.3rem; }
  .pack-pricing__card-description { min-height: 0; margin-bottom: 1.2rem; }
  .pack-pricing__price strong { font-size: clamp(1.85rem, 6vw, 2.1rem); }
  .pack-pricing__saving { min-height: 3rem; }
  .pack-pricing__feature-grid { grid-template-columns: 1fr; max-width: 35rem; margin-inline: auto; }
  .pack-pricing__feature-art { height: 16rem; }
  .pack-pricing__photo-card { left: 21%; width: 45%; top: 2rem; }
  .pack-pricing__swatches { right: 20%; top: 2.7rem; }
  .pack-pricing__feature-copy { padding: 1.6rem; }
  .pack-pricing__feature-copy h3 { font-size: 1.9rem; }
  .pack-pricing__extras { grid-template-columns: 1fr; gap: 1.3rem; }
  .pack-pricing__extras article { border-inline: 0; border-bottom: 1px solid #dcccc0; padding: 0 0 1.3rem; }
  .pack-pricing__terms, .pack-pricing__assurance, .pack-pricing__faq { grid-template-columns: 1fr; gap: 2rem; }
  .pack-pricing__terms dl > div { grid-template-columns: .75fr 1.25fr; }
  .pack-pricing__free { display: grid; grid-template-columns: 1fr; }
  .pack-pricing__free-mark { display: none; }
  .pack-pricing__free .button-link { justify-self: start; margin: 0; }
  .pack-pricing__table th, .pack-pricing__table td { padding: .85rem .8rem; font-size: .76rem; }
  .pack-pricing__table thead th:first-child { font-size: 1.2rem; width: 39%; }
  .pack-pricing__table thead th:nth-child(2) { width: 25%; }
  .pack-pricing__table thead th:last-child { width: 36%; }
  .pack-pricing__table tfoot .button-link { padding: .7rem; font-size: .7rem; }
  .pack-pricing__final-mark { display: none; }
}
@media (max-width: 36rem) {
  .pack-pricing .eyebrow { font-size: .62rem; letter-spacing: .08em; }
  .pack-pricing__hero-copy h1 { font-size: clamp(3.4rem, 12vw, 4.3rem); }
  .pack-pricing__starting { display: grid; grid-template-columns: 2.5rem 1fr; gap: .7rem; padding: .9rem 1rem; }
  .pack-pricing__starting-icon { width: 2.5rem; height: 2.5rem; }
  .pack-pricing__starting > p { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .25rem .7rem; width: 100%; padding: .65rem 0 0; margin: 0; border-inline-start: 0; border-top: 1px solid #dcc7b0; }
  .pack-pricing__starting small { margin: 0; }
  .pack-pricing__hero-actions { align-items: stretch; flex-direction: column; gap: .65rem; }
  .pack-pricing__hero-actions > a { width: 100%; }
  .pack-pricing__hero-actions > .pack-pricing__primary { justify-content: flex-start; }
  .pack-pricing__hero-actions .pack-pricing__action-arrow { margin-inline-start: auto; }
  .pack-pricing__proof { gap: .4rem .9rem; margin-top: 1rem; }
  .pack-pricing__proof li { font-size: .65rem; }
  .pack-pricing__art-note { padding: .7rem; gap: .45rem; }
  .pack-pricing__art-note strong { font-size: .68rem; }
  .pack-pricing__art-caption { width: 79%; padding: 1.1rem; }
  .pack-pricing__art-caption strong { font-size: 1.7rem; }
  .pack-pricing__art-caption small { font-size: .6rem; }
  .pack-pricing__art-seal { width: 5.8rem; }
  .pack-pricing__card { padding: 1.5rem; }
  .pack-pricing__payments > p > span { flex-basis: 100%; }
  .pack-pricing__payment-logos { gap: .4rem; max-width: 20rem; }
  .pack-pricing__payment-logos > span { width: 3.75rem; }
  .pack-pricing__table th, .pack-pricing__table td { padding: .8rem .6rem; font-size: .7rem; }
  .pack-pricing__table thead strong { font-size: 1.3rem; }
  .pack-pricing__table thead th:first-child { font-size: 1rem; width: 37%; }
  .pack-pricing__table thead th:nth-child(2) { width: 25%; }
  .pack-pricing__table thead th:last-child { width: 38%; }
  .pack-pricing__table thead span { font-size: .58rem; }
  .pack-pricing__table thead .pack-pricing__table-badge { gap: .2rem; padding-inline: .3rem; font-size: .5rem; letter-spacing: 0; }
  .pack-pricing__table-group th { font-size: .68rem; padding-block: .9rem; }
  .pack-pricing__table-group .pack-icon { margin-inline-end: .35rem; }
  .pack-pricing__feature-row td > .pack-icon { display: block; margin: 0 0 .3rem; width: .85rem; height: .85rem; }
  .pack-pricing__table tfoot th { font-size: .85rem; }
  .pack-pricing__table tfoot .pack-pricing__text-link { gap: .2rem; font-size: .65rem; }
  .pack-pricing__table tfoot .button-link { min-height: 2.8rem; padding: .6rem .4rem; font-size: .63rem; }
  .pack-pricing__table tfoot .pack-icon { display: none; }
  .pack-pricing__terms { padding: 1.7rem; }
  .pack-pricing__terms dl > div { gap: .9rem; }
  .pack-pricing__terms dt strong { font-size: 2.5rem; }
  .pack-pricing__final h2 { font-size: 2.8rem; }
}
/* Two clearly labeled values per feature on phones; retain table semantics. */
@media (max-width: 36rem) {
  .pack-pricing__table-wrap { border: 0; border-radius: 0; background: transparent; box-shadow: none; overflow: visible; }
  .pack-pricing__table, .pack-pricing__table tbody, .pack-pricing__table tfoot { display: block; width: 100%; }
  .pack-pricing__table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .pack-pricing__table tr { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; margin-bottom: .65rem; border: 1px solid #e0cec0; border-radius: .65rem; background: #fffdfa; }
  .pack-pricing__table tbody { margin-bottom: 1.4rem; }
  .pack-pricing__table th, .pack-pricing__table td { display: block; width: auto; padding: .8rem .9rem; }
  .pack-pricing__table tr > th { grid-column: 1 / -1; font-size: .85rem; }
  .pack-pricing__table .pack-pricing__table-group { border: 0; margin-bottom: .8rem; background: none; }
  .pack-pricing__table-group th { padding: .4rem 0; background: transparent; font-weight: 800; }
  .pack-pricing__feature-row th { border-bottom: 1px solid #ede0d6; }
  .pack-pricing__feature-row td { border: 0; font-size: .82rem; }
  .pack-pricing__feature-row td::before { content: attr(data-label); display: block; margin-bottom: .4rem; color: #715b58; font-size: .61rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
  .pack-pricing__feature-row td:last-child::before { color: #782d49; }
  .pack-pricing__feature-row td > .pack-icon { display: inline-block; margin-inline-end: .3rem; vertical-align: -.1em; }
  .pack-pricing__table tfoot th { text-align: center; }
  .pack-pricing__table tfoot .pack-pricing__text-link, .pack-pricing__table tfoot .button-link { width: 100%; min-height: 3rem; justify-content: center; font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.pack-pricing) { scroll-behavior: auto; }
  .pack-pricing *, .pack-pricing *::before, .pack-pricing *::after { animation: none !important; transition: none !important; }
  .pack-pricing .button-link:hover, .pack-pricing__card:hover { transform: none; }
  .pack-pricing__hero-art:hover img { transform: scale(1.025); }
}
@media (forced-colors: active) {
  .pack-pricing__card, .pack-pricing__feature, .pack-pricing__table-wrap, .pack-pricing .button-link { border: 1px solid CanvasText; }
}
@media (max-width: 22rem) {
  .pack-pricing__value-row { gap: .45rem; }
  .pack-pricing__quantity { padding: .55rem .5rem; gap: .3rem; }
  .pack-pricing__quantity-icon .pack-icon { width: .9rem; height: .9rem; }
  .pack-pricing__quantity > strong { font-size: 1.5rem; }
}

@media(min-width:700px) { .pack-pricing__cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(min-width:1200px) {
  .pack-pricing__cards { grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; }
  .pack-pricing__card { padding:1.15rem; }
  .pack-pricing__card h3 { font-size:1.8rem; }
  .pack-pricing__value-row { gap:.45rem; }
  .pack-pricing__price strong { font-size:1.75rem; }
  .pack-pricing__choose { gap:.4rem; padding-inline:.65rem; font-size:.85rem; }
}
.pack-pricing__card[data-unlimited="true"] {
  --pack-ink:#fff9ef;
  --pack-muted:#d3e1d9;
  border-color:#507268;
  color:var(--pack-ink);
  background:radial-gradient(ellipse at 100% 0,#769c8050,transparent 65%),#193e36;
  box-shadow:0 1rem 2rem #193e3620;
}
.pack-pricing__card[data-unlimited="true"]::before { border-color:#e9d5a43d; }
.pack-pricing__card[data-unlimited="true"] .pack-pricing__card-icon { border-color:#ead4a4; background:linear-gradient(140deg,#fff4d8,#e9d5a4); color:#526047; }
.pack-pricing__card[data-unlimited="true"] .pack-pricing__card-icon svg { width:1.65rem; height:1.65rem; stroke-width:2; }
.pack-pricing__card[data-unlimited="true"] .pack-pricing__badge { border-color:#e9d5a46b; color:#f6e5bc; background:#ffffff08; }
.pack-pricing__card[data-unlimited="true"] .pack-pricing__value-row { border-color:#e9d5a433; }
.pack-pricing .pack-pricing__card[data-unlimited="true"] .pack-pricing__choose { border-color:#ead5a7; color:#193e36; background:#f3e3bf; }
.pack-pricing__card[data-unlimited="true"] .pack-pricing__card-includes svg { color:#ead5a7; }
