/* BrewDay Brand.swift: brewViolet in light mode, brewLavender in dark mode. */
.brewday-landing { --x-primary:#633bbd; --x-primary-rgb:99,59,189; --bs-primary:#633bbd; --bs-primary-rgb:99,59,189; }
[data-bs-theme="dark"] .brewday-landing { --x-primary:#b899f7; --x-primary-rgb:184,153,247; --bs-primary:#b899f7; --bs-primary-rgb:184,153,247; }
.brewday-landing section { scroll-margin-top:88px; }
.brewday-landing h1,.brewday-landing h2,.brewday-landing h3 { letter-spacing:-.045em; text-wrap:balance; overflow-wrap:break-word; }
.brewday-landing h1 { font-size:clamp(2.6rem,4.35vw,4.1rem); line-height:1.08; font-weight:750; margin:32px 0 24px; }
.brewday-landing h2 { font-size:clamp(1.9rem,3vw,2.8rem); line-height:1.15; font-weight:700; }
.brewday-landing h3 { font-size:1.25rem; line-height:1.35; font-weight:650; }
.brewday-landing p { line-height:1.65; }
.brewday-lead { font-size:1.125rem; max-width:48ch; }
.brewday-eyebrow { font-size:.7rem; font-weight:650; letter-spacing:.11em; text-transform:uppercase; margin-bottom:16px; }
.brewday-landing .btn { display:inline-flex; align-items:center; justify-content:center; gap:16px; border-radius:10px; padding:16px 24px; font-weight:600; min-height:52px; }
.brewday-landing .btn-primary { --x-btn-bg:var(--x-primary); --x-btn-border-color:var(--x-primary); --x-btn-hover-bg:var(--x-primary); --x-btn-hover-border-color:var(--x-primary); --x-btn-active-bg:var(--x-primary); --x-btn-active-border-color:var(--x-primary); --x-btn-color:var(--x-body-bg); --x-btn-hover-color:var(--x-body-bg); --x-btn-active-color:var(--x-body-bg); }
.brewday-landing a:focus-visible,.brewday-landing button:focus-visible,.brewday-landing textarea:focus-visible,.brewday-landing summary:focus-visible,.brewday-landing [role=tabpanel]:focus-visible { outline:3px solid var(--x-primary); outline-offset:4px; }
.brewday-hero { padding-top:40px; }
.brewday-hero-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:0; align-items:center; }
.brewday-brandline { display:flex; align-items:center; gap:12px; font-size:.75rem; }
.brewday-brandline strong { font-size:1rem; }
.brewday-brandline img { width:40px; height:40px; border-radius:10px; }
.brewday-brandline>span { border-left:1px solid var(--x-border-color,var(--bs-border-color)); padding-left:12px; }
.brewday-hero-copy { padding-block:24px; }
.brewday-hero-copy .brewday-lead { max-width:42ch; margin-bottom:32px; }
.brewday-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.brewday-secondary-link,.brewday-text-link { font-size:.85rem; text-decoration:none; font-weight:600; color:var(--x-primary); }
.brewday-availability { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:24px; font-size:.7rem; }
.brewday-availability .badge { font-size:.65rem; }
.brewday-device { width:100%; max-width:320px; margin-inline:auto; border-width:5px!important; border-radius:36px; overflow:hidden; box-shadow:0 18px 32px rgba(var(--x-dark-rgb,var(--bs-dark-rgb)),.08); }
.brewday-device img { width:100%; height:auto; display:block; }
.brewday-principles-grid { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px 24px; font-size:.75rem; padding:28px 0; margin-top:40px; }
.brewday-principles-grid>span { display:flex; align-items:center; gap:12px; }
.brewday-principles-grid i { font-size:1rem; }
.brewday-section-head { max-width:780px; }
.brewday-privacy-strip { padding:32px 0; }
.brewday-privacy-strip .container-xl { display:flex; align-items:center; gap:24px; }
.brewday-privacy-strip i { font-size:1.5rem; flex-shrink:0; }
.brewday-privacy-strip p { margin:0; font-size:.8rem; flex:1; }
.brewday-privacy-strip a { flex-shrink:0; }
.brewday-landing [hidden] { display:none!important; }
@media(max-width:991px) {
 .brewday-hero-grid { gap:32px; }
 .brewday-privacy-strip .container-xl { align-items:flex-start; }
}
@media(max-width:767px) {
 .brewday-hero { padding-top:24px; }
 .brewday-hero-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
 .brewday-hero-copy { padding:0; }
 .brewday-landing h1 { font-size:clamp(2.3rem,8.5vw,3.5rem); margin:28px 0 20px; }
 .brewday-hero-copy .brewday-lead { font-size:1rem; }
 .brewday-hero-actions { gap:16px; }
 .brewday-hero-actions .btn { font-size:.8rem; padding:16px 20px; }
 .brewday-availability { font-size:.65rem; gap:8px; }
 .brewday-brandline { font-size:.65rem; gap:8px; }
 .brewday-brandline>span { padding-left:8px; }
 .brewday-device { max-width:294px; border-radius:32px; }
 .brewday-principles-grid { display:grid; grid-template-columns:1fr 1fr; margin-top:32px; gap:20px 12px; font-size:.65rem; }
 .brewday-principles-grid>span { gap:8px; }
 .brewday-privacy-strip .container-xl { flex-wrap:wrap; gap:16px; }
 .brewday-privacy-strip p { flex-basis:calc(100% - 48px); }
 .brewday-privacy-strip a { margin-left:40px; }
}
@media(prefers-reduced-motion:reduce) { .brewday-landing * { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }






/* Approved birthday scene: real app screen, wishes and outward-fading confetti. */
.brewday-hero>.container-xl { container-type:inline-size; }
.brewday-hero-grid { gap:0; }
.brewday-hero-copy { position:relative; z-index:5; padding:32px 0; }
.brewday-hero h1 { font-size:clamp(48px,6.4cqw,88px); line-height:1; font-weight:800; letter-spacing:-.065em; margin:28px 0 24px; text-wrap:initial; }
.brewday-hero-title { display:block; max-width:10ch; }
.brewday-hero h1>.text-primary { display:block; font-size:.84em; line-height:1.1; margin-top:8px; }
.brewday-hero-copy .brewday-lead { max-width:31ch; font-size:clamp(16px,1.75cqw,21px); line-height:1.5; margin-bottom:32px; }
.brewday-availability { margin-top:24px; }
.brewday-motion-stage { position:relative; min-width:0; width:100%; height:calc(min(320px,27cqw) * 2.173913 + 64px); isolation:isolate; overflow:clip; }
.brewday-motion-stage .bd-party-layer { position:absolute; inset:0; pointer-events:none; z-index:1; }
.brewday-motion-stage .bd-confetti { position:absolute; left:0; top:0; width:6px; height:11px; background:var(--piece-color); border-radius:1px; opacity:0; }
.brewday-motion-stage .bd-confetti.is-dot { width:6px; height:6px; border-radius:50%; }
.brewday-motion-stage .bd-spark { position:absolute; left:0; top:0; color:var(--piece-color); font:22px/1 Georgia,serif; text-shadow:0 0 10px color-mix(in srgb,var(--piece-color),transparent 55%); opacity:0; }
.brewday-motion-stage .bd-flare { position:absolute; left:0; top:0; width:250px; height:360px; border-radius:50%; background:radial-gradient(ellipse at 30% 25%,rgba(186,125,255,.65),rgba(119,76,214,.2) 44%,rgba(239,179,69,.14) 66%,transparent 75%); filter:blur(18px); opacity:0; }
.brewday-motion-stage .bd-magic-ring { position:absolute; left:0; top:0; width:135px; height:135px; border:1px solid rgba(169,107,245,.35); border-radius:50%; opacity:0; }
.brewday-motion-stage .bd-phone { position:absolute; z-index:4; top:26px; left:64%; width:50%; max-width:320px; transform:translateX(-50%); }
.brewday-motion-stage .bd-phone:before { content:""; position:absolute; z-index:-1; inset:-40px 0; background:radial-gradient(ellipse at 50% 53%,rgba(149,77,235,.72),rgba(177,117,251,.28) 48%,rgba(182,145,246,0) 71%); filter:blur(24px); opacity:.7; transform:scaleX(1.25); }
.brewday-motion-stage .brewday-device { max-width:none; border-radius:32px; border-width:4px!important; box-shadow:0 0 0 1px rgba(154,119,193,.6),0 12px 24px rgba(33,17,51,.12); }
.brewday-motion-stage .bd-greeting { z-index:2; position:absolute; top:0; left:0; width:174px; display:flex; gap:8px; align-items:flex-start; padding:12px; border-radius:14px; box-shadow:0 8px 22px rgba(43,28,67,.07); opacity:0; pointer-events:none; }
.brewday-motion-stage .bd-person { flex:0 0 32px; width:32px; height:32px; border-radius:50%; background-image:url('/assets/brewday/img/hero-people.webp'); background-size:300% 200%; background-repeat:no-repeat; }
.brewday-motion-stage .bd-person-mark { background-position:50% 0; }
.brewday-motion-stage .bd-person-sophie { background-position:100% 0; }
.brewday-motion-stage .bd-person-daniel { background-position:0 100%; }
.brewday-motion-stage .bd-greeting strong { display:block; font-size:11px; font-weight:600; margin-bottom:4px; }
.brewday-motion-stage .bd-greeting p { font-size:12px; line-height:1.4; margin:0; }
.brewday-motion-stage .bd-ingredient { position:absolute; z-index:2; left:0; top:0; width:52px; height:52px; object-fit:contain; opacity:0; filter:drop-shadow(0 3px 7px rgba(129,69,186,.14)); pointer-events:none; }
.brewday-motion-controls { display:flex; justify-content:flex-end; margin-top:0; }
.brewday-motion-toggle { background:transparent; font:inherit; font-size:11px; padding:8px 12px; border-radius:8px; min-height:36px; }
.brewday-hero .brewday-principles-grid { margin-top:24px; }
@media(max-width:767px) {
 .brewday-hero-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:0; }
 .brewday-hero-copy { padding:16px 0 12px; }
 .brewday-hero h1 { font-size:clamp(40px,11cqw,64px); margin:24px 0; }
 .brewday-hero-copy .brewday-lead { font-size:16px; max-width:36ch; margin-bottom:24px; }
 .brewday-motion-stage { height:calc(min(240px,72cqw) * 2.173913 + 183px); }
 .brewday-motion-stage .bd-phone { top:145px; left:50%; width:72%; max-width:240px; }
 .brewday-motion-toggle { min-height:44px; }
}

/* Approved widget showcase: all three native sizes remain visible. */
#brewday-features>.container-xl { container-type:inline-size; }
.brewday-widget-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:48px; align-items:end; }
.brewday-widget-heading h2 { font-size:clamp(36px,5.6cqw,64px); line-height:1.02; letter-spacing:-.055em; font-weight:750; text-wrap:initial; margin-bottom:0; }
.brewday-widget-heading h2 br+span { color:var(--x-primary); }
.brewday-widget-heading>p { font-size:1rem; line-height:1.6; max-width:34ch; margin:0 0 4px; }
.brewday-widget-showroom { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:center; max-width:1120px; margin:48px auto 0; padding:0 12px 24px; position:relative; isolation:isolate; }
.brewday-widget-showroom:before { content:""; position:absolute; inset:5% 0 10%; z-index:-1; background:radial-gradient(ellipse at 58% 55%,rgba(var(--x-primary-rgb),.09),transparent 69%); filter:blur(24px); pointer-events:none; }
.brewday-widget-stack { display:flex; flex-direction:column; gap:32px; min-width:0; }
.brewday-widget-showroom figure { min-width:0; margin:0; }
.brewday-widget-showroom img { display:block; width:100%; height:auto; filter:drop-shadow(0 12px 16px rgba(var(--x-dark-rgb,var(--bs-dark-rgb)),.12)); }
.brewday-widget-small { width:51%; align-self:flex-start; }
.brewday-widget-medium,.brewday-widget-large { width:100%; }
.brewday-widget-large { padding-top:8px; }
.brewday-widget-showroom figcaption { display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; padding:18px 2px 0; line-height:1.4; }
.brewday-widget-showroom figcaption strong { font-size:.875rem; font-weight:600; }
.brewday-widget-showroom figcaption span { font-size:.7rem; }
.brewday-widget-small figcaption { display:block; }
.brewday-widget-small figcaption span { display:block; margin-top:4px; }
.brewday-widget-footnote { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:.7rem; line-height:1.5; margin:24px 0 0; padding-top:24px; }
.brewday-widget-footnote>span { display:flex; align-items:center; gap:8px; }
.brewday-widget-footnote i { font-size:1rem; }
@media(max-width:767px) {
 .brewday-widget-heading { grid-template-columns:minmax(0,1fr); gap:20px; }
 .brewday-widget-heading h2 { font-size:clamp(36px,8.3cqw,54px); }
 .brewday-widget-heading>p { font-size:1rem; max-width:40ch; }
 .brewday-widget-showroom { grid-template-columns:minmax(0,1fr); gap:36px; margin-top:32px; padding:0 0 12px; }
 .brewday-widget-stack { display:contents; }
 .brewday-widget-medium { order:0; }
 .brewday-widget-large { order:1; padding-top:0; }
 .brewday-widget-small { order:2; width:min(70%,240px); justify-self:center; }
 .brewday-widget-small figcaption { display:flex; }
 .brewday-widget-small figcaption span { margin-top:0; }
}

/* Approved people section: a native contact card with its full useful content. */
#brewday-people>.container-xl { container-type:inline-size; }
#brewday-people .brewday-eyebrow { margin-bottom:32px; }
.brewday-person-story { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:center; padding:8px 0 32px; }
.brewday-person-media { min-width:0; position:relative; isolation:isolate; padding:20px 0; }
.brewday-person-media:before { content:""; position:absolute; inset:5% 0; z-index:-1; background:radial-gradient(ellipse at 50% 44%,rgba(var(--x-primary-rgb),.17),transparent 70%); filter:blur(28px); pointer-events:none; }
.brewday-person-figure { margin:0 auto; width:100%; max-width:380px; }
.brewday-person-sheet { width:100%; aspect-ratio:460/640; overflow:hidden; border-radius:25px; box-shadow:0 16px 32px rgba(var(--x-dark-rgb,var(--bs-dark-rgb)),.13),0 0 0 1px rgba(var(--x-primary-rgb),.2); }
.brewday-person-sheet img { display:block; width:100%; height:auto; transform:translateY(-11%); }
.brewday-person-figure figcaption { font-size:.7rem; line-height:1.5; text-align:center; padding-top:20px; }
.brewday-person-copy h2 { font-size:clamp(36px,5.3cqw,64px); line-height:1.04; letter-spacing:-.055em; font-weight:750; margin:0 0 24px; }
.brewday-person-copy h2 span { display:block; }
.brewday-person-copy .brewday-lead { font-size:1.0625rem; line-height:1.65; margin:0 0 32px; max-width:35ch; }
.brewday-person-points { display:grid; gap:24px; }
.brewday-person-point { display:grid; grid-template-columns:22px minmax(0,1fr); gap:14px; align-items:start; }
.brewday-person-point>i { font-size:20px; line-height:1; margin-top:2px; }
.brewday-person-point h3 { font-size:.9375rem; line-height:1.4; font-weight:600; margin:0 0 7px; }
.brewday-person-point p { font-size:.8125rem; line-height:1.65; margin:0; max-width:35ch; }
.brewday-person-footer { display:flex; gap:10px; align-items:center; padding-top:24px; font-size:.7rem; line-height:1.5; }
.brewday-person-footer i { font-size:15px; flex-shrink:0; }
@media(max-width:767px) {
 .brewday-person-story { display:flex; flex-direction:column; gap:28px; padding-top:0; }
 .brewday-person-copy { order:0; width:100%; }
 .brewday-person-media { order:1; width:100%; padding:0 4px 8px; }
 .brewday-person-copy h2 { font-size:clamp(36px,8.5cqw,54px); max-width:20ch; margin-bottom:20px; text-wrap:initial; }
 .brewday-person-copy .brewday-lead { font-size:1rem; max-width:38ch; margin-bottom:24px; }
 .brewday-person-points { gap:20px; }
 .brewday-person-sheet { border-radius:21px; }
 .brewday-person-footer { padding-top:22px; }
}

/* Approved birthday cards: finished output first, with a native creator preview. */
#brewday-workshop>.container-xl { container-type:inline-size; }
#brewday-workshop .brewday-eyebrow { margin-bottom:32px; }
.brewday-cards-story { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:48px; align-items:center; padding:8px 0 32px; }
.brewday-cards-copy h2 { font-size:clamp(36px,5.5cqw,64px); line-height:1.04; letter-spacing:-.055em; font-weight:750; margin:0 0 24px; }
.brewday-cards-copy h2 span { display:block; }
.brewday-cards-copy .brewday-lead { font-size:1.0625rem; line-height:1.65; margin:0 0 28px; max-width:32ch; }
.brewday-cards-wishes { display:flex; gap:26px; align-items:start; margin:0 0 18px; padding:0; list-style:none; }
.brewday-cards-wishes li { display:flex; flex-direction:column; align-items:center; gap:9px; font-size:.7rem; }
.brewday-cards-wishes img { display:block; width:64px; height:64px; object-fit:contain; filter:drop-shadow(0 5px 9px rgba(var(--x-primary-rgb),.15)); }
.brewday-cards-note { font-size:.75rem; line-height:1.6; max-width:34ch; margin:0 0 30px; }
.brewday-cards-switch { display:flex; gap:4px; flex-wrap:wrap; max-width:380px; }
.brewday-cards-switch button { font:inherit; font-size:.75rem; font-weight:500; color:var(--x-body-secondary-color,var(--bs-secondary-color)); background:none; border:0; border-bottom:2px solid transparent; padding:14px 12px; min-height:46px; display:flex; align-items:center; gap:8px; }
.brewday-cards-switch button[aria-pressed=true] { color:var(--x-primary); border-bottom-color:var(--x-primary); }
.brewday-cards-switch i { font-size:15px; }
.brewday-cards-visual { position:relative; isolation:isolate; min-width:0; padding:12px 0; }
.brewday-cards-visual:before { content:""; position:absolute; inset:5% 0; z-index:-1; background:radial-gradient(ellipse at 50% 48%,rgba(var(--x-primary-rgb),.2),transparent 73%); filter:blur(26px); pointer-events:none; }
.brewday-cards-figure { margin:0 auto; width:100%; max-width:380px; }
.brewday-cards-frame { aspect-ratio:540/823; position:relative; display:grid; place-items:center; }
.brewday-cards-frame img { display:block; width:100%; height:100%; object-fit:contain; position:absolute; inset:0; filter:drop-shadow(0 16px 22px rgba(var(--x-dark-rgb,var(--bs-dark-rgb)),.16)); border-radius:18px; }
.brewday-cards-frame .brewday-cards-creator { width:70.11%; margin-inline:auto; }
.brewday-cards-figure figcaption { font-size:.7rem; line-height:1.5; text-align:center; padding-top:20px; min-height:37px; }
.brewday-cards-footer { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding-top:24px; font-size:.7rem; line-height:1.5; }
.brewday-cards-footer span { display:flex; gap:9px; align-items:center; }
.brewday-cards-footer i { font-size:15px; }
@media(max-width:767px) {
 .brewday-cards-story { grid-template-columns:minmax(0,1fr); gap:24px; padding-top:0; }
 .brewday-cards-copy h2 { font-size:clamp(36px,8.5cqw,54px); margin-bottom:20px; }
 .brewday-cards-copy .brewday-lead { font-size:1rem; max-width:36ch; margin-bottom:24px; }
 .brewday-cards-wishes { gap:24px; }
 .brewday-cards-wishes img { width:56px; height:56px; }
 .brewday-cards-note { margin-bottom:20px; }
 .brewday-cards-switch { max-width:none; }
 .brewday-cards-switch button { padding-inline:10px; }
 .brewday-cards-visual { padding:8px 0; }
 .brewday-cards-frame img { border-radius:14px; }
}

/* Approved saved birthday: native bottle artwork opens its remembered people. */
#brewday-memories>.container-xl { container-type:inline-size; }
#brewday-memories .brewday-eyebrow { margin-bottom:32px; }
.brewday-memory-story { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:center; padding:8px 0 32px; }
.brewday-memory-visual { min-width:0; position:relative; isolation:isolate; }
.brewday-memory-visual:before { content:""; position:absolute; inset:5% 0 10%; z-index:-1; background:radial-gradient(ellipse at 50% 50%,rgba(var(--x-primary-rgb),.14),transparent 70%); filter:blur(25px); pointer-events:none; }
.brewday-memory-figure { margin:0 auto; width:100%; max-width:390px; }
.brewday-memory-stage { aspect-ratio:1; display:grid; place-items:center; }
.brewday-memory-bottle { display:block; width:100%; height:auto; }
.brewday-memory-people { width:100%; aspect-ratio:460/470; border-radius:24px; overflow:hidden; box-shadow:0 12px 26px rgba(var(--x-dark-rgb,var(--bs-dark-rgb)),.12); }
.brewday-memory-people img { display:block; width:100%; height:auto; transform:translateY(-6.5%); }
.brewday-memory-year { display:flex; align-items:baseline; justify-content:center; gap:12px; font-size:.75rem; margin:12px 0 16px; }
.brewday-memory-year strong { font-family:Georgia,serif; font-size:30px; font-weight:500; letter-spacing:-1px; font-variant-numeric:tabular-nums; }
.brewday-memory-people-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; min-height:42px; font-size:.75rem; }
.brewday-memory-faces { display:flex; padding-left:7px; }
.brewday-memory-face { display:block; width:34px; height:34px; margin-left:-7px; border:2px solid var(--x-body-bg,var(--bs-body-bg)); border-radius:50%; background-image:url('/assets/brewday/img/hero-people.webp'); background-size:300% 200%; background-repeat:no-repeat; }
.brewday-memory-face-anna { background-position:0 0; }
.brewday-memory-face-mark { background-position:50% 0; }
.brewday-memory-face-sophie { background-position:100% 0; }
.brewday-memory-face-daniel { background-position:0 100%; }
.brewday-memory-action-row { display:flex; justify-content:center; margin:18px 0 0; }
.brewday-memory-action { background:none; color:var(--x-primary); border-radius:10px; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding:12px 16px; font:inherit; font-size:.75rem; font-weight:600; }
.brewday-memory-action i { font-size:15px; }
.brewday-memory-copy h2 { font-size:clamp(36px,5.3cqw,64px); line-height:1.04; letter-spacing:-.055em; font-weight:750; margin:0 0 24px; }
.brewday-memory-copy h2 span { display:block; }
.brewday-memory-copy .brewday-lead { font-size:1.0625rem; line-height:1.65; margin:0 0 28px; max-width:34ch; }
.brewday-memory-note { font-size:.8125rem; line-height:1.7; max-width:36ch; margin:0; padding-top:24px; }
.brewday-memory-footer { display:flex; align-items:center; gap:10px; padding-top:24px; font-size:.7rem; line-height:1.5; }
.brewday-memory-footer i { font-size:15px; flex-shrink:0; }
@media(max-width:767px) {
 .brewday-memory-story { display:flex; flex-direction:column; gap:28px; padding-top:0; }
 .brewday-memory-copy { order:0; width:100%; }
 .brewday-memory-visual { order:1; width:100%; }
 .brewday-memory-copy h2 { font-size:clamp(36px,8.5cqw,54px); margin-bottom:20px; }
 .brewday-memory-copy .brewday-lead { font-size:1rem; max-width:38ch; margin-bottom:24px; }
 .brewday-memory-note { padding-top:20px; }
 .brewday-memory-people { border-radius:20px; }
 .brewday-memory-footer { padding-top:22px; }
}

/* Approved Free and Plus comparison. The quota counts people, not birthday events. */
#brewday-access>.container-xl { container-type:inline-size; }
.brewday-pricing-heading h2 { font-size:clamp(36px,4.8cqw,60px); line-height:1.08; font-weight:750; letter-spacing:-.05em; margin:0; text-wrap:initial; }
.brewday-pricing-heading h2 span { display:block; }
.brewday-pricing-heading>p:last-child { font-size:1rem; max-width:58ch; margin:20px 0 0; }
.brewday-access-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; }
.brewday-access-card { position:relative; min-width:0; border-radius:24px; padding:32px; display:grid; grid-template-rows:subgrid; grid-row:span 3; gap:24px; }
.brewday-access-plus { border-color:var(--x-primary)!important; box-shadow:0 10px 32px rgba(var(--x-primary-rgb),.09); }
.brewday-plan-heading { position:relative; }
.brewday-plan-label { display:inline-flex; align-items:center; gap:6px; padding:6px 0; margin:0 0 18px; font-size:.75rem; font-weight:400; line-height:1.4; }
.brewday-plan-label.badge { background-color:rgba(var(--x-primary-rgb),.09)!important; color:var(--x-primary)!important; padding:6px 10px; border-radius:100px; max-width:100%; white-space:normal; text-align:left; }
.brewday-plan-label i { flex-shrink:0; font-size:14px; }
.brewday-access-card h3 { font-size:1.3125rem; font-weight:600; letter-spacing:-.025em; margin:0 0 6px; padding-right:64px; }
.brewday-plan-heading p { font-size:.875rem; line-height:1.5; margin:0; padding-right:38px; }
.brewday-price-art { position:absolute; top:24px; right:0; width:58px; height:58px; object-fit:contain; pointer-events:none; }
.brewday-price { font-size:52px; line-height:1.1; font-weight:650; letter-spacing:-.055em; margin:0 0 6px; }
.brewday-price>span { font-size:30px; font-weight:500; vertical-align:top; line-height:1.5; margin-right:3px; }
.brewday-price-term { font-size:.875rem; line-height:1.5; margin:0; }
.brewday-plan-features { list-style:none; margin:0; padding:24px 0 0; display:flex; flex-direction:column; gap:16px; }
.brewday-plan-features li { display:grid; grid-template-columns:18px minmax(0,1fr); gap:11px; font-size:.9375rem; line-height:1.5; }
.brewday-plan-features i { font-size:18px; line-height:1.3; }
.brewday-price-note { font-size:.75rem; line-height:1.65; margin:20px 0 28px; max-width:98ch; }
.brewday-pricing-memory { display:flex; align-items:center; gap:11px; padding-top:22px; font-size:.875rem; line-height:1.6; }
.brewday-pricing-memory i { font-size:18px; flex-shrink:0; }
.brewday-pricing-status { font-size:.75rem; line-height:1.6; margin:20px 0 0; }
@media(max-width:767px) {
 .brewday-pricing-heading h2 { font-size:clamp(34px,8.5cqw,50px); }
 .brewday-access-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
 .brewday-access-card { grid-template-rows:auto auto 1fr; grid-row:auto; padding:24px; gap:24px; }
 .brewday-plan-heading p { padding-right:24px; }
 .brewday-pricing-memory { align-items:flex-start; }
}

/* Approved FAQ: native details keep answers accessible without JavaScript. */
#brewday-faq>.container-xl { container-type:inline-size; }
.brewday-faq-grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:56px; align-items:start; }
.brewday-faq-heading h2 { font-size:clamp(36px,4.8cqw,60px); font-weight:700; line-height:1.08; letter-spacing:-.045em; margin:0 0 22px; text-wrap:initial; }
.brewday-faq-heading h2 span { display:block; }
.brewday-faq-lead { font-size:.9375rem; line-height:1.7; max-width:29ch; margin:0; }
.brewday-faq-trust { margin-top:36px; padding-top:22px; display:flex; align-items:flex-start; gap:11px; font-size:.8125rem; line-height:1.65; max-width:265px; }
.brewday-faq-trust>i { flex-shrink:0; font-size:18px; margin-top:2px; line-height:1; }
.brewday-faq { min-width:0; }
.brewday-faq details:first-child { border-top:1px solid var(--x-border-color,var(--bs-border-color)); }
.brewday-faq summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:22px 0; list-style:none; font-size:.9375rem; font-weight:500; line-height:1.5; min-height:64px; cursor:pointer; }
.brewday-faq summary::-webkit-details-marker { display:none; }
.brewday-faq summary>span { flex:1; min-width:0; }
.brewday-faq summary>i { flex-shrink:0; font-size:18px; line-height:1; color:var(--x-body-secondary-color,var(--bs-secondary-color)); }
.brewday-faq summary .brewday-faq-minus { display:none; }
.brewday-faq details[open] summary { color:var(--x-primary)!important; padding-bottom:12px; }
.brewday-faq details[open] summary .brewday-faq-plus { display:none; }
.brewday-faq details[open] summary .brewday-faq-minus { display:block; color:var(--x-primary); }
.brewday-faq details p { font-size:.875rem; line-height:1.75; margin:0; padding:0 28px 22px 0; }
@media(max-width:767px) {
 .brewday-faq-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
 .brewday-faq-heading h2 { font-size:clamp(34px,8.5cqw,50px); }
 .brewday-faq-lead { max-width:35ch; }
 .brewday-faq-trust { max-width:none; margin-top:24px; padding-top:18px; }
 .brewday-faq summary { gap:16px; }
 .brewday-faq details p { padding-right:24px; }
}
