/* The selected pricing layout, backed by the same cart as the hero.
   Type steps on this surface: 46 display (shared section heading), 30 prices, 24 card titles,
   16 body, 14 labels, 12 meta. Yellow belongs to Start application only. */

/* ---------- One picker grammar for the hero, the country lander and pricing ---------- */

/* Selection: a light fill with a blue ring on every surface. */
[data-public-selector] .picker-durations label:has(:checked),
[data-public-selector] .picker-option:has(:checked),
[data-public-selector] .picker-format:has(:checked) { background:var(--color-primary-25); border-color:var(--color-ring); box-shadow:inset 0 0 0 1px var(--color-ring); color:var(--color-foreground) }
[data-public-selector] .picker-durations label:has(:checked) :is(strong,span:not(.picker-saving)),
[data-public-selector] .picker-format:has(:checked) strong { color:var(--color-foreground) }
[data-public-selector] .picker-format:has(:checked)>span { color:var(--color-gray-500) }
[data-public-selector] .picker-durations label:has(:checked) .picker-saving strong { color:var(--color-primary) }
[data-public-selector] .picker-durations label:has(:checked) .picker-saving del { color:var(--color-gray-500) }
[data-public-selector] :is(.picker-durations,.picker-formats,.picker-editor) input[type="radio"] { accent-color:var(--color-ring); color-scheme:light }
/* The card carries the focus ring; the native control inside it does not draw a second one. */
[data-public-selector] :is(.picker-durations label,.picker-format,.picker-option,.experience-duration) input:focus-visible { outline:none }

/* One badge, one label, never in the action colour. */
[data-public-selector] .picker-durations em,
.experience-offer { display:inline-block; padding:2px 8px; border-radius:999px; background:var(--color-foreground); color:var(--color-white); font-style:normal; font-size:12px; font-weight:650; line-height:16px; letter-spacing:0; white-space:nowrap }
.picker-simplified .picker-durations em { box-shadow:0 0 0 1px var(--color-primary-50) }

/* Receipt: one block after the choice. Homepage hero and pricing have no hairlines. */
[data-public-selector] .picker-receipt { display:grid; gap:14px; margin:24px 0 0; padding:20px 0 0; border-top:1px solid var(--color-gray-200) }
.picker-simplified .picker-receipt { border-top-color:color-mix(in srgb, var(--color-white) 28%, transparent) }
.experience-hero-home .picker-receipt,
.experience-pricing .picker-receipt { margin-top:14px; border-top:0; padding-top:0 }
[data-public-selector] .picker-receipt>:is(.picker-extra,.picker-processing,.picker-total) { margin:0; padding:0; border:0; background:none; border-radius:0 }
[data-public-selector] .picker-receipt .picker-extra { display:flex; justify-content:space-between; gap:12px; font-size:14px; line-height:1.5 }
[data-public-selector] .picker-receipt .picker-extra strong { font-size:14px; font-weight:650; white-space:nowrap }
[data-public-selector] .picker-receipt .picker-extra small { font-size:12px; font-weight:500 }
[data-public-selector] .picker-receipt .picker-processing label { display:flex; align-items:flex-start; gap:10px; min-height:44px; cursor:pointer }
[data-public-selector] .picker-receipt .picker-processing input:not(.sr-only) { width:18px; height:18px; margin:2px 0 0; flex:none; accent-color:var(--color-ring) }
[data-public-selector] .picker-receipt .picker-processing strong { display:block; font-size:14px; font-weight:600; line-height:1.5 }
[data-public-selector] .picker-receipt .picker-processing small { display:block; margin-top:2px; font-size:12px; line-height:1.5 }
[data-public-selector] .picker-receipt .picker-processing b { font-size:14px; font-weight:650; line-height:1.5; white-space:nowrap }
[data-public-selector] .picker-receipt .picker-processing>p { margin:2px 0 0 26px; font-size:12px; line-height:1.5 }
[data-public-selector] .picker-receipt>.picker-total.picker-total { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; padding-top:16px; border-top:1px solid var(--color-gray-200) }
.picker-simplified .picker-receipt .picker-total { border-top-color:color-mix(in srgb, var(--color-white) 28%, transparent) }
.experience-hero-home .picker-receipt>.picker-total.picker-total,
.experience-pricing .picker-receipt>.picker-total.picker-total { border-top:0; padding-top:0 }
[data-public-selector] .picker-receipt .picker-total>span>strong { display:block; font-size:14px; font-weight:600; line-height:1.5 }
[data-public-selector] .picker-receipt .picker-total>span>small { display:block; max-width:none; margin-top:2px; font-size:12px; line-height:1.5 }
[data-public-selector] .picker-receipt .picker-total>strong { font-size:30px; font-weight:700; line-height:1.1; letter-spacing:-.04em; white-space:nowrap }
[data-public-selector] .picker-receipt .picker-total>strong small { font-size:12px; font-weight:500; letter-spacing:0 }
[data-public-selector] .picker-receipt+.picker-continue,
[data-public-selector] .picker-receipt~.picker-product-note { margin-top:20px }
[data-public-selector] .picker-product-note+.picker-continue { margin-top:16px }
.picker-simplified .picker-receipt .picker-extra { color:var(--color-primary-50) }
.picker-simplified .picker-receipt .picker-extra strong { color:var(--color-white) }
.picker-simplified .picker-receipt .picker-extra small { color:var(--color-primary-50) }

/* The primary action keeps the project focus ring on light surfaces. */
.experience-pricing .picker-continue:focus-visible,
.experience-package-comparison .picker-continue:focus-visible { outline:3px solid var(--color-ring); outline-offset:3px }

/* Disclosure icons sit beside the words they open. */
.experience-hero .picker-package-editor>summary,
[data-public-selector] .picker-editor>summary,
.experience-pricing-editor>summary { justify-content:flex-start; gap:10px; width:fit-content }

/* An unavailable destination: a reason, then the one way forward. */
.picker-unavailable-reason strong { font-weight:650 }
.picker-unavailable { display:grid; gap:12px; margin-top:20px; padding-top:20px; border-top:1px solid var(--color-gray-200) }
.picker-unavailable>p { margin:0; font-size:14px; line-height:1.5; color:var(--color-gray-500) }
.picker-recover { display:flex; align-items:center; justify-content:center; min-height:48px; padding:12px 20px; border:1px solid var(--color-foreground); border-radius:6px; background:var(--color-white); color:var(--color-foreground); font-size:16px; font-weight:650; line-height:1.4; text-align:center; text-decoration:none }
.picker-recover:hover { background:var(--color-gray-25) }
.picker-recover:focus-visible { outline:3px solid var(--color-ring); outline-offset:3px }
.picker-simplified .picker-unavailable { border-top-color:color-mix(in srgb, var(--color-white) 28%, transparent) }
.picker-simplified .picker-unavailable>p { color:var(--color-primary-50) }
.picker-simplified .picker-recover { border-color:var(--color-primary-50); background:transparent; color:var(--color-white) }
.picker-simplified .picker-recover:hover { background:color-mix(in srgb, var(--color-white) 16%, var(--color-primary-300)) }
.picker-simplified .picker-recover:focus-visible { outline-color:var(--color-ring) }
[data-public-selector] .picker-continue[hidden] { display:none }

/* Floating summary: a bar flush with the bottom edge on phones, eased in where supported. */
.experience-floating-cart { transition:opacity .2s ease, transform .2s ease }
@starting-style { .experience-floating-cart { opacity:0; transform:translate(-50%,12px) } }
@media(max-width:600px) {
 .experience-floating-cart { left:0; right:0; bottom:0; width:auto; max-width:none; transform:none; padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px)); border-width:1px 0 0; border-radius:12px 12px 0 0; box-shadow:var(--shadow-3) }
 @starting-style { .experience-floating-cart { opacity:0; transform:translateY(12px) } }
}
@media(prefers-reduced-motion:reduce) { .experience-floating-cart { transition:none } }

/* ---------- Comparison table (candidate only; shared markup restyled here) ---------- */
.experience-comparison-link { display:flex; align-items:center; justify-content:center; gap:12px; width:fit-content; min-height:48px; margin:24px auto 0; color:var(--ink); font-size:16px; font-weight:600; text-decoration:underline; text-underline-offset:4px }
.experience-comparison-link:focus-visible { outline:3px solid var(--color-ring); outline-offset:4px }
.experience-package-comparison { padding-block:72px; color:var(--color-foreground); font-family:var(--font-sans) }
.experience-package-comparison>.container { max-width:1328px; padding-inline:40px }
.experience-package-comparison>.container>div:first-child { max-width:760px; margin:0; text-align:left }
.experience-package-comparison h2 { max-width:none; padding:0; margin:0; text-align:left; text-wrap:balance; color:var(--color-foreground); font-size:clamp(30px,3.6vw,46px); font-weight:650; line-height:1.12; letter-spacing:-.045em; scroll-margin-top:112px }
.experience-package-comparison h2+p { max-width:640px; margin:16px 0 0; text-align:left; text-wrap:pretty; font-size:16px; font-weight:400; line-height:1.7; color:var(--color-gray-500) }
.experience-package-comparison .comparison-table-frame { margin-top:40px; padding:8px 32px 32px; border:1px solid var(--color-gray-200); border-radius:12px }
.experience-package-comparison [role="table"] { color:var(--color-foreground) }
.experience-package-comparison [role="row"] { column-gap:24px; border-color:var(--color-gray-200) }
.experience-package-comparison [role="row"]:first-child { padding-top:24px; border-color:var(--color-gray-200) }
.experience-package-comparison [role="row"]>* { min-width:0 }
.experience-package-comparison [role="rowheader"] { color:var(--color-foreground); font-size:16px; line-height:1.5 }
.experience-package-comparison [role="cell"] span { display:block; color:var(--color-gray-500); font-size:14px; line-height:1.5; white-space:normal; text-wrap:balance }
.experience-package-comparison [role="columnheader"] h3 { color:var(--color-foreground); font-size:16px; font-weight:650; line-height:1.4 }
/* Candidate: each format's lowest price a visitor can buy (the picker's own available plans), and the format
   currently selected in the picker above. */
.experience-package-comparison .comparison-price { margin:6px 0 0; color:var(--color-foreground); font-size:20px; font-weight:700; line-height:1.2; letter-spacing:-.02em }
.experience-package-comparison .comparison-price>span { margin-right:2px; color:var(--color-gray-500); font-size:14px; font-weight:500; letter-spacing:0 }
.experience-package-comparison .comparison-term { margin:2px 0 0; color:var(--color-gray-500); font-size:14px; line-height:1.4 }
.experience-package-comparison [role="columnheader"]:has(.comparison-price) { position:relative; padding-bottom:34px }
.experience-package-comparison .comparison-selected { position:absolute; left:50%; bottom:0; transform:translateX(-50%); display:inline-flex; align-items:center; gap:6px; margin:10px 0 0; padding:2px 10px; border-radius:999px; background:var(--color-primary-25); color:var(--color-primary); font-size:12px; font-weight:600; line-height:20px; white-space:nowrap }
.experience-package-comparison .comparison-selected::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor }
.experience-package-comparison [role="row"]:has(.is-selected) [role="cell"]:not(.is-selected) img { opacity:.55 }
.experience-package-comparison [role="row"]:has(.is-selected) [role="cell"]:not(.is-selected) span { color:var(--color-gray-500) }
/* Status icons in the page palette: the shared image stays (and keeps its alt text); its pixels are moved out of view and a navy mark is drawn in its place. */
.experience-package-comparison [role="cell"] img[src$="yes.svg"],
.experience-package-comparison [role="cell"] img[src$="not.svg"] { object-position:-999px 0; background:center/contain no-repeat }
.experience-package-comparison [role="cell"] img[src$="yes.svg"] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23142f50' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7'/%3E%3C/svg%3E") }
.experience-package-comparison [role="cell"] img[src$="not.svg"] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7f95' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 12h10'/%3E%3C/svg%3E") }
.experience-package-comparison [data-comparison-handoff] { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,2fr); align-items:center; column-gap:24px; max-width:none; margin:24px 0 0 }
.experience-package-comparison [data-comparison-handoff]>* { grid-column:2 }
.experience-package-comparison [data-comparison-handoff]>.picker-continue { margin:0 }
.experience-package-comparison .picker-continue>span:first-child { font-size:inherit; line-height:1.4 }
.experience-package-comparison .picker-continue[aria-describedby="comparison-destination-feedback"] { cursor:not-allowed }
.experience-package-comparison [data-comparison-handoff]>a:not(.comparison-recovery) { justify-content:center; color:var(--color-foreground); font-size:14px }
.experience-package-comparison #comparison-destination-feedback { margin:0 0 12px; color:var(--color-gray-500); font-size:14px; line-height:1.5 }
.experience-package-comparison .comparison-recovery { display:flex; align-items:center; justify-content:center; width:100%; min-height:48px; margin-top:12px; padding:12px 20px; border:1px solid var(--color-foreground); border-radius:6px; background:var(--color-white); color:var(--color-foreground); font-size:16px; font-weight:650; line-height:1.4; text-align:center; text-decoration:none }
.experience-package-comparison .comparison-recovery:hover { background:var(--color-gray-25) }
.experience-package-comparison :is(.comparison-recovery,[data-comparison-handoff]>a):focus-visible { outline:3px solid var(--color-ring); outline-offset:3px }
@media(max-width:720px) {
 .experience-package-comparison { padding-block:48px }
 .experience-package-comparison>.container { padding-inline:16px }
 .experience-package-comparison .comparison-table-frame { margin-top:28px; padding:0; border:0; border-radius:0 }
 .experience-package-comparison [role="row"]:first-child { padding-top:0 }
 .experience-package-comparison [role="row"] { column-gap:8px }
 .experience-package-comparison [role="rowheader"] { font-size:14px }
 .experience-package-comparison [role="cell"] span { font-size:12px }
 .experience-package-comparison [role="columnheader"] h3 { font-size:14px }
 .experience-package-comparison [data-comparison-handoff] { display:block }
}

/* Inline comparison (product page and homepage). */
.experience-format-comparison { max-width:960px; margin:28px auto 0; color:var(--ink) }
.experience-format-comparison summary { display:flex; align-items:center; justify-content:center; gap:10px; min-height:48px; font-size:16px; font-weight:600; cursor:pointer; list-style:none }
.experience-format-comparison .comparison-label { text-decoration:underline; text-underline-offset:4px }
.experience-format-comparison summary::-webkit-details-marker { display:none }
.experience-format-comparison summary:focus-visible { outline:3px solid var(--color-ring); outline-offset:4px }
.experience-format-comparison[open] .comparison-icon { transform:rotate(45deg) }
.experience-format-comparison table { width:100%; margin-top:16px; border-collapse:collapse; table-layout:fixed; font-size:14px; line-height:1.5 }
.experience-format-comparison caption { padding:0 0 20px; text-align:left; color:var(--color-gray-500); font-size:12px }
.experience-format-comparison :is(th,td) { padding:16px 12px; border-bottom:1px solid var(--color-gray-200); text-align:center; vertical-align:middle; overflow-wrap:break-word }
.experience-format-comparison th:first-child { width:42%; text-align:left }
.experience-format-comparison tbody th { font-weight:500 }
.experience-format-comparison thead th { font-weight:650 }
@media(max-width:600px) {
 .experience-format-comparison table { font-size:12px }
 .experience-format-comparison :is(th,td) { padding:12px 6px }
 .experience-format-comparison th:first-child { width:38% }
}

/* ---------- Pricing presentation: base (product page and narrow widths) ---------- */
.experience-pricing { background:var(--color-gray-25); padding-block:80px }
.experience-pricing .section-head { display:block }
.experience-pricing .section-head>p { margin-top:16px }
.experience-pricing .section-head a { display:inline-flex; align-items:center; gap:8px; margin-top:4px; color:var(--ink); text-decoration:underline; text-underline-offset:4px }
.experience-pricing .section-head a .icon { width:18px; height:18px }
.experience-pricing .section-head a:focus-visible { outline:3px solid var(--color-ring); outline-offset:3px }
.experience-pricing-workspace { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); background:var(--color-white); border-radius:12px; overflow:hidden }
.experience-product-studio { background:var(--ink-deep); color:var(--color-white); display:flex; flex-direction:column; padding:32px; min-width:0 }
.experience-product-studio h3 { font-size:24px; line-height:1.3; margin:0 }
.experience-studio-scene { position:relative; min-height:345px; flex:1; margin-block:20px; overflow:clip; isolation:isolate }
.experience-studio-scene img { position:absolute; object-fit:contain; filter:drop-shadow(0 13px 12px rgb(0 0 0 / 0.13)) }
.experience-studio-booklet { width:58%; height:auto; left:3%; top:18px; transform:rotate(-4deg) }
.experience-studio-phone { width:29%; height:auto; right:3%; top:100px; transform:rotate(7deg) }
.experience-studio-card { width:112%; height:auto; max-width:none; left:19%; top:145px; z-index:2 }
.experience-studio-digital { width:39%; height:90%; left:30%; top:0 }
.experience-product-studio ul { list-style:none; padding:0; margin:0; display:grid; gap:8px; font-size:14px; line-height:1.5 }
.experience-product-studio li { display:flex; align-items:flex-start; gap:8px }
.experience-product-studio li svg { flex:none; width:1.25em; height:1.25em; margin-top:0.12em; color:var(--color-gray-300) }
.experience-product-studio p { color:var(--color-gray-300); font-size:14px; line-height:1.6; margin-top:16px }
.experience-pricing-controls { padding:32px; min-width:0 }
.experience-pricing-controls>.picker-label { margin:0 0 8px; font-size:14px; font-weight:600; line-height:1.5 }
#experience-pricing-destination { scroll-margin-top:120px }
.experience-pricing-controls .picker-destination :is(select,.destination-trigger) { width:100%; min-height:48px; border:1px solid var(--color-gray-300); border-radius:var(--radius-lg); background:var(--color-white); color:var(--ink); font-size:16px }
.experience-pricing-controls .picker-destination select { padding:10px 12px }
.experience-pricing-controls .picker-checker { display:flex; flex-direction:column; gap:4px; margin-top:10px; color:var(--color-gray-500); font-size:13px; line-height:1.45 }
.experience-pricing-controls .picker-checker-status { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:0 }
.experience-pricing-controls .picker-checker-mark { display:none }
.experience-pricing-controls .picker-checker-detail { margin:0 }
.experience-pricing-controls .picker-checker .is-accepted { color:var(--color-alert-green-300) }
.experience-pricing-controls .picker-checker .is-rejected { color:var(--color-alert-red-200) }
.experience-pricing-controls .picker-destination.has-flag select { padding-inline-start:50px }
.experience-pricing-controls .picker-destination select:focus-visible { outline:3px solid var(--color-ring); outline-offset:3px }
.experience-format { min-width:0; padding:0; border:0; margin:24px 0 0 }
.experience-format legend { padding:0; margin-bottom:8px; font-size:14px; font-weight:600; line-height:1.5 }
.experience-format>div { display:flex; gap:4px; background:var(--color-gray-25); padding:4px; border-radius:8px }
.experience-format label { flex:1; min-width:0; cursor:pointer }
.experience-format input { position:absolute; width:1px; height:1px; opacity:0 }
.experience-format span { display:flex; justify-content:center; align-items:center; min-height:40px; padding-inline:8px; border-radius:6px; color:var(--color-gray-500); font-size:14px; font-weight:600; text-align:center }
.experience-format label:hover span { color:var(--color-foreground) }
.experience-format input:checked+span { background:var(--color-primary-25); box-shadow:none; color:var(--color-foreground) }
.experience-format input:focus-visible+span { outline:3px solid var(--color-ring); outline-offset:3px }
.experience-duration-heading { display:flex; justify-content:space-between; gap:12px; align-items:baseline; margin:28px 0 16px }
.experience-duration-heading h3 { margin:0; font-size:14px; font-weight:600; line-height:1.5; letter-spacing:0 }
.experience-duration-heading>span { color:var(--color-gray-500); font-size:12px }
.experience-durations { border:0; padding:0; margin:0; min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px }
.experience-duration { position:relative; min-width:0; border:1px solid var(--color-gray-200); border-radius:8px; background:var(--color-white); transition:border-color .15s }
.experience-duration:hover { border-color:var(--color-gray-300) }
.experience-duration.is-selected { border-color:transparent; background:var(--color-primary-25); box-shadow:none }
.experience-duration:has(:focus-visible) { outline:3px solid var(--color-ring); outline-offset:3px }
.experience-duration label { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto minmax(18px,auto); align-content:start; gap:8px; min-height:112px; padding:16px; cursor:pointer }
.experience-duration-term { font-size:14px; font-weight:600; line-height:1.5 }
.experience-duration input { width:18px; height:18px; margin:2px 0 0; accent-color:var(--color-ring) }
.experience-duration label>strong { grid-column:1/-1; font-size:30px; font-weight:700; line-height:1.1; letter-spacing:-.04em; white-space:nowrap }
.experience-duration label>small { grid-column:1/-1 }
.experience-duration .picker-saving { margin:0; gap:6px; font-size:12px; line-height:1.5 }
.experience-duration .picker-saving del { color:var(--color-gray-500) }
.experience-pricing-compact .experience-duration .picker-saving strong { color:var(--color-gray-500) }
.experience-duration.has-offer .experience-offer { position:absolute; top:-10px; left:16px; background:var(--color-secondary-200); color:var(--color-gray-900) }
.experience-durations:has(.has-offer) { padding-top:10px }
.experience-fixed-plan { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:24px 0 0 }
.experience-fixed-plan h3 { margin:0; font-size:16px; font-weight:650; line-height:1.4 }
.experience-fixed-plan>strong { font-size:30px; font-weight:700; letter-spacing:-.04em; white-space:nowrap }
.experience-fixed-plan small { font-size:12px; font-weight:500; letter-spacing:0 }
.picker-product-note { margin:0; color:var(--color-gray-500); font-size:12px; line-height:1.6 }
.picker-product-note a { color:inherit; text-decoration:underline; text-underline-offset:3px }
.picker-product-note a:hover { text-decoration-thickness:2px }
.picker-simplified .picker-product-note { color:var(--color-primary-50) }
.experience-pricing-controls .picker-continue { width:100% }
.experience-pricing button:disabled { opacity:.6; cursor:wait }
@media(prefers-reduced-motion:reduce) { .experience-duration { transition:none } }

@media(max-width:1100px) and (min-width:721px) {
 .experience-pricing-workspace { grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr) }
 .experience-product-studio { padding:24px 20px }
 .experience-pricing-controls { padding:24px 20px }
 .experience-studio-scene { min-height:300px }
 .experience-studio-card { top:145px }
 .experience-studio-phone { top:90px }
}
@media(max-width:720px) {
 .experience-pricing { padding-block:48px }
 .experience-pricing-workspace { display:block }
 .experience-product-studio { display:grid; grid-template-columns:minmax(0,1fr) 104px; padding:20px 16px; gap:8px 12px }
 .experience-product-studio h3 { font-size:24px; align-self:end }
 .experience-product-studio ul { grid-column:1; gap:4px; font-size:12px }
 .experience-product-studio p { grid-column:1/-1; font-size:12px; margin:0 }
 .experience-studio-scene { grid-column:2; grid-row:1/3; width:104px; height:124px; min-height:0; margin:0 }
 .experience-studio-booklet { width:60px; top:4px; left:2px }
 .experience-studio-phone { width:33px; right:0; top:35px }
 .experience-studio-card { width:154px; left:-5px; top:47px }
 .experience-studio-digital { width:55px; height:116px; left:24px; top:4px }
 .experience-pricing-controls { padding:20px 16px }
 .experience-durations { grid-template-columns:minmax(0,1fr); gap:8px }
 .experience-durations:has(.has-offer) { padding-top:0 }
 .experience-duration label { grid-template-columns:18px minmax(0,1fr) auto; grid-template-rows:auto; align-items:center; gap:2px 12px; min-height:56px; padding:12px 16px }
 .experience-duration input { grid-column:1; grid-row:1; margin:0 }
 .experience-duration-term { grid-column:2; grid-row:1 }
 .experience-duration label>strong { grid-column:3; grid-row:1; font-size:24px }
 .experience-duration label>small { grid-column:2/4; grid-row:2 }
 .experience-duration.has-offer .experience-offer { position:static; margin-left:6px; vertical-align:1px }
}
@media(max-width:359px) {
 .experience-pricing .wrap { padding-inline:16px }
 .experience-product-studio { grid-template-columns:minmax(0,1fr) 88px; padding:16px 12px }
 .experience-studio-scene { width:88px }
 .experience-studio-card { width:136px; top:52px }
 .experience-pricing-controls { padding-inline:12px }
 .experience-duration label { padding-inline:12px; gap:2px 10px }
}

/* ---------- /pricing/: the decision beside the headline, the price and the action in the first view ---------- */
.experience-pricing-page .experience-pricing { padding-block:48px 72px }
.experience-pricing-page .experience-pricing>.wrap { max-width:1328px }
@media(min-width:721px) {
 .experience-pricing-page .experience-pricing>.wrap { padding-inline:40px }
}
.experience-pricing-page .experience-pricing .section-head { display:block; margin:0 0 32px }
.experience-pricing-page .experience-pricing .section-head>p { margin-top:16px; font-size:16px; line-height:1.7 }
.experience-pricing-page .experience-pricing-controls { background:var(--color-white); border:1px solid var(--color-gray-200); border-radius:12px }
@media(min-width:1000px) {
 .experience-pricing-page .experience-pricing>.wrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); grid-template-rows:auto 1fr auto; grid-template-areas:"head controls" "studio controls" "compare compare"; column-gap:56px; align-items:start }
 .experience-pricing-page .experience-pricing-workspace { display:contents }
 .experience-pricing-page .experience-pricing .section-head { grid-area:head; margin-bottom:24px }
 .experience-pricing-page .experience-product-studio { grid-area:studio; align-self:stretch; padding:28px; border-radius:12px }
 .experience-pricing-page .experience-studio-scene { flex:1 1 auto; height:auto; min-height:200px; margin-block:16px 20px }
 .experience-pricing-page .experience-studio-booklet { width:44%; left:12%; top:8px }
 .experience-pricing-page .experience-studio-phone { width:21%; right:14%; top:44px }
 .experience-pricing-page .experience-studio-card { width:92%; left:26%; top:92px }
 .experience-pricing-page .experience-studio-digital { width:112px; height:236px; left:calc(50% - 56px); top:12px }
 /* The scene fills whatever height the decision panel leaves; each image is sized from that height and
    placed from the centre by its own width, so the product is never cropped. */
 .experience-pricing-page .experience-studio-booklet { width:auto; height:90%; left:50%; top:3%; transform:translateX(-86%) rotate(-4deg) }
 .experience-pricing-page .experience-studio-phone { width:auto; height:71%; left:50%; right:auto; top:17%; transform:translateX(71%) rotate(7deg) }
 .experience-pricing-page .experience-studio-card { width:auto; height:115%; left:50%; top:35%; transform:translateX(-26%) }
 .experience-pricing-page .experience-studio-digital { width:auto; height:92%; left:50%; top:4%; transform:translateX(-50%) }
 .experience-pricing-page .experience-product-studio ul { display:flex; flex-wrap:wrap; gap:4px 20px }
 .experience-pricing-page .experience-product-studio p { margin-top:12px }
 .experience-pricing-page .experience-pricing-controls { grid-area:controls; padding:32px }
 .experience-pricing-page .experience-comparison-link { grid-area:compare; margin-top:40px }
}
/* Destination and format share one row when the panel is wide enough. */
@media(min-width:1180px) {
 .experience-pricing-page .experience-pricing-controls:has(>.experience-format) { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:24px; align-content:start }
 .experience-pricing-page .experience-pricing-controls:has(>.experience-format)>* { grid-column:1/-1 }
 .experience-pricing-page .experience-pricing-controls:has(>.experience-format)>.picker-label { grid-column:1; grid-row:1 }
 .experience-pricing-page .experience-pricing-controls:has(>.experience-format)>.picker-destination { grid-column:1; grid-row:2 }
 .experience-pricing-page .experience-pricing-controls:has(>.experience-format)>.experience-format { grid-column:2; grid-row:1/3; margin:0 }
 .experience-pricing-page .experience-pricing-controls:has(>.experience-format) .experience-format>div { min-height:48px; box-sizing:border-box }
}
@media(min-width:721px) and (max-width:999px) {
 .experience-pricing-page .experience-pricing-workspace { grid-template-columns:clamp(200px,28vw,260px) minmax(0,1fr); gap:24px; align-items:start; background:transparent; border-radius:0; overflow:visible }
 .experience-pricing-page .experience-product-studio { border-radius:12px; padding:20px }
 .experience-pricing-page .experience-studio-scene { height:200px; min-height:0; flex:none; margin-block:16px }
 .experience-pricing-page .experience-studio-booklet { width:60%; top:6px; left:3% }
 .experience-pricing-page .experience-studio-phone { width:28%; top:54px; right:3% }
 .experience-pricing-page .experience-studio-card { width:132%; top:80px; left:12% }
 .experience-pricing-page .experience-studio-digital { width:86px; height:181px; top:9px; left:calc(50% - 43px) }
 .experience-pricing-page .experience-pricing-controls { padding:24px }
}
/* Phones: the headline, a one-row product header, then the decision. */
@media(max-width:720px) {
 .experience-pricing-page .experience-pricing { padding-block:20px 48px }
 .experience-pricing-page .experience-pricing .section-head { margin-bottom:16px }
 .experience-pricing-page .experience-pricing-controls>.picker-label { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap }
 .experience-pricing-page .picker-receipt { margin-top:20px; padding-top:16px }
 .experience-pricing-page .picker-receipt~.picker-product-note { margin-top:16px }
 .experience-pricing-page .picker-product-note+.picker-continue { margin-top:12px }
 .experience-pricing-page .experience-pricing .section-head>p { margin-top:8px; font-size:14px; line-height:1.6 }
 .experience-pricing-page .experience-pricing .section-head>p br { display:none }
 .experience-pricing-page .experience-pricing .section-head>p a { margin-top:0 }
 .experience-pricing-page .experience-format legend { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap }
 .experience-pricing-page .picker-receipt>.picker-package-price { display:none }
 .experience-pricing-page .experience-pricing-workspace { background:transparent; overflow:visible }
 .experience-pricing-page .experience-product-studio { grid-template-columns:minmax(0,1fr) 80px; grid-template-rows:auto auto; align-items:center; gap:4px 12px; padding:12px 12px 12px 16px; border-radius:12px 12px 0 0 }
 .experience-pricing-page .experience-product-studio h3 { grid-column:1; grid-row:1; align-self:end; font-size:16px; font-weight:650; line-height:1.4; letter-spacing:-.01em }
 .experience-pricing-page .experience-product-studio ul { grid-column:1; grid-row:2; display:flex; flex-wrap:wrap; gap:0 12px; align-self:start; color:var(--color-primary-50); font-size:12px; line-height:1.5 }
 .experience-pricing-page .experience-product-studio li::before { margin-right:4px }
 .experience-pricing-page .experience-product-studio p { display:none }
 .experience-pricing-page .experience-studio-scene { grid-column:2; grid-row:1/3; width:80px; height:64px }
 .experience-pricing-page .experience-studio-booklet { width:40px; top:2px; left:4px }
 .experience-pricing-page .experience-studio-phone { width:22px; right:4px; top:12px }
 .experience-pricing-page .experience-studio-card { width:92px; left:0; top:26px }
 .experience-pricing-page .experience-studio-digital { width:28px; height:58px; left:26px; top:3px }
 .experience-pricing-page .experience-pricing-controls { padding:16px; border-top:0; border-radius:0 0 12px 12px }
 .experience-pricing-page .experience-format { margin-top:12px }
 .experience-pricing-page .experience-duration-heading { margin:20px 0 12px }
}

/* Keep shared errors distinct from generic section paragraph styling. */
.experience-pricing-controls .picker-error,
.experience-package-comparison .picker-error { margin:12px 0 0; color:var(--color-alert-red-200); font-size:14px; line-height:1.5 }

/* ---------- The homepage reviews the existing choice; the dedicated pricing page stays expanded ---------- */
.experience-pricing-compact .experience-pricing-workspace { grid-template-columns:minmax(0,1fr) minmax(360px,580px); gap:48px; align-items:start; background:transparent; border-radius:0; overflow:visible }
.experience-pricing-compact .experience-product-studio { display:flex; flex-direction:column; align-items:stretch; padding:28px 0 0; background:transparent; color:var(--ink) }
.experience-pricing-compact .experience-product-studio h3 { order:1; align-self:start; margin:0 }
.experience-pricing-compact .experience-product-studio ul { order:2; gap:8px; margin:8px 0 0; color:var(--color-foreground); font-size:15px; line-height:1.4 }
.experience-pricing-compact .experience-product-studio li { gap:10px }
.experience-pricing-compact .experience-product-studio li svg { width:20px; height:20px; color:var(--color-gray-500) }
.experience-pricing-compact .experience-studio-scene { order:3; flex:none; width:320px; max-width:100%; height:320px; min-height:0; margin:20px 0 0; border-radius:0; background:none; overflow:visible }
.experience-pricing-compact .experience-studio-scene img { pointer-events:none }
.experience-pricing-compact .experience-studio-booklet { width:60%; height:auto; left:4%; top:10px; right:auto; transform:rotate(-4deg) }
.experience-pricing-compact .experience-studio-phone { width:28%; height:auto; right:4%; left:auto; top:86px; transform:rotate(7deg) }
.experience-pricing-compact .experience-studio-card { width:130%; height:auto; max-width:none; left:12%; top:120px; transform:none }
.experience-pricing-compact .experience-studio-digital { width:140px; height:294px; left:90px; top:12px; transform:none }
.experience-pricing-compact .experience-product-studio p { order:4; max-width:46ch; margin:20px 0 0; color:var(--muted); font-size:13px; line-height:1.5 }
.experience-pricing-compact .experience-pricing-controls { padding:28px; border:0; border-radius:24px 24px 36px 36px; background:var(--color-white) }
@media(min-width:1101px) {
 .experience-pricing-compact .experience-product-studio ul { display:flex; flex-wrap:wrap; align-items:center; gap:8px 28px }
 .experience-pricing-compact .experience-product-studio li { flex:none }
 .experience-pricing-compact .experience-studio-scene { width:min(100%, 448px); height:auto; aspect-ratio:1 }
 .experience-pricing-compact .experience-studio-booklet { top:3.125% }
 .experience-pricing-compact .experience-studio-phone { top:26.875% }
 .experience-pricing-compact .experience-studio-card { top:37.5% }
 .experience-pricing-compact .experience-studio-digital { width:43.75%; height:91.875%; left:28.125%; top:3.75% }
}
.experience-selected-package { display:flex; justify-content:space-between; gap:20px; align-items:baseline; margin-top:24px }
.experience-selected-package h3 { margin:0; font-size:24px; line-height:1.3; letter-spacing:-.025em }
.experience-selected-package h3 span { white-space:nowrap }
.experience-selected-price { text-align:right; flex-shrink:0 }
.experience-selected-price>strong { display:block; font-size:30px; font-weight:700; letter-spacing:-.04em; line-height:1.2; white-space:nowrap }
.experience-selected-price small { font-size:12px; font-weight:500; letter-spacing:0 }
.experience-selected-price .picker-saving { justify-content:flex-end; margin-top:4px; font-size:12px }
.experience-pricing-editor { margin-top:12px }
.experience-pricing-editor>summary { display:flex; align-items:center; min-height:44px; padding-block:8px; font-size:14px; line-height:1.5; font-weight:600; color:var(--ink); cursor:pointer; list-style:none }
.experience-pricing-editor>summary>span:first-child { text-decoration:underline; text-underline-offset:4px }
.experience-pricing-editor>summary::-webkit-details-marker { display:none }
.experience-pricing-editor>summary:focus-visible { outline:3px solid var(--color-ring); outline-offset:3px; border-radius:2px }
.experience-editor-icon { font-size:20px; line-height:1; font-weight:400 }
.experience-pricing-editor[open] .experience-editor-icon { transform:rotate(45deg) }
.experience-pricing-compact .experience-format { margin-block:16px 0 }
.experience-pricing-compact .experience-format-comparison { max-width:none; margin-top:32px; border-top:0; padding-top:0 }
.experience-pricing-compact .experience-format-comparison summary { justify-content:flex-start; gap:6px; font-size:18px; font-weight:600; line-height:28px }
.experience-pricing-compact .experience-format-comparison .comparison-label { text-decoration:none }
.experience-pricing-compact .experience-format-comparison .comparison-chevron { display:flex; flex:none; transition:transform .2s }
.experience-pricing-compact .experience-format-comparison .comparison-chevron svg { width:16px; height:16px }
.experience-pricing-compact .experience-format-comparison[open] .comparison-chevron { transform:rotate(180deg) }
@media(max-width:1100px) and (min-width:721px) {
 .experience-pricing-compact .experience-pricing-workspace { grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:48px }
 .experience-pricing-compact .experience-product-studio { padding-top:24px }
 .experience-pricing-compact .experience-studio-scene { width:240px; height:250px }
 .experience-pricing-compact .experience-studio-phone { top:60px }
 .experience-pricing-compact .experience-studio-card { top:90px }
 .experience-pricing-compact .experience-studio-digital { width:112px; height:235px; left:64px; top:8px }
 .experience-pricing-compact .experience-pricing-controls { padding:24px }
 .experience-selected-package { flex-direction:column; gap:8px }
 .experience-selected-price { text-align:left }
 .experience-selected-price .picker-saving { justify-content:flex-start }
}
@media(max-width:999px) {
 .experience-pricing-compact .experience-durations { grid-template-columns:minmax(0,1fr); gap:8px }
 .experience-pricing-compact .experience-durations:has(.has-offer) { padding-top:0 }
 .experience-pricing-compact .experience-duration label { grid-template-columns:18px minmax(0,1fr) auto; grid-template-rows:auto; align-items:center; gap:2px 12px; min-height:56px; padding:12px 16px }
 .experience-pricing-compact .experience-duration input { grid-column:1; grid-row:1; margin:0 }
 .experience-pricing-compact .experience-duration-term { grid-column:2; grid-row:1 }
 .experience-pricing-compact .experience-duration label>strong { grid-column:3; grid-row:1; font-size:24px }
 .experience-pricing-compact .experience-duration label>small { grid-column:2/4; grid-row:2 }
 .experience-pricing-compact .experience-duration.has-offer .experience-offer { position:static; margin-left:6px; vertical-align:1px }
}
@media(max-width:720px) {
 .experience-pricing-compact .experience-product-studio { display:grid; grid-template-columns:minmax(0,1fr) 120px; align-items:start; column-gap:12px; row-gap:0; padding:0 }
 .experience-pricing-compact .experience-product-studio h3 { grid-column:1; grid-row:1; order:0 }
 .experience-pricing-compact .experience-product-studio ul { grid-column:1; grid-row:2; order:0; margin-top:8px; font-size:15px; gap:8px }
 .experience-pricing-compact .experience-studio-scene { grid-column:2; grid-row:1/3; order:0; align-self:start; width:120px; height:120px; margin:0 }
 .experience-pricing-compact .experience-studio-booklet { width:60%; height:auto; left:4%; top:3.125%; right:auto; transform:rotate(-4deg) }
 .experience-pricing-compact .experience-studio-phone { width:28%; height:auto; right:4%; left:auto; top:26.875%; transform:rotate(7deg) }
 .experience-pricing-compact .experience-studio-card { width:130%; height:auto; max-width:none; left:12%; top:37.5%; transform:none }
 .experience-pricing-compact .experience-studio-digital { width:43.75%; height:91.875%; left:28.125%; top:3.75%; transform:none }
 .experience-pricing-compact .experience-product-studio p { grid-column:1/-1; grid-row:3; order:0; margin-top:16px; font-size:13px }
 .experience-pricing-compact .experience-pricing-controls { margin-top:24px; padding:20px 16px }
 .experience-selected-package { flex-direction:column; gap:8px; margin-top:20px }
 .experience-selected-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 14px; text-align:left }
 .experience-selected-price .picker-saving { margin:0; justify-content:flex-start }
}
@media(max-width:359px) {
 .experience-pricing-compact .experience-pricing-controls { padding:16px 12px }
}

/* Compact pricing uses the hero picker's card stack on a white panel. */
.experience-pricing-compact .experience-selected-package { position:relative; display:flex; flex-direction:row; align-items:center; gap:16px; margin-top:16px; padding:16px; border-radius:20px; background:var(--color-gray-25); color:var(--color-foreground) }
.experience-pricing-compact .experience-selected-well { position:relative; flex:none; width:92px; height:78px; clip-path:inset(-37px -27px 0 -27px) }
.experience-pricing-compact .experience-selected-well::before { content:""; position:absolute; left:0; right:0; bottom:0; height:63px; border-radius:11px; background:var(--color-gray-100) }
.experience-pricing-compact .experience-selected-well>img { position:absolute; left:50%; bottom:0; width:107px; height:91px; max-width:none; transform:translateX(calc(-50% - 1.408%)); object-fit:contain; object-position:center bottom }
.experience-pricing-compact .experience-selected-copy { display:grid; flex:1; min-width:0; grid-template-columns:minmax(0,1fr) auto; column-gap:16px; align-items:start }
.experience-pricing-compact .experience-selected-title { display:flex; align-items:center; gap:10px; grid-column:1; grid-row:1; min-width:0 }
.experience-pricing-compact .experience-selected-package h3 { grid-column:auto; grid-row:auto; margin:0; font-size:19px; line-height:1.3; letter-spacing:-.025em }
.experience-pricing-compact .experience-selected-copy>p { grid-column:1; grid-row:2; margin:6px 0 0; font-size:13px; line-height:1.5; color:var(--color-gray-500) }
.experience-pricing-compact .experience-selected-copy>strong { grid-column:2; grid-row:1; margin:0; justify-self:end; font-size:27px; font-weight:700; line-height:1.1; letter-spacing:-.04em; white-space:nowrap }
.experience-pricing-compact .experience-selected-package .picker-saving { grid-column:2; grid-row:2; margin:6px 0 0; justify-self:end; justify-content:flex-end }
.experience-pricing-compact .experience-selected-package .picker-saving del { color:var(--color-gray-500) }
.experience-pricing-compact .experience-selected-package .picker-saving strong { position:absolute; top:-11px; right:16px; z-index:1; display:inline-flex; align-items:center; margin:0; padding:2px 8px; border-radius:999px; background:var(--color-secondary-200); color:var(--color-gray-900); font-size:12px; font-weight:500; line-height:1.5; letter-spacing:0 }
.experience-pricing-compact .experience-edit { display:inline-flex; align-items:center; gap:4px; flex:none; margin:0; padding:0; border:0; background:none; color:var(--color-foreground); font-size:14px; font-weight:500; line-height:1.3; cursor:pointer }
.experience-pricing-compact .experience-edit svg { width:16px; height:16px }
.experience-pricing-compact .experience-edit:hover { color:var(--color-primary-100) }
.experience-pricing-compact .experience-edit:focus-visible { outline:3px solid var(--color-ring); outline-offset:3px }
.experience-pricing-compact .experience-pricing-editor:not([open]) { display:none }
.experience-pricing-compact .experience-pricing-editor[open] { margin-top:16px }
.experience-pricing-compact .experience-pricing-editor>summary { position:absolute; width:1px; height:1px; min-height:0; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0 }
.experience-pricing-compact .experience-format>div { border-radius:20px; background:var(--color-gray-25) }
.experience-pricing-compact .experience-format span { border-radius:16px }
.experience-pricing-compact .experience-format input:checked+span { background:var(--color-white); color:var(--color-foreground) }
.experience-pricing-compact .experience-duration { border:0; border-radius:20px; background:var(--color-gray-25) }
.experience-pricing-compact .experience-duration.is-selected { background:var(--color-primary-25) }
.experience-pricing-compact .experience-duration.has-offer .experience-offer { top:-11px; right:16px; left:auto }
[data-public-selector] .experience-pricing-compact .picker-receipt { margin-top:16px }
[data-public-selector] .experience-pricing-compact .picker-receipt>.picker-processing { position:relative; margin:0; padding:16px; background:var(--color-gray-25); border:0; border-radius:20px; color:var(--color-foreground) }
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing label { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:12px; align-items:start; min-height:0 }
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing label>span:not(:has(.ui-checkbox-indicator)) { grid-column:1; grid-row:1 }
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing label>span:has(.ui-checkbox-indicator) { position:absolute; right:16px; bottom:16px; margin:0 }
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing label>b { grid-column:2; grid-row:1 }
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing small,
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing>p:not(.picker-error) { margin-left:0; font-size:13px; line-height:1.5; color:var(--color-gray-500) }
[data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing>p:not(.picker-error) { padding-right:28px }
[data-public-selector] .experience-pricing-compact .picker-receipt>.picker-total { margin:0; padding:12px 16px 0; border-top:0 }
.experience-pricing-compact .picker-product-note { padding-inline:16px }
.experience-pricing-compact .ui-checkbox-indicator { width:19px; height:19px; border:0 !important; border-radius:50%; background:transparent !important; box-shadow:0 0 0 1.5px #dfe1e7; color:transparent !important }
.experience-pricing-compact .ui-checkbox-indicator svg { display:none }
.experience-pricing-compact :is(.ui-checkbox-indicator--checked, span:has(> input.peer:checked) > .ui-checkbox-indicator) { background:radial-gradient(circle,#fff 0 3.5px,var(--color-secondary-200) 4px 100%) !important; box-shadow:0 1px 2px rgb(164 172 185 / .4), 0 0 0 1px #dfe1e7 }
.experience-pricing-compact .experience-duration input { width:19px; height:19px; margin:0; appearance:none; -webkit-appearance:none; border:0; border-radius:50%; background:transparent; box-shadow:0 0 0 1.5px #dfe1e7; cursor:pointer }
.experience-pricing-compact .experience-duration input:checked { background:radial-gradient(circle,#fff 0 3.5px,var(--color-secondary-200) 4px 100%); box-shadow:0 1px 2px rgb(164 172 185 / .4), 0 0 0 1px #dfe1e7 }
.experience-pricing-compact .picker-checker { gap:8px; margin-top:8px; padding:12px 16px; border-radius:var(--radius-xl); background:var(--color-gray-25); color:var(--color-gray-500) }
.experience-pricing-compact .picker-checker-status { justify-content:space-between; flex-wrap:nowrap; align-items:center; gap:8px; color:var(--color-foreground); font-size:13px; font-weight:500; line-height:1.52 }
.experience-pricing-compact .picker-checker-place { display:inline-flex; align-items:center; gap:6px; flex:1; min-width:0 }
.experience-pricing-compact .picker-checker-place>span:not(.fp) { min-width:0 }
.experience-pricing-compact .picker-checker .fp { width:20px; height:15px; flex:none }
.experience-pricing-compact .picker-checker :is(.is-accepted,.is-rejected) { display:inline-flex; align-items:center; gap:4px; flex:none; font-size:13px; font-weight:600; line-height:1.52 }
.experience-pricing-compact .picker-checker-mark { display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; border-radius:50% }
.experience-pricing-compact .picker-checker .is-accepted .picker-checker-mark { background:var(--color-secondary-200); color:var(--color-primary-400) }
.experience-pricing-compact .picker-checker .is-rejected .picker-checker-mark { background:var(--color-alert-red-100); color:var(--color-white) }
.experience-pricing-compact .picker-checker-mark svg { width:12px; height:12px }
.experience-pricing-compact .picker-checker-detail { font-size:12px; font-weight:300; line-height:1.5; color:var(--color-gray-500) }
@media(min-width:1000px) {
 .experience-pricing-compact .experience-duration input { position:absolute; right:16px; bottom:16px; margin:0; grid-area:auto }
 .experience-pricing-compact .experience-duration label>small { padding-right:26px }
}
@media(min-width:1280px) {
 .experience-pricing-compact .experience-pricing-controls { border-radius:32px }
}
@media(max-width:900px) {
 .experience-pricing-compact .experience-product-studio { padding-top:18px }
 .experience-pricing-compact .experience-pricing-controls { padding:18px; border-radius:24px 24px 36px 36px }
 .experience-pricing-compact .experience-selected-package { display:flex; align-items:center; gap:0; padding:6px 0 6px 12px }
 .experience-pricing-compact .experience-selected-well { width:79px; height:100px; clip-path:none; overflow:visible }
 .experience-pricing-compact .experience-selected-well::before { left:0; top:16px; right:auto; bottom:auto; width:79px; height:79px; border-radius:9px }
 .experience-pricing-compact .experience-selected-well>img { left:-8px; top:2px; bottom:auto; width:96px; height:90px; transform:none }
 .experience-pricing-compact .experience-selected-copy { grid-template-columns:auto auto minmax(0,1fr); align-items:end; column-gap:8px; row-gap:4px; padding:8px 12px }
 .experience-pricing-compact .experience-selected-title { display:contents }
 .experience-pricing-compact .experience-selected-package h3 { grid-column:1 / -1; grid-row:1; margin:0; font-size:18px; font-weight:700; line-height:1.25 }
 .experience-pricing-compact .experience-selected-copy>p { grid-column:1 / -1; grid-row:2; margin:0; font-size:12px; line-height:1.48 }
 .experience-pricing-compact .experience-edit { grid-column:3; grid-row:4; justify-self:end; align-self:end }
 .experience-pricing-compact .experience-selected-copy>strong { grid-column:1; grid-row:4; justify-self:start; font-size:22px; line-height:1.2 }
 .experience-pricing-compact .experience-selected-package .picker-saving { display:flex; grid-column:2; grid-row:4; align-items:baseline; margin:0; justify-self:start }
 .experience-pricing-compact .experience-selected-package .picker-saving del { font-size:18px; font-weight:400 }
 [data-public-selector] .experience-pricing-compact .picker-receipt>.picker-processing { padding:12px }
 [data-public-selector] .experience-pricing-compact .picker-receipt .picker-processing label>span:has(.ui-checkbox-indicator) { right:12px; bottom:12px }
 .experience-pricing-compact .picker-speed-more { display:inline }
 .experience-pricing-compact .picker-processing>p:not(.picker-error) { display:none }
 .experience-pricing-compact .experience-duration label { grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:start; column-gap:12px; row-gap:4px; min-height:76px; padding:12px 16px }
 .experience-pricing-compact .experience-duration-term { grid-column:1; grid-row:1 }
 .experience-pricing-compact .experience-duration label>strong { grid-column:2; grid-row:1; justify-self:end; align-self:start; font-size:22px; line-height:1.2 }
 .experience-pricing-compact .experience-duration input { position:absolute; right:16px; bottom:12px; grid-column:auto; grid-row:auto }
 .experience-pricing-compact .experience-duration label>small { grid-column:1; grid-row:2; padding-right:32px }
 .experience-pricing-compact .picker-checker { gap:6px; padding:10px }
 .experience-pricing-compact .picker-checker-status,
 .experience-pricing-compact .picker-checker :is(.is-accepted,.is-rejected) { font-size:11px }
 .experience-pricing-compact .picker-checker .fp { width:14px; height:10px }
 .experience-pricing-compact .picker-checker-mark { width:12px; height:12px }
 .experience-pricing-compact .picker-checker-mark svg { width:10px; height:10px }
 .experience-pricing-compact .picker-checker-detail { font-size:10px }
}
@media(max-width:720px) {
 .experience-pricing-compact .experience-product-studio { padding-top:0 }
}

/* The Thailand lander sets the picker on a light card: the receipt keeps light-surface tones there. */
.country-package-column .picker-simplified .picker-receipt,
.country-package-column .picker-simplified .picker-receipt>.picker-total.picker-total,
.country-package-column .picker-simplified .picker-unavailable { border-top-color:var(--color-gray-200) }
.country-package-column .picker-simplified .picker-receipt .picker-extra { color:var(--color-gray-500) }
.country-package-column .picker-simplified .picker-receipt .picker-extra strong { color:var(--color-foreground) }
.country-package-column .picker-simplified .picker-receipt .picker-extra small { color:var(--color-gray-500) }
.country-package-column .picker-simplified .picker-durations em { box-shadow:none }
