/* Ostern – reference-led warm Maybels spring garden. */
body.theme-easter {
  --easter-wood: #2b1e12;
  --easter-brown: #5a3a22;
  --easter-earth: #8a6647;
  --easter-rose: #ef6c9a;
  --easter-pink: #f7d1e3;
  --easter-apricot: #f6c99f;
  --easter-cream: #fff8ed;
  --easter-paper: #fff2df;
  --easter-green: #8fbf7a;
  --easter-gold: #d4a85a;
  --easter-light-gold: #ffd58a;
  --easter-text: #402719;
  --easter-muted: #715746;
  --easter-border: rgba(163, 111, 62, .55);
  --easter-garden: url('../themes/easter/easter-garden.webp');
  --easter-corner: url('../themes/easter/easter-corner.webp');
  color: var(--easter-text);
  background: #f7ead7;
}
body.theme-easter::before {
  z-index: -1;
  background: radial-gradient(circle at 85% 9%, rgba(255, 218, 141, .56), transparent 28%), radial-gradient(circle at 9% 70%, rgba(239, 108, 154, .2), transparent 33%), linear-gradient(145deg, #f7ead7, #fff9ee 52%, #e9d4b6);
}
body.theme-easter main {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 58vh;
  color: var(--easter-text);
  background: linear-gradient(rgba(255, 249, 238, .77), rgba(247, 234, 215, .82)), var(--easter-garden) center top / cover repeat-y;
}
body.theme-easter main::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  background: var(--easter-garden) center top / cover repeat-y;
  opacity: .34;
  filter: saturate(1.04) brightness(1.04);
}
body.theme-easter main::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background-image: radial-gradient(circle, rgba(255, 211, 111, .75) 0 2px, transparent 4px), radial-gradient(circle, rgba(255, 255, 255, .72) 0 1px, transparent 3px);
  background-position: 8px 13px, 63px 91px;
  background-size: 139px 151px, 193px 179px;
  opacity: .26;
}

body.theme-easter .preview { position: relative; z-index: 9; color: #ffe9bf; border-bottom: 1px solid rgba(255, 213, 138, .34); background: #25170e; }
body.theme-easter .site-header { position: relative; isolation: isolate; overflow: hidden; height: 102px; border-bottom-color: rgba(239, 196, 121, .68); background: linear-gradient(90deg, rgba(35, 21, 12, .98), rgba(85, 56, 31, .91)), var(--easter-garden) center 68% / cover; box-shadow: 0 16px 38px rgba(56, 35, 18, .28), 0 1px 0 rgba(255, 226, 167, .34); }
body.theme-easter .site-header::after { content: ""; position: absolute; z-index: -1; inset: 0; pointer-events: none; background: radial-gradient(circle at 83% 22%, rgba(255, 221, 155, .22), transparent 25%), radial-gradient(circle at 9% 70%, rgba(238, 112, 155, .18), transparent 27%); }
body.theme-easter .site-header nav, body.theme-easter .site-header nav a { color: #fff8eb; }
body.theme-easter .site-header nav a:hover { color: var(--easter-light-gold); }
body.theme-easter .site-header nav a:not(.nav-cta)::after { background: var(--easter-rose); }
body.theme-easter .site-header .nav-cta { color: #fff; border-color: rgba(255, 221, 159, .85); background: linear-gradient(135deg, #d94d82, #f081ab 62%, #cb4f78); box-shadow: inset 0 0 18px rgba(255, 242, 209, .3), 0 0 21px rgba(239, 108, 154, .3); }
body.theme-easter .site-header .brand img.seasonal-logo-easter { width: 302px; height: 94px; object-fit: contain; object-position: left center; border-radius: 4px; filter: drop-shadow(0 0 15px rgba(255, 214, 137, .22)); }

body.theme-easter h1, body.theme-easter h2 { color: #52311d; text-shadow: 0 1px 0 rgba(255,255,255,.76), 0 0 24px rgba(255, 191, 95, .25); }
body.theme-easter h3 { color: #634129; }
body.theme-easter p, body.theme-easter li { color: var(--easter-muted); }
body.theme-easter .eyebrow { color: #b64d73; }
body.theme-easter .lead.dark { color: #563b2a; }
body.theme-easter .price, body.theme-easter .stars { color: #9a5d20; }

body.theme-easter .page-intro,
body.theme-easter .inquiry-hero,
body.theme-easter .reviews-hero { position: relative; isolation: isolate; overflow: hidden; max-width: none; margin: 0; padding-inline: max(28px, calc((100vw - 1040px) / 2)); color: var(--easter-text); border-bottom: 1px solid rgba(186, 129, 70, .4); background: linear-gradient(110deg, rgba(255, 247, 231, .88), rgba(255, 240, 216, .72)), var(--easter-garden) center 48% / cover; box-shadow: inset 0 -42px 90px rgba(86, 55, 27, .1); }
body.theme-easter .page-intro { padding-block: clamp(88px, 10vw, 140px) clamp(76px, 8vw, 112px); }
body.theme-easter .page-intro.compact { padding-block: clamp(78px, 9vw, 120px) clamp(66px, 7vw, 96px); }
body.theme-easter .inquiry-hero { padding-block: clamp(92px, 10vw, 142px); }
body.theme-easter .reviews-hero { padding-block: clamp(82px, 9vw, 126px) clamp(62px, 7vw, 94px); }
body.theme-easter .reviews-hero p:last-child { color: #654a38; }
body.theme-easter .page-intro::after, body.theme-easter .inquiry-hero::after, body.theme-easter .reviews-hero::after { content: ""; position: absolute; z-index: -1; width: min(610px, 45vw); aspect-ratio: 3 / 2; right: -2%; bottom: -9%; pointer-events: none; background: var(--easter-corner) right bottom / contain no-repeat; opacity: .86; }
body.theme-easter .page-intro > *, body.theme-easter .inquiry-hero > *, body.theme-easter .reviews-hero > * { position: relative; z-index: 1; }

body.theme-easter .product-showcase,
body.theme-easter .product-page,
body.theme-easter .gallery-page-shell,
body.theme-easter .gallery-page,
body.theme-easter .inquiry-main,
body.theme-easter .reviews-submit,
body.theme-easter .laser-section,
body.theme-easter .laser-occasions,
body.theme-easter .wish-product,
body.theme-easter .faq-page,
body.theme-easter .legal-page { position: relative; isolation: isolate; overflow: hidden; color: var(--easter-text); background: radial-gradient(circle at 8% 15%, rgba(247, 209, 227, .65), transparent 28%), radial-gradient(circle at 90% 82%, rgba(183, 218, 155, .43), transparent 29%), linear-gradient(145deg, #fff9ef, #f8ead6 55%, #fff5e7); }
body.theme-easter .product-showcase, body.theme-easter .product-page { max-width: none; margin: 0; padding: clamp(66px, 7vw, 104px) max(28px, calc((100vw - var(--max)) / 2)); }
body.theme-easter .gallery-page-shell { padding: clamp(62px, 7vw, 100px) max(28px, calc((100vw - var(--max)) / 2)); }
body.theme-easter .gallery-page-shell .gallery-page { padding: 0; background: transparent; overflow: visible; }
body.theme-easter .inquiry-main, body.theme-easter .reviews-submit { padding-block: clamp(76px, 8vw, 116px); }
body.theme-easter .faq-page { max-width: none; padding: 38px max(28px, calc((100vw - 900px) / 2)) 112px; }
body.theme-easter .legal-page { max-width: none; padding: clamp(78px, 8vw, 118px) max(28px, calc((100vw - 900px) / 2)); }
body.theme-easter .product-showcase::before, body.theme-easter .gallery-page-shell::before, body.theme-easter .inquiry-main::before, body.theme-easter .reviews-submit::before, body.theme-easter .laser-section::before, body.theme-easter .laser-occasions::before, body.theme-easter .wish-product::before, body.theme-easter .faq-page::before, body.theme-easter .legal-page::before { content: ""; position: absolute; z-index: -2; inset: 0; pointer-events: none; background: var(--easter-garden) center / cover; opacity: .22; }
body.theme-easter .product-showcase::after, body.theme-easter .gallery-page-shell::after, body.theme-easter .laser-occasions::after, body.theme-easter .legal-page::after { content: ""; position: absolute; z-index: -1; width: min(520px, 39vw); aspect-ratio: 3 / 2; right: -4%; bottom: -7%; pointer-events: none; background: var(--easter-corner) right bottom / contain no-repeat; opacity: .55; }
body.theme-easter .product-showcase > :not(.inspiration-lightbox), body.theme-easter .gallery-page-shell > :not(.inspiration-lightbox), body.theme-easter .inquiry-main > *, body.theme-easter .reviews-submit > *, body.theme-easter .laser-section > *, body.theme-easter .laser-occasions > *, body.theme-easter .wish-product > *, body.theme-easter .faq-page > *, body.theme-easter .legal-page > * { position: relative; z-index: 1; }

body.theme-easter .cards article,
body.theme-easter .product-grid article,
body.theme-easter .gallery-card,
body.theme-easter .review-card,
body.theme-easter .inquiry-choices,
body.theme-easter .inquiry-panel,
body.theme-easter .inquiry-quick-card,
body.theme-easter .laser-grid article,
body.theme-easter .wish-product-inner,
body.theme-easter .empty-state,
body.theme-easter .product-page > div:last-child { color: var(--easter-text); border: 1px solid var(--easter-border); background: radial-gradient(circle at 88% 8%, rgba(255, 215, 146, .3), transparent 29%), linear-gradient(145deg, rgba(255, 251, 242, .98), rgba(255, 231, 211, .95)); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 20px 48px rgba(98, 64, 28, .16), 0 0 22px rgba(239, 108, 154, .1); }
body.theme-easter .product-grid article:hover, body.theme-easter .gallery-card:hover, body.theme-easter .review-card:hover { border-color: rgba(212, 168, 90, .92); box-shadow: 0 24px 58px rgba(98, 64, 28, .2), 0 0 28px rgba(239, 108, 154, .18); }
body.theme-easter .product-card-link, body.theme-easter .product-card-body { background: transparent; }
body.theme-easter .product-card-category { color: #9b6a2e; }
body.theme-easter .product-card-title { color: #4a2d1d; }
body.theme-easter .product-card-description { color: #705443; }
body.theme-easter .product-card-price { color: #9d5f20; }
body.theme-easter .gallery-card { border-radius: 16px; }
body.theme-easter .gallery-card figcaption { color: #fff9f1; background: linear-gradient(transparent, rgba(74, 40, 22, .92)); }
body.theme-easter .review-card blockquote, body.theme-easter .review-card strong, body.theme-easter .laser-grid article p, body.theme-easter .empty-state p { color: var(--easter-text); }
body.theme-easter .review-grid .empty-state h2, body.theme-easter .review-grid .empty-state p { color: var(--easter-text); }

body.theme-easter .product-gallery { padding: clamp(15px, 2vw, 24px); border: 1px solid rgba(184, 128, 67, .55); border-radius: 24px; background: rgba(255, 250, 239, .94); box-shadow: 0 26px 68px rgba(88, 55, 24, .18); }
body.theme-easter .product-main, body.theme-easter .product-thumb { border-color: rgba(184, 128, 67, .44); }
body.theme-easter .product-thumb.is-current { outline-color: var(--easter-rose); }

body.theme-easter .inquiry-panel input:not([type="checkbox"]):not([type="radio"]), body.theme-easter .inquiry-panel select, body.theme-easter .inquiry-panel textarea, body.theme-easter .review-form input:not([type="checkbox"]):not([type="radio"]), body.theme-easter .review-form select, body.theme-easter .review-form textarea { color: #3f291d; border-color: rgba(169, 111, 55, .56); background: rgba(255, 250, 241, .96); box-shadow: inset 0 1px 10px rgba(101, 67, 34, .08); }
body.theme-easter .inquiry-panel input::placeholder, body.theme-easter .inquiry-panel textarea::placeholder, body.theme-easter .review-form input::placeholder, body.theme-easter .review-form textarea::placeholder { color: #987c69; }
body.theme-easter .review-form { color: var(--easter-text); border: 1px solid var(--easter-border); background: linear-gradient(145deg, rgba(255, 250, 241, .98), rgba(255, 228, 210, .96)); box-shadow: 0 26px 70px rgba(92, 59, 26, .18); }
body.theme-easter .rating-field legend, body.theme-easter .review-form label, body.theme-easter .inquiry-panel label { color: #55331f; }
body.theme-easter .star-picker label { color: #b9a183; border-color: rgba(176, 119, 59, .45); background: rgba(255, 248, 235, .95); }
body.theme-easter .star-picker label:hover, body.theme-easter .star-picker input:checked + label { color: #b97822; background: rgba(255, 214, 143, .34); }

body.theme-easter .button.primary, body.theme-easter button.primary { color: #fff; border: 1px solid rgba(255, 224, 173, .82); background: linear-gradient(135deg, #d34d7d, #f27ea9 58%, #c94e78); box-shadow: inset 0 0 20px rgba(255, 243, 216, .3), 0 9px 27px rgba(183, 67, 112, .24); }
body.theme-easter .button.primary:hover, body.theme-easter button.primary:hover { box-shadow: inset 0 0 22px rgba(255,255,255,.4), 0 12px 34px rgba(183, 67, 112, .34); }
body.theme-easter .button.secondary, body.theme-easter .button.ghost, body.theme-easter .idea-option { color: #684024; border-color: rgba(173, 112, 48, .68); background: rgba(255, 246, 231, .86); }
body.theme-easter a:focus-visible, body.theme-easter button:focus-visible, body.theme-easter input:focus-visible, body.theme-easter select:focus-visible, body.theme-easter textarea:focus-visible, body.theme-easter summary:focus-visible { outline-color: #7c4a18; box-shadow: 0 0 0 5px rgba(239, 108, 154, .28); }
body.theme-easter .faq-page details { border-bottom-color: rgba(162, 106, 51, .38); }
body.theme-easter .faq-page summary { color: #54331f; }
body.theme-easter .legal-page div { color: #4f3829; }
body.theme-easter .legal-page a { color: #8a4a19; text-decoration-color: rgba(138, 74, 25, .44); }

body.theme-easter .site-footer { position: relative; isolation: isolate; overflow: hidden; border-top-color: rgba(225, 181, 102, .62); color: #fff3dc; background: linear-gradient(90deg, rgba(35, 21, 12, .98), rgba(84, 54, 29, .92) 60%, rgba(95, 66, 34, .82)), var(--easter-garden) center 74% / cover; box-shadow: inset 0 1px rgba(255, 226, 168, .25); }
body.theme-easter .site-footer::before { content: ""; position: absolute; z-index: -1; width: min(650px, 47vw); aspect-ratio: 3 / 2; right: -2%; bottom: -13%; pointer-events: none; background: var(--easter-corner) right bottom / contain no-repeat; opacity: .82; }
body.theme-easter .site-footer::after { content: ""; position: absolute; z-index: -2; inset: 0; pointer-events: none; background-image: radial-gradient(circle, rgba(255, 224, 154, .9) 0 1px, transparent 3px); background-size: 121px 139px; opacity: .34; }
body.theme-easter .footer-grid, body.theme-easter .footer-bottom { position: relative; z-index: 1; }
body.theme-easter .footer-brand img.seasonal-logo-easter { width: min(430px, 100%); height: auto; border-radius: 12px; filter: drop-shadow(0 0 22px rgba(255, 213, 135, .25)); }
body.theme-easter .footer-brand p { color: #f4e6d1; }
body.theme-easter .footer-discover h2, body.theme-easter .footer-legal h2 { color: #ffd18a; }
body.theme-easter .footer-links a { color: #fff2dd; }
body.theme-easter .footer-links a:hover { color: #ffd68b; }
body.theme-easter .footer-bottom { border-top-color: rgba(230, 187, 106, .48); color: #ead6ba; }

body.theme-easter[data-page="page-home"] .hero { min-height: 740px; border-bottom: 1px solid rgba(189, 126, 67, .43); background: linear-gradient(104deg, rgba(255, 248, 235, .86) 10%, rgba(255, 244, 220, .46) 50%, rgba(255, 247, 230, .18)), var(--easter-garden) center / cover; box-shadow: inset 0 -70px 112px rgba(87, 57, 28, .13); }
body.theme-easter[data-page="page-home"] .hero::before { background: var(--easter-garden) center / cover; opacity: .82; filter: saturate(1.06) brightness(1.03); }
body.theme-easter[data-page="page-home"] .hero::after { content: ""; position: absolute; z-index: 0; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(255,250,239,.92) 0 35%, rgba(255,250,239,.25) 62%, transparent 80%); }
body.theme-easter[data-page="page-home"] .hero-copy, body.theme-easter[data-page="page-home"] .hero-art { position: relative; z-index: 1; }
body.theme-easter[data-page="page-home"] .hero h1 { max-width: 700px; color: #51311d; text-shadow: 0 2px 0 rgba(255,255,255,.75), 0 0 30px rgba(255, 194, 96, .35); }
body.theme-easter[data-page="page-home"] .hero .eyebrow { color: #b64e72; }
body.theme-easter[data-page="page-home"] .hero .lead { color: #583e2d; }
body.theme-easter[data-page="page-home"] .hero-atmosphere { width: min(760px, 60vw); right: -12vw; top: -18vw; background: radial-gradient(circle at 50% 50%, rgba(255, 221, 151, .7) 0 4%, rgba(244, 167, 194, .35) 18%, rgba(151, 193, 118, .24) 42%, transparent 70%); filter: blur(16px); opacity: .86; }
body.theme-easter[data-page="page-home"] .hero-art { padding: 13px; border: 1px solid rgba(191, 132, 65, .58); border-radius: 240px 240px 35px 35px; background: rgba(255, 249, 238, .68); box-shadow: 0 28px 74px rgba(91, 59, 28, .25), 0 0 36px rgba(247, 159, 192, .2); }
body.theme-easter[data-page="page-home"] .hero-art img { border-radius: 215px 215px 24px 24px; box-shadow: 0 18px 54px rgba(91, 59, 28, .24); filter: saturate(.98) contrast(1.03); }
body.theme-easter[data-page="page-home"] .moon { color: #c07a28; text-shadow: 0 0 19px rgba(255, 212, 129, .84); }

body.theme-easter[data-page="page-home"] .gallery-strip,
body.theme-easter[data-page="page-home"] .product-worlds-teaser,
body.theme-easter[data-page="page-home"] .steps,
body.theme-easter[data-page="page-home"] .faq-teaser,
body.theme-easter[data-page="page-home"] .wish-product { position: relative; isolation: isolate; overflow: hidden; max-width: none; margin: 0; color: var(--easter-text); border-bottom: 1px solid rgba(177, 119, 58, .3); }
body.theme-easter[data-page="page-home"] .gallery-strip { padding: 94px max(28px, calc((100vw - var(--max)) / 2)); background: linear-gradient(145deg, rgba(255,251,242,.95), rgba(250, 224, 204, .9)), var(--easter-garden) center / cover; }
body.theme-easter[data-page="page-home"] .product-worlds-teaser { padding: 94px 0 0; background: linear-gradient(145deg, rgba(255,247,232,.92), rgba(236, 225, 192, .9)), var(--easter-garden) center / cover; }
body.theme-easter[data-page="page-home"] .steps { background: linear-gradient(125deg, #fff5e6, #f3d7bf 56%, #e8c99f); }
body.theme-easter[data-page="page-home"] .faq-teaser { padding: 96px max(28px, calc((100vw - 850px) / 2)); background: linear-gradient(145deg, rgba(255,249,239,.95), rgba(246, 226, 207, .92)), var(--easter-garden) center / cover; }
body.theme-easter[data-page="page-home"] .wish-product { background: linear-gradient(135deg, rgba(255,249,238,.93), rgba(239,216,194,.86)), var(--easter-garden) center / cover; }
body.theme-easter[data-page="page-home"] .gallery-strip::after, body.theme-easter[data-page="page-home"] .product-worlds-teaser::after, body.theme-easter[data-page="page-home"] .faq-teaser::after, body.theme-easter[data-page="page-home"] .wish-product::after { content: ""; position: absolute; z-index: -1; width: min(500px, 38vw); aspect-ratio: 3 / 2; right: -3%; bottom: -8%; pointer-events: none; background: var(--easter-corner) right bottom / contain no-repeat; opacity: .62; }
body.theme-easter[data-page="page-home"] .product-worlds-teaser::after { left: -7%; right: auto; transform: scaleX(-1); opacity: .47; }
body.theme-easter[data-page="page-home"] .gallery-strip > *, body.theme-easter[data-page="page-home"] .product-worlds-teaser > *, body.theme-easter[data-page="page-home"] .steps > *, body.theme-easter[data-page="page-home"] .faq-teaser > *, body.theme-easter[data-page="page-home"] .wish-product > * { position: relative; z-index: 1; }
body.theme-easter[data-page="page-home"] .gallery-strip .gallery-grid { max-width: var(--max); margin-inline: auto; }
body.theme-easter[data-page="page-home"] .product-worlds-teaser > .eyebrow, body.theme-easter[data-page="page-home"] .product-worlds-teaser > h2 { display: block; max-width: var(--max); margin-inline: auto; padding-inline: 28px; text-align: center; }
body.theme-easter[data-page="page-home"] .product-worlds-teaser .cards { max-width: var(--max); margin: 38px auto 0; }
body.theme-easter[data-page="page-home"] .cards article, body.theme-easter[data-page="page-home"] .gallery-card, body.theme-easter[data-page="page-home"] .step-grid > div, body.theme-easter[data-page="page-home"] .wish-product-inner { border-color: rgba(180, 118, 57, .5); background: linear-gradient(145deg, rgba(255,252,245,.98), rgba(255,228,210,.96)); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 19px 46px rgba(90,57,25,.14); }
body.theme-easter[data-page="page-home"] .cards h3, body.theme-easter[data-page="page-home"] .step-grid h3, body.theme-easter[data-page="page-home"] .wish-product h2 { color: #51331f; }
body.theme-easter[data-page="page-home"] .cards p, body.theme-easter[data-page="page-home"] .step-grid p, body.theme-easter[data-page="page-home"] .wish-product p:not(.eyebrow) { color: #705746; }
body.theme-easter[data-page="page-home"] .cards a, body.theme-easter[data-page="page-home"] .step-grid b { color: #99551f; }
body.theme-easter[data-page="page-home"] .step-grid { border-top-color: rgba(181, 121, 58, .48); }
body.theme-easter[data-page="page-home"] .step-grid > div { border-right-color: rgba(181, 121, 58, .32); background: rgba(255, 249, 237, .42); }
body.theme-easter[data-page="page-home"] .faq-teaser details { border-bottom-color: rgba(180, 119, 57, .42); }
body.theme-easter[data-page="page-home"] .faq-teaser summary { color: #52311e; }
body.theme-easter[data-page="page-home"] .faq-teaser p { color: #6f5443; }

@media (max-width: 1100px) {
  body.theme-easter .site-header .brand img.seasonal-logo-easter { width: 252px; height: 88px; }
  body.theme-easter .page-intro::after, body.theme-easter .inquiry-hero::after, body.theme-easter .reviews-hero::after { width: 430px; right: -11%; opacity: .72; }
  body.theme-easter .site-footer::before { width: 430px; right: -9%; opacity: .67; }
}
@media (max-width: 800px) {
  body.theme-easter .site-header { overflow: visible; height: 82px; }
  body.theme-easter .site-header nav { color: #fff9ec; border-color: rgba(225, 181, 103, .58); background: linear-gradient(rgba(37, 22, 13, .97), rgba(82, 55, 31, .97)), var(--easter-garden) center / cover; }
  body.theme-easter .site-header .brand img.seasonal-logo-easter { width: 205px; height: 70px; }
  body.theme-easter .page-intro, body.theme-easter .inquiry-hero, body.theme-easter .reviews-hero { padding-inline: 20px; }
  body.theme-easter .page-intro { padding-block: 72px 76px; }
  body.theme-easter .page-intro.compact { padding-block: 64px 68px; }
  body.theme-easter .inquiry-hero { padding-block: 70px 82px; }
  body.theme-easter .reviews-hero { padding-block: 68px 70px; }
  body.theme-easter .page-intro::after, body.theme-easter .inquiry-hero::after, body.theme-easter .reviews-hero::after { width: 275px; right: -18%; bottom: -1%; opacity: .63; }
  body.theme-easter .product-showcase, body.theme-easter .product-page, body.theme-easter .gallery-page-shell { padding: 60px 20px 76px; }
  body.theme-easter .faq-page { padding: 34px 20px 84px; }
  body.theme-easter .legal-page { padding: 70px 20px 88px; }
  body.theme-easter .site-footer::before { width: 300px; right: -9%; bottom: -1%; opacity: .58; }
  body.theme-easter .footer-grid, body.theme-easter .footer-bottom { padding-right: 28px; }
  body.theme-easter .footer-brand img.seasonal-logo-easter { width: 320px; }
  body.theme-easter[data-page="page-home"] .hero { min-height: auto; padding: 66px 20px 78px; background-position: 38% center; }
  body.theme-easter[data-page="page-home"] .hero::before { background-position: 40% center; opacity: .7; }
  body.theme-easter[data-page="page-home"] .hero::after { background: linear-gradient(rgba(255,250,239,.86), rgba(255,250,239,.44) 57%, rgba(255,250,239,.2)); }
  body.theme-easter[data-page="page-home"] .hero-atmosphere { width: 620px; right: -330px; top: -220px; }
  body.theme-easter[data-page="page-home"] .hero-art { padding: 9px; }
  body.theme-easter[data-page="page-home"] .gallery-strip { padding: 70px 20px; }
  body.theme-easter[data-page="page-home"] .product-worlds-teaser { padding-top: 70px; }
  body.theme-easter[data-page="page-home"] .product-worlds-teaser > .eyebrow, body.theme-easter[data-page="page-home"] .product-worlds-teaser > h2 { padding-inline: 20px; }
  body.theme-easter[data-page="page-home"] .faq-teaser { padding: 72px 20px; }
  body.theme-easter[data-page="page-home"] .gallery-strip::after, body.theme-easter[data-page="page-home"] .product-worlds-teaser::after, body.theme-easter[data-page="page-home"] .faq-teaser::after, body.theme-easter[data-page="page-home"] .wish-product::after { width: 250px; right: -24%; bottom: -2%; opacity: .4; }
  body.theme-easter[data-page="page-home"] .product-worlds-teaser::after { left: -29%; right: auto; }
}
@media (prefers-reduced-motion: reduce) {
  body.theme-easter *, body.theme-easter *::before, body.theme-easter *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
}

/* PRG confirmation messages remain calm, readable, and part of the Easter palette. */
body.theme-easter .message {
  max-width: min(1100px, calc(100% - 40px));
  margin: 24px auto 0;
  border: 1px solid rgba(184, 115, 51, .58);
  border-left: 4px solid #b87333;
  border-radius: 14px;
  background: linear-gradient(110deg, rgba(255, 251, 244, .97), rgba(253, 231, 233, .94));
  color: #43291e;
  box-shadow: 0 12px 28px rgba(98, 54, 25, .15);
}
body.theme-easter .message-success { border-left-color: #8b5b2d; }
body.theme-easter .message-error { border-left-color: #a83359; }
