:root {
  color-scheme: dark;
  --ink: #090b16;
  --ink-soft: #111424;
  --panel: #141729;
  --line: rgba(231, 222, 203, .15);
  --cream: #eee9df;
  --muted: #a6a5b2;
  --lavender: #b8a5e8;
  --lilac: #d4c5fa;
  --gold: #d9bb8f;
  --serif: 'Iowan Old Style', 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  --sans: 'Aptos', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; background: var(--ink); color: var(--cream); font-family: var(--sans); font-size: 15px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
::selection { background: var(--lavender); color: var(--ink); }
.grain { position: fixed; z-index: 5; inset: 0; pointer-events: none; opacity: .09; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E"); }
.section-shell { width: min(1160px, calc(100% - 96px)); margin-inline: auto; }
.site-header { width: min(1320px, calc(100% - 96px)); height: 88px; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); position: relative; z-index: 10; }
.noscript-banner { background: #eee9df; color: #171521; text-align: center; padding: 10px 20px; font-size: 12px; }
.brand { display: inline-flex; align-items: center; gap: 9px; font-size: 18px; letter-spacing: .12em; font-weight: 500; }
.brand-mark { color: var(--gold); font-size: 22px; line-height: 1; }
.brand-period { color: var(--gold); }
.site-nav { display: flex; align-items: center; gap: 38px; font-size: 12px; color: #c2bfcb; letter-spacing: .03em; }
.site-nav a { transition: color .2s ease; }
.site-nav a:hover, .quiet-link:hover, .text-link:hover, .back-top:hover { color: var(--lilac); }
.site-nav .nav-cta { color: var(--cream); border: 1px solid rgba(238,233,223,.38); padding: 11px 17px; border-radius: 2px; }
.nav-cta span { color: var(--gold); margin-left: 8px; }
.menu-toggle { display: none; }

.hero { min-height: 620px; display: grid; grid-template-columns: .89fr 1.11fr; align-items: center; position: relative; padding-block: 68px 88px; }
.hero-copy { position: relative; z-index: 2; padding-block: 25px; }
.hero h1 { font-size: clamp(53px, 6.1vw, 82px); line-height: .98; letter-spacing: -.055em; }
.eyebrow { color: var(--gold); text-transform: uppercase; letter-spacing: .18em; font-size: 9px; font-weight: 600; line-height: 1.5; margin: 0 0 23px; }
.eyebrow-star { font-size: 13px; margin-right: 8px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: var(--serif); font-weight: 400; letter-spacing: -.045em; }
h1 { font-size: clamp(68px, 8vw, 112px); line-height: .91; margin-bottom: 28px; }
h1 em, h2 em { color: var(--lavender); font-weight: 400; }
.hero-lede { max-width: 395px; color: #b9b7c4; font-size: 15px; line-height: 1.8; margin-bottom: 30px; }
.hero-actions { display: flex; align-items: center; gap: 28px; }
.button { min-height: 49px; padding: 0 21px; display: inline-flex; align-items: center; justify-content: center; gap: 19px; font-size: 11px; letter-spacing: .04em; font-weight: 600; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #12121a; background: var(--lilac); }
.button-primary:hover { background: #e1d5ff; }
.button span { font-size: 15px; }
.quiet-link, .text-link { color: #c4c1cd; font-size: 11px; transition: color .2s ease; }
.quiet-link span { margin-left: 6px; color: var(--gold); }
.hero-offer { display: flex; align-items: center; gap: 12px; width: min(100%, 390px); margin-top: 36px; padding: 12px 14px; border: 1px solid rgba(217,187,143,.33); background: linear-gradient(105deg, rgba(217,187,143,.08), rgba(184,165,232,.035)); }
.hero-offer-badge { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; background: var(--gold); color: #18151c; min-width: 70px; min-height: 54px; padding: 7px; text-align: center; font-size: 18px; font-weight: 700; letter-spacing: .01em; box-shadow: 0 0 22px rgba(217,187,143,.13); }
.hero-offer-copy { display: grid; line-height: 1.5; font-size: 10px; color: #aaa8b4; }.hero-offer-copy strong { color: var(--cream); font-size: 12px; font-weight: 600; }.hero-offer-price { color: var(--lilac); font-family: var(--serif); font-size: 19px; font-weight: 400; margin-left: auto; white-space: nowrap; }
.hero-offer-copy .hero-offer-limited { color: var(--gold); font-size: 9px; }
.hero-offer-copy.is-ended { color: #a7a4b1; }.hero-offer-badge.is-full-price { min-width: 83px; font-size: 8px; letter-spacing: .06em; }
.dream-art { height: 470px; position: relative; overflow: hidden; isolation: isolate; background: radial-gradient(ellipse at 52% 62%, #2e2449 0%, #19172b 31%, #111424 66%, #0d1020 100%); border: 1px solid rgba(219,198,242,.14); }
.dream-art::before { content: ''; position: absolute; z-index: -1; inset: 0; background: radial-gradient(1px 1px at 12% 24%, #f1dcaf 40%, transparent 100%), radial-gradient(1px 1px at 72% 17%, #e8dbf8 45%, transparent 100%), radial-gradient(1px 1px at 85% 43%, #dec7f3 45%, transparent 100%), radial-gradient(1px 1px at 24% 69%, #e8dbf8 45%, transparent 100%), radial-gradient(1px 1px at 62% 79%, #dec7f3 45%, transparent 100%), radial-gradient(1px 1px at 92% 76%, #f1dcaf 45%, transparent 100%); }
.art-moon { width: 164px; aspect-ratio: 1; border-radius: 50%; position: absolute; left: 50%; top: 29%; transform: translate(-50%, -50%); background: radial-gradient(circle at 36% 34%, #fbf2d7, #e6d4ba 55%, #b6a3bd 100%); box-shadow: 0 0 36px 6px rgba(226,208,220,.25), 0 0 110px 23px rgba(174,142,216,.22); }
.art-moon::after { content: ''; position: absolute; width: 46px; height: 35px; border-radius: 50%; left: 26%; top: 27%; background: rgba(144,126,141,.11); transform: rotate(-28deg); box-shadow: 51px 57px 0 -9px rgba(144,126,141,.15), 78px 13px 0 -15px rgba(144,126,141,.12); }
.art-halo { position: absolute; width: 300px; aspect-ratio: 1; border: 1px solid rgba(220,201,242,.2); border-radius: 50%; left: 50%; top: 29%; transform: translate(-50%,-50%); }
.art-orbit { position: absolute; border: 1px solid rgba(223,210,237,.08); border-radius: 50%; left: 50%; top: 46%; transform: translate(-50%,-50%) rotate(-24deg); }
.orbit-one { width: 580px; height: 190px; }.orbit-two { width: 680px; height: 260px; transform: translate(-50%,-50%) rotate(24deg); }
.art-spark { position: absolute; color: #e0cba5; }.spark-one { top: 18%; left: 19%; font-size: 13px; }.spark-two { top: 34%; right: 16%; font-size: 18px; }.spark-three { top: 56%; left: 76%; font-size: 26px; color: var(--lilac); }
.art-horizon { position: absolute; left: -8%; width: 116%; bottom: -13%; border-radius: 50% 50% 0 0; }
.horizon-back { height: 48%; background: linear-gradient(160deg, #35304b, #201d37 56%, #111424); transform: rotate(-8deg); bottom: -20%; }
.horizon-back::before { content: ''; position: absolute; left: 14%; top: -17%; width: 56%; height: 65%; border-radius: 50% 50% 0 0; background: linear-gradient(135deg, #55455e, #29233f 70%); clip-path: polygon(0 100%, 48% 0, 100% 100%); }
.horizon-front { height: 35%; background: linear-gradient(170deg, #17182b, #0d1020 72%); transform: rotate(5deg); bottom: -24%; }
.art-caption { position: absolute; bottom: 28px; left: 28px; display: grid; gap: 1px; text-transform: uppercase; letter-spacing: .13em; font-size: 8px; color: #b5adbf; }
.art-caption span:first-child { color: #eee3cc; font-family: var(--serif); font-size: 18px; letter-spacing: .03em; }
.art-coordinate { position: absolute; right: 28px; bottom: 31px; text-align: right; font-size: 8px; line-height: 1.6; letter-spacing: .12em; color: #858292; }
.hero-index { position: absolute; bottom: 22px; left: 0; display: flex; align-items: center; gap: 10px; color: #888896; font-size: 9px; letter-spacing: .1em; }.hero-index span:first-child { color: var(--gold); }.index-rule { height: 1px; width: 36px; background: var(--line); }

.intro { padding-block: 142px 155px; display: grid; grid-template-columns: 1.1fr .9fr; gap: 8%; align-items: end; }
.section-heading h2, .method h2, .program h2, .faq h2 { font-size: clamp(42px, 5vw, 62px); line-height: 1.07; margin: 0; }
.intro-copy { padding-bottom: 6px; max-width: 450px; }.intro-copy p { color: #aaa9b5; font-size: 13px; line-height: 1.9; margin-bottom: 15px; }.text-link { display: inline-block; margin-top: 8px; color: var(--cream); border-bottom: 1px solid rgba(217,187,143,.45); padding-bottom: 7px; }.text-link span { color: var(--gold); margin-left: 12px; }
.method { border-top: 1px solid var(--line); padding-block: 90px 145px; }
.method-top { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 57px; }.method-top .eyebrow { margin-bottom: 17px; }.method-aside { max-width: 310px; color: #9494a2; font-size: 12px; line-height: 1.8; margin: 0 4px 8px 0; }
.steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; }
.step-card { min-height: 296px; border: 1px solid var(--line); padding: 25px 25px 20px; display: flex; flex-direction: column; background: linear-gradient(145deg, rgba(255,255,255,.025), rgba(255,255,255,0)); transition: border-color .25s ease, transform .25s ease; }.step-card:hover { border-color: rgba(184,165,232,.46); transform: translateY(-3px); }
.step-number { font-size: 9px; color: var(--gold); text-transform: uppercase; letter-spacing: .15em; }.step-icon { height: 75px; margin: 21px 0 17px; color: var(--lavender); display: flex; align-items: center; }.icon-journal { width: 44px; border: 1px solid rgba(184,165,232,.6); border-radius: 2px; position: relative; padding: 14px 8px; flex-direction: column; gap: 6px; }.icon-journal span { width: 26px; height: 1px; background: var(--lavender); opacity: .8; }.icon-journal::before { content: ''; position: absolute; top: -1px; bottom: -1px; left: 5px; border-left: 1px solid rgba(184,165,232,.5); }
.icon-eye { width: 50px; height: 32px; border: 1px solid var(--lavender); border-radius: 100% 0 100% 0; transform: rotate(45deg); justify-content: center; }.icon-eye span { width: 9px; height: 9px; border: 1px solid var(--gold); border-radius: 50%; transform: rotate(-45deg); }
.icon-star { font-size: 34px; }.step-card h3 { font-family: var(--serif); font-size: 24px; font-weight: 400; letter-spacing: -.02em; margin: 0 0 8px; }.step-card p { color: #9d9daa; font-size: 11px; line-height: 1.75; margin: 0 0 18px; max-width: 260px; }.step-foot { display: flex; justify-content: space-between; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line); color: #858594; letter-spacing: .14em; font-size: 8px; }.step-foot span { color: var(--gold); font-size: 12px; }

.quote-band { min-height: 300px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: radial-gradient(ellipse at 50% 100%, rgba(92,69,129,.32), transparent 65%), #101323; border-block: 1px solid rgba(209,190,226,.12); padding: 48px 24px; }.quote-star { color: var(--gold); font-size: 17px; margin-bottom: 12px; }.quote-band .quote-title { font-family: var(--serif); font-size: clamp(30px, 4vw, 46px); line-height: 1.12; letter-spacing: -.03em; margin: 0 0 17px; }.quote-title em { color: var(--gold); font-weight: 400; }.quote-band .quote-detail, .quote-band .quote-principle { max-width: 660px; color: #aaa9b5; font-size: 13px; line-height: 1.85; margin: 0 auto 10px; }.quote-band .quote-detail strong { color: var(--cream); font-weight: 500; letter-spacing: .04em; }.quote-band .quote-principle { color: #d0cbd8; margin-bottom: 19px; }.quote-caption { color: #9692a4; font-size: 8px; letter-spacing: .2em; }

.program { padding-block: 143px 148px; }.program-heading { display: flex; justify-content: space-between; align-items: end; gap: 50px; margin-bottom: 48px; }.program-heading .eyebrow { margin-bottom: 17px; }.program-heading > p { max-width: 350px; margin: 0 3px 9px 0; color: #9e9eac; font-size: 12px; line-height: 1.9; }.module-list { border-top: 1px solid var(--line); }.module-row { min-height: 99px; display: grid; grid-template-columns: 70px 1fr 40px; align-items: center; border-bottom: 1px solid var(--line); transition: padding .22s ease, background .22s ease; }.module-row:hover { padding-inline: 10px; background: rgba(255,255,255,.018); }.module-index { color: var(--gold); font-size: 10px; letter-spacing: .12em; }.module-row h3 { font-family: var(--serif); font-weight: 400; font-size: 21px; margin: 0 0 2px; }.module-row p { color: #8f8f9d; font-size: 10px; margin: 0; }.module-symbol { color: var(--lavender); font-size: 18px; text-align: right; }

.access-section { position: relative; overflow: hidden; background: #151323; border-block: 1px solid rgba(209,190,226,.12); }.access-glow { position: absolute; width: 550px; height: 550px; left: 14%; top: 50%; transform: translateY(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(109,78,151,.2), transparent 68%); pointer-events: none; }.access-inner { min-height: 535px; display: grid; grid-template-columns: 1fr 390px; gap: 11%; align-items: center; position: relative; z-index: 1; padding-block: 78px; }.access-copy .eyebrow { margin-bottom: 17px; }.access-copy h2 { font-size: clamp(47px, 5.8vw, 72px); line-height: 1.02; margin-bottom: 21px; }.access-copy > p:last-child { color: #aaa7b5; font-size: 12px; max-width: 340px; }
.offer-urgency { color: #715c9a; font-size: 9px; font-weight: 600; line-height: 1.45; }

.faq { display: grid; grid-template-columns: .8fr 1.2fr; gap: 8%; padding-block: 135px 145px; }.faq-heading .eyebrow { margin-bottom: 17px; }.faq-list { border-top: 1px solid var(--line); }.faq-list details { border-bottom: 1px solid var(--line); }.faq-list summary { list-style: none; cursor: pointer; min-height: 69px; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-family: var(--serif); font-size: 19px; }.faq-list summary::-webkit-details-marker { display: none; }.faq-list summary span { color: var(--gold); font-family: var(--sans); font-size: 20px; transition: transform .2s ease; }.faq-list details[open] summary span { transform: rotate(45deg); }.faq-list details p { color: #9c9ba8; font-size: 11px; line-height: 1.8; max-width: 500px; padding: 0 35px 19px 0; margin: 0; }
.site-footer { border-top: 1px solid var(--line); padding-block: 34px 20px; }
.footer-main { display: grid; grid-template-columns: minmax(220px, 1.2fr) minmax(145px, .72fr) minmax(220px, 1fr); gap: 34px 52px; align-items: start; padding-bottom: 31px; }
.footer-brand-block { display: grid; justify-items: start; gap: 12px; }
.site-footer .brand { font-size: 17px; }
.site-footer .brand-mark { font-size: 20px; }
.footer-note, .copyright, .back-top { color: #8e8c99; font-size: 10px; }
.footer-note { max-width: 220px; margin: 0; line-height: 1.6; }
.footer-heading { color: var(--gold); font-size: 8px; font-weight: 600; letter-spacing: .16em; line-height: 1.4; text-transform: uppercase; margin: 1px 0 14px; }
.site-footer .legal-links { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; color: #b8b5c1; font-size: 11px; }
.site-footer .legal-links a, .footer-email { transition: color .2s ease; }
.site-footer .legal-links a:hover, .footer-email:hover { color: var(--lilac); }
.footer-contact-block { display: grid; justify-items: start; gap: 10px; }
.footer-contact-block .footer-heading { margin-bottom: 2px; }
.footer-email { color: var(--cream); font-size: 11px; text-decoration: underline; text-decoration-color: rgba(184,165,232,.45); text-underline-offset: 4px; }
.site-footer .operator-details { display: block; flex: initial; width: auto; border: 0; padding: 0; color: #8e8c99; font-size: 10px; line-height: 1.6; }
.footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid var(--line); padding-top: 14px; }
.site-footer .copyright { margin: 0; }
.site-footer .back-top { display: inline-flex; align-items: center; gap: 8px; margin: 0; transition: color .2s ease; }
.site-footer .back-top span { color: var(--gold); font-size: 13px; }
.toast { position: fixed; z-index: 20; left: 50%; bottom: 24px; transform: translate(-50%, 15px); background: #eee9df; color: #171521; font-size: 12px; padding: 12px 18px; box-shadow: 0 8px 30px #0006; opacity: 0; pointer-events: none; transition: opacity .22s ease, transform .22s ease; }.toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

@media (min-width: 1400px) { .hero { min-height: 680px; }.dream-art { height: 510px; } }
@media (max-width: 900px) { .section-shell, .site-header { width: min(100% - 56px, 1160px); }.hero { grid-template-columns: .9fr 1.1fr; gap: 20px; min-height: 560px; }.dream-art { height: 400px; }.art-moon { width: 136px; }.art-halo { width: 250px; }.hero-lede { font-size: 13px; }.intro { padding-block: 110px; }.steps-grid { gap: 10px; }.step-card { padding: 20px 17px; }.access-inner { grid-template-columns: 1fr 350px; gap: 5%; }.faq { gap: 5%; } }
@media (max-width: 680px) {
  .section-shell, .site-header { width: calc(100% - 40px); }
  .site-header { height: 70px; }.menu-toggle { width: 42px; height: 42px; border: 1px solid var(--line); background: transparent; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 5px; cursor: pointer; }.menu-toggle span { width: 16px; height: 1px; background: var(--cream); transition: transform .2s ease; }.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3px) rotate(-45deg); }.site-nav { position: absolute; left: -20px; right: -20px; top: 69px; padding: 18px 20px 22px; background: #0d1020; border-bottom: 1px solid var(--line); display: none; flex-direction: column; align-items: stretch; gap: 0; }.site-nav.is-open { display: flex; }.site-nav a { padding: 13px 4px; }.site-nav .nav-cta { margin-top: 8px; text-align: center; }
  .hero { display: flex; flex-direction: column; align-items: stretch; padding-block: 58px 70px; gap: 36px; }.hero-copy { padding: 0; }.eyebrow { font-size: 8px; margin-bottom: 17px; }h1 { font-size: clamp(70px, 19vw, 100px); }.hero h1 { font-size: clamp(48px, 12.2vw, 73px); line-height: 1; }.hero-lede { max-width: 440px; }.hero-offer { margin-top: 27px; }.dream-art { height: min(108vw, 420px); }.hero-index { bottom: 24px; }.hero-actions { gap: 19px; }.button { min-height: 47px; padding-inline: 15px; gap: 11px; font-size: 10px; }.quiet-link { font-size: 10px; }
  .intro { padding-block: 92px 100px; grid-template-columns: 1fr; gap: 27px; }.section-heading h2, .method h2, .program h2, .faq h2 { font-size: 47px; }.intro-copy { max-width: 520px; }
  .method { padding-block: 68px 92px; }.method-top { display: block; margin-bottom: 31px; }.method-aside { margin-top: 19px; }.steps-grid { grid-template-columns: 1fr; gap: 11px; }.step-card { min-height: 255px; padding: 20px 22px 17px; }.step-icon { height: 57px; margin: 14px 0 12px; }
  .quote-band { min-height: 250px; padding: 38px 22px; }.quote-band .quote-title { font-size: 31px; }.quote-band .quote-detail, .quote-band .quote-principle { font-size: 12px; }
  .program { padding-block: 94px; }.program-heading { display: block; margin-bottom: 31px; }.program-heading > p { margin-top: 20px; }.module-row { min-height: 99px; grid-template-columns: 38px 1fr 23px; }.module-row h3 { font-size: 17px; }.module-row p { font-size: 9px; max-width: 270px; }.module-index { font-size: 8px; }.module-symbol { font-size: 15px; }
  .access-inner { grid-template-columns: 1fr; gap: 30px; padding-block: 82px; }.access-copy h2 { font-size: 55px; }.offer-card { max-width: 440px; width: 100%; justify-self: center; padding: 24px; }
  .faq { grid-template-columns: 1fr; gap: 30px; padding-block: 90px; }.faq-list summary { font-size: 17px; }
  .site-footer { padding-block: 28px 18px; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 25px 30px; padding-bottom: 25px; }
  .footer-brand-block { grid-column: 1 / -1; display: flex; align-items: center; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
  .footer-note { max-width: none; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

/* Effetti atmosferici: tutto locale, leggeri e rispettosi di prefers-reduced-motion. */
.scroll-progress { position: fixed; z-index: 50; inset: 0 0 auto; height: 2px; pointer-events: none; background: rgba(217,187,143,.08); }
.scroll-progress span { display: block; width: 100%; height: 100%; transform: scaleX(0); transform-origin: left center; background: linear-gradient(90deg, #9d86d1, #d9bb8f 60%, #f2dcb7); box-shadow: 0 0 12px rgba(217,187,143,.7); }

.site-nav a:not(.nav-cta) { position: relative; }
.site-nav a:not(.nav-cta)::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: linear-gradient(90deg, var(--lavender), var(--gold)); transition: right .35s cubic-bezier(.2,.7,.2,1); }
.site-nav a:not(.nav-cta):hover::after, .site-nav a:not(.nav-cta):focus-visible::after { right: 0; }
.site-nav .nav-cta { transition: border-color .25s ease, color .25s ease, box-shadow .25s ease; }
.site-nav .nav-cta:hover { color: #fff; border-color: rgba(217,187,143,.72); box-shadow: 0 0 24px rgba(217,187,143,.12); }

.dream-art { border-color: rgba(219,198,242,.22); box-shadow: 0 22px 75px rgba(0,0,0,.14), inset 0 0 0 1px rgba(255,255,255,.018); transition: border-color .5s ease, box-shadow .5s ease; }
.dream-art::after { content: ''; position: absolute; z-index: 1; inset: -18%; pointer-events: none; opacity: .66; mix-blend-mode: screen; background: radial-gradient(ellipse at var(--pointer-x, 52%) var(--pointer-y, 48%), rgba(184,165,232,.16), transparent 35%), linear-gradient(125deg, transparent 31%, rgba(255,255,255,.035) 48%, transparent 65%); animation: dream-veil 12s ease-in-out infinite; }
.dream-art:hover { border-color: rgba(217,187,143,.34); box-shadow: 0 28px 90px rgba(0,0,0,.24), 0 0 44px rgba(184,165,232,.08); }
.art-moon { animation: moon-breathe 8s ease-in-out infinite; }
.art-halo { animation: halo-breathe 9s ease-in-out infinite; }
.orbit-one { animation: orbit-one 48s linear infinite; }
.orbit-two { animation: orbit-two 68s linear infinite; }
.art-spark { transform-origin: center; animation: star-glint 5.8s ease-in-out infinite; }
.spark-two { animation-delay: -2.1s; }
.spark-three { animation-delay: -3.7s; }

.button { position: relative; isolation: isolate; overflow: hidden; }
.button::after { content: ''; position: absolute; z-index: -1; inset: -40% auto -40% -48%; width: 34%; transform: skewX(-24deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,.24), transparent); transition: left .65s cubic-bezier(.2,.7,.2,1); }
.button:hover::after, .button:focus-visible::after { left: 118%; }
.button-primary { box-shadow: 0 0 0 rgba(184,165,232,0); transition: transform .25s ease, background .25s ease, box-shadow .4s ease; }
.button-primary:hover { box-shadow: 0 9px 35px rgba(184,165,232,.22); }
.button-light { transition: transform .25s ease, background .25s ease, box-shadow .4s ease; }
.button-light:hover { box-shadow: 0 9px 28px rgba(25,23,37,.22); }

.step-card { position: relative; isolation: isolate; overflow: hidden; transition: border-color .35s ease, transform .35s cubic-bezier(.2,.7,.2,1), background .35s ease, box-shadow .35s ease; }
.step-card::before { content: ''; position: absolute; z-index: 0; inset: 0; opacity: 0; pointer-events: none; background: radial-gradient(circle at var(--pointer-x, 50%) var(--pointer-y, 20%), rgba(184,165,232,.15), transparent 45%); transition: opacity .4s ease; }
.step-card > * { position: relative; z-index: 1; }
.step-card:hover { border-color: rgba(217,187,143,.45); box-shadow: 0 20px 55px rgba(0,0,0,.18); }
.step-card:hover::before { opacity: 1; }
.step-icon { transition: transform .4s cubic-bezier(.2,.7,.2,1), filter .4s ease; }
.step-card:hover .step-icon { transform: translateY(-3px) scale(1.06); filter: drop-shadow(0 0 12px rgba(184,165,232,.35)); }
.module-row { position: relative; transition: padding .3s ease, background .3s ease, border-color .3s ease; }
.module-row::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 2px; transform: scaleY(0); transform-origin: bottom; background: linear-gradient(var(--lavender), var(--gold)); transition: transform .35s cubic-bezier(.2,.7,.2,1); }
.module-row:hover::before { transform: scaleY(1); }
.module-row:hover .module-symbol { color: var(--gold); text-shadow: 0 0 18px rgba(217,187,143,.45); transform: rotate(18deg); }
.module-symbol { transition: color .3s ease, transform .45s cubic-bezier(.2,.7,.2,1), text-shadow .3s ease; }

.offer-card { position: relative; isolation: isolate; overflow: hidden; box-shadow: 0 25px 90px rgba(0,0,0,.28), 0 0 0 1px rgba(217,187,143,.12); transition: transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s ease; }
.offer-card::before { content: ''; position: absolute; z-index: 0; width: 270px; height: 270px; right: -100px; top: -135px; border-radius: 50%; background: radial-gradient(circle, rgba(184,165,232,.23), transparent 68%); pointer-events: none; transition: transform .8s cubic-bezier(.2,.7,.2,1), opacity .6s ease; }
.offer-card > * { position: relative; z-index: 1; }
.offer-card:hover { transform: translateY(-5px); box-shadow: 0 34px 110px rgba(0,0,0,.35), 0 0 0 1px rgba(217,187,143,.3); }
.offer-card:hover::before { transform: scale(1.45); }
.offer-card .offer-card-top { letter-spacing: .16em; }
.offer-price-block { transition: border-color .3s ease; }
.offer-card:hover .offer-price-block { border-color: rgba(130,110,170,.38); }
.faq-list summary { transition: color .25s ease; }
.faq-list summary:hover { color: var(--lilac); }
.faq-list details[open] summary span { text-shadow: 0 0 15px rgba(217,187,143,.45); }

html.motion-ready [data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .75s ease, transform .85s cubic-bezier(.2,.7,.2,1); }
html.motion-ready [data-reveal="dream"] { transform: translateY(20px) scale(.985); }
html.motion-ready [data-reveal].is-visible { opacity: 1; transform: none; }
html.motion-ready .step-card { transition: opacity .75s ease, transform .85s cubic-bezier(.2,.7,.2,1), border-color .35s ease, box-shadow .35s ease; }
html.motion-ready .module-row { transition: opacity .75s ease, transform .85s cubic-bezier(.2,.7,.2,1), padding .3s ease, background .3s ease, border-color .3s ease; }
html.motion-ready .offer-card { transition: opacity .75s ease, transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s ease; }
html.motion-ready .step-card:nth-child(2) { transition-delay: 90ms; }
html.motion-ready .step-card:nth-child(3) { transition-delay: 180ms; }
html.motion-ready .module-row:nth-child(2) { transition-delay: 35ms; }
html.motion-ready .module-row:nth-child(3) { transition-delay: 70ms; }
html.motion-ready .module-row:nth-child(4) { transition-delay: 105ms; }
html.motion-ready .module-row:nth-child(5) { transition-delay: 140ms; }
html.motion-ready .module-row:nth-child(6) { transition-delay: 175ms; }
html.motion-ready .module-row:nth-child(7) { transition-delay: 210ms; }
html.motion-ready .module-row:nth-child(8) { transition-delay: 245ms; }
html.motion-ready .step-card.is-visible:hover { transform: translateY(-3px); }

@keyframes moon-breathe { 0%, 100% { box-shadow: 0 0 36px 6px rgba(226,208,220,.25), 0 0 110px 23px rgba(174,142,216,.22); } 50% { box-shadow: 0 0 52px 10px rgba(226,208,220,.32), 0 0 145px 34px rgba(174,142,216,.3); } }
@keyframes halo-breathe { 0%, 100% { opacity: .58; transform: translate(-50%,-50%) scale(.98); } 50% { opacity: 1; transform: translate(-50%,-50%) scale(1.035); } }
@keyframes orbit-one { from { transform: translate(-50%,-50%) rotate(-24deg); } to { transform: translate(-50%,-50%) rotate(336deg); } }
@keyframes orbit-two { from { transform: translate(-50%,-50%) rotate(24deg); } to { transform: translate(-50%,-50%) rotate(-336deg); } }
@keyframes star-glint { 0%, 100% { opacity: .66; transform: scale(.86) rotate(-5deg); } 50% { opacity: 1; transform: scale(1.18) rotate(9deg); } }
@keyframes dream-veil { 0%, 100% { opacity: .48; } 50% { opacity: .82; } }

@media (max-width: 680px) {
  .scroll-progress { height: 2px; }
  .dream-art::after { inset: -8%; }
  .offer-card:hover { transform: translateY(-2px); }
  html.motion-ready [data-reveal] { transform: translateY(18px); }
  html.motion-ready [data-reveal="dream"] { transform: translateY(16px) scale(.99); }
}
@media (prefers-reduced-motion: reduce) {
  html.motion-ready [data-reveal], html.motion-ready [data-reveal="dream"] { opacity: 1; transform: none; transition: none; }
  .art-moon, .art-halo, .orbit-one, .orbit-two, .art-spark, .dream-art::after { animation: none !important; }
  .button::after { display: none; }
}

.access-inner { grid-template-columns: .72fr 1.28fr; gap: 7%; }
.offer-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; align-items: stretch; }
.offer-options-single { grid-template-columns: minmax(0, 1fr); max-width: 500px; width: 100%; justify-self: end; }
.hero-offer-copy del { color: #9b98a5; font-size: 9px; text-decoration-color: rgba(217,187,143,.8); }
.offer-card { display: flex; flex-direction: column; padding: 22px 19px 18px; border: 1px solid rgba(34,29,49,.12); }
.offer-card-featured { border-color: rgba(130,110,170,.46); background: linear-gradient(150deg, #f3efe6, #e9e2d8); box-shadow: 0 25px 90px rgba(0,0,0,.3), 0 0 0 2px rgba(184,165,232,.11); }
.offer-card-top { font-size: 7px; letter-spacing: .11em; gap: 8px; }
.offer-label { font-size: 7px; }
.offer-card h3 { font-size: 23px; margin: 18px 0 8px; }
.offer-card > p:not(.offer-foot) { font-size: 9.3px; line-height: 1.65; margin-bottom: 15px; }
.offer-price-block { padding: 10px 0; margin-bottom: 9px; }
.offer-price-block > div:first-child { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; }
.price-values { display: flex; align-items: baseline; justify-content: flex-start; gap: 9px; line-height: 1; }
.price-values strong { font-size: clamp(38px, 5vw, 44px); letter-spacing: -.045em; }
.price-values del { font-size: clamp(20px, 3vw, 23px); text-decoration-thickness: 1.5px; }
.offer-card ul { flex: 1; margin-bottom: 15px; }
.offer-card li { padding: 7px 0; font-size: 9px; line-height: 1.5; }
.offer-card .button { min-height: 58px; font-size: 11px; letter-spacing: .06em; gap: 12px; padding-inline: 20px; }
.offer-card .button-light { justify-content: center; position: relative; }
.offer-card .button-light > span { position: absolute; top: 50%; right: 20px; transform: translateY(-50%); }
.offer-card .button-light:hover > span { transform: translateY(-50%); }
.offer-foot { font-size: 7px; margin-top: 9px; }

.hero-offer-copy strong { font-size: 13px; }
.hero-offer-copy { font-size: 10px; }
.hero-offer { appearance: none; font: inherit; color: inherit; text-align: left; text-decoration: none; cursor: pointer; transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
.hero-offer:hover { transform: translateY(-2px); border-color: rgba(217,187,143,.68); box-shadow: 0 12px 34px rgba(0,0,0,.22), 0 0 26px rgba(217,187,143,.08); }
.hero-offer:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.access-inner { grid-template-columns: minmax(0, .88fr) minmax(360px, 1.12fr); gap: 7%; }
.access-copy { max-width: 520px; }
.access-copy .access-intro { color: #aaa7b5; font-size: 12px; line-height: 1.85; max-width: 440px; margin: 0 0 23px; }
.purchase-journey { list-style: none; display: grid; gap: 0; margin: 0 0 22px; padding: 0; border-top: 1px solid var(--line); }
.purchase-journey li { display: grid; grid-template-columns: 34px 1fr; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.journey-number { color: var(--gold); font-size: 9px; letter-spacing: .12em; padding-top: 2px; }
.purchase-journey li > span:last-child { display: grid; gap: 3px; }
.purchase-journey strong { font-family: var(--serif); font-size: 17px; font-weight: 400; }
.purchase-journey small { color: #92909f; font-size: 9px; line-height: 1.6; }
.intention-card { display: grid; grid-template-columns: 22px 1fr; gap: 10px; padding: 15px 16px; border: 1px solid rgba(217,187,143,.24); background: linear-gradient(115deg, rgba(217,187,143,.07), rgba(184,165,232,.055)); }
.intention-mark { color: var(--gold); font-size: 17px; padding-top: 1px; }
.intention-label { color: var(--gold); font-size: 8px; letter-spacing: .14em; text-transform: uppercase; }
.intention-card p { margin: 0; }
.intention-card .intention-quote { font-family: var(--serif); font-size: 17px; line-height: 1.45; margin: 8px 0 13px; }
.intention-card .intention-body { color: #a5a1af; font-size: 10px; line-height: 1.75; margin: 0 0 11px; }
.intention-card .intention-principle { border-left: 1px solid var(--gold); padding: 3px 0 3px 11px; color: var(--cream); font-family: var(--serif); font-size: 12px; line-height: 1.6; margin: 11px 0; }
.intention-card .intention-principle strong { font-weight: 500; }
.intention-card .intention-closing { margin-bottom: 0; }
.intention-card small { display: block; color: #a5a1af; font-size: 9px; line-height: 1.7; }
.offer-foot { font-size: 8px; line-height: 1.65; }

@media (max-width: 900px) {
  .access-inner { grid-template-columns: 1fr; gap: 32px; align-items: start; }
  .access-copy .access-intro { max-width: 560px; }
  .access-copy { max-width: 620px; }
  .offer-options-single { justify-self: start; max-width: 560px; }
}
@media (max-width: 680px) {
  .access-inner { padding-block: 66px; }
  .access-copy h2 { font-size: clamp(45px, 12vw, 62px); }
  .purchase-journey li { grid-template-columns: 30px 1fr; }
  .intention-card { padding: 14px 13px; }
  .offer-options { grid-template-columns: 1fr; max-width: 440px; margin-inline: auto; width: 100%; }
  .offer-card { padding: 24px; }
  .offer-card h3 { font-size: 25px; }
  .offer-card li { font-size: 10px; }
.offer-card .button { font-size: 11px; }
}

.checkout-dialog { width: min(520px, calc(100% - 32px)); max-width: none; max-height: min(90vh, 760px); overflow: auto; margin: auto; padding: 28px; border: 1px solid rgba(217,187,143,.38); color: var(--cream); background: radial-gradient(ellipse at 92% 0%, rgba(113,82,150,.23), transparent 42%), #111424; box-shadow: 0 28px 100px rgba(0,0,0,.58); }
.checkout-dialog::backdrop { background: rgba(5,7,15,.76); backdrop-filter: blur(8px); }
.checkout-dialog-head { display: flex; justify-content: space-between; align-items: start; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.checkout-dialog-head .eyebrow { margin-bottom: 8px; }
.checkout-dialog-head h2 { font-size: clamp(34px, 8vw, 49px); line-height: 1.03; margin: 0; }
.checkout-close { flex: 0 0 38px; width: 38px; height: 38px; border: 1px solid var(--line); background: transparent; color: var(--cream); font-size: 23px; line-height: 1; cursor: pointer; }
.checkout-intro { color: #aaa7b5; font-size: 11px; line-height: 1.75; margin: 17px 0; }
.checkout-form { display: grid; gap: 13px; }
.checkout-form label { display: grid; gap: 6px; color: #d8d2c9; font-size: 10px; letter-spacing: .04em; }
.checkout-form input { min-height: 45px; width: 100%; border: 1px solid rgba(231,222,203,.22); border-radius: 0; padding: 10px 12px; background: rgba(255,255,255,.035); color: var(--cream); font: inherit; font-size: 13px; outline: none; }
.checkout-form input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(217,187,143,.12); }
.checkout-data-note { color: #92909f; font-size: 9px; line-height: 1.7; margin: 0; }
.checkout-error { color: #f0b4b4; font-size: 10px; line-height: 1.6; margin: 0; }
.checkout-submit { width: 100%; display: flex; justify-content: space-between; align-items: center; margin-top: 2px; }
.checkout-submit:disabled { cursor: progress; opacity: .68; }
@media (max-width: 680px) { .checkout-dialog { padding: 23px 19px; } }

.checkout-form label.checkout-check { display: flex; align-items: flex-start; gap: 10px; color: #bcb9c5; font-size: 10px; line-height: 1.65; letter-spacing: 0; }
.checkout-form .checkout-check input { flex: 0 0 16px; width: 16px; min-height: 16px; height: 16px; margin: 2px 0 0; accent-color: var(--lilac); }
.checkout-check a, .checkout-data-note a { color: var(--lilac); text-decoration: underline; text-underline-offset: 3px; }
.checkout-price-note strong { color: var(--cream); font-size: 11px; }

.legal-header { min-height: 82px; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.legal-nav, .legal-footer { display: flex; flex-wrap: wrap; align-items: center; gap: 19px; color: #aaa7b5; font-size: 10px; }
.legal-nav a:hover, .legal-footer a:hover, .legal-back:hover { color: var(--lilac); }
.legal-nav a[aria-current="page"] { color: var(--cream); }
.legal-page { max-width: 900px; padding-block: 44px 82px; }
.legal-back { display: inline-block; color: #aaa7b5; font-size: 11px; margin-bottom: 42px; }
.legal-page > .eyebrow { margin-bottom: 13px; }
.legal-page h1 { max-width: 760px; font-family: var(--serif); font-size: clamp(50px, 8vw, 84px); font-weight: 400; letter-spacing: -.045em; line-height: .98; margin: 0 0 22px; }
.legal-page h1 em { color: var(--lilac); font-weight: 400; }
.legal-lede { max-width: 680px; margin: 0 0 30px; color: #aaa7b5; font-size: 14px; line-height: 1.85; }
.legal-content { max-width: 740px; color: #c4c1cd; font-size: 13px; line-height: 1.85; }
.legal-content h2 { margin: 38px 0 10px; color: var(--cream); font-family: var(--serif); font-size: 25px; font-weight: 400; line-height: 1.2; }
.legal-content p { margin: 0 0 14px; }
.legal-content ul { padding-left: 22px; margin: 0 0 19px; }
.legal-content li { padding-left: 4px; margin: 0 0 8px; }
.legal-content a { color: var(--lilac); text-decoration: underline; text-underline-offset: 3px; }
.legal-meta { color: #888592; font-size: 10px; margin-top: 32px !important; }
.legal-links { display: flex; flex-wrap: wrap; gap: 14px; color: #8e8c99; font-size: 9px; }
.legal-links a:hover { color: var(--lilac); }
.legal-footer { justify-content: center; gap: 12px 20px; padding-block: 24px 32px; border-top: 1px solid var(--line); }
.operator-details { flex: 0 0 100%; border-top: 1px solid var(--line); padding-top: 12px; color: #858391; font-size: 9px; line-height: 1.7; }
.operator-details a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.legal-footer .operator-details { border-top: 0; padding-top: 4px; text-align: center; }
@media (max-width: 680px) {
  .legal-header { align-items: flex-start; flex-direction: column; justify-content: center; padding-block: 17px; gap: 12px; }
  .legal-nav { gap: 14px; }
  .legal-page { padding-block: 31px 58px; }
  .legal-back { margin-bottom: 32px; }
  .legal-content { font-size: 12px; }
  .legal-content h2 { font-size: 22px; }
  .legal-footer { justify-content: flex-start; gap: 12px 18px; }
}

@media (max-width: 430px) {
  .footer-main { grid-template-columns: 1fr; gap: 23px; }
  .footer-brand-block { grid-column: auto; display: grid; align-items: start; gap: 8px; padding-bottom: 0; border-bottom: 0; }
  .footer-contact-block { gap: 8px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; gap: 10px; }
}

.success-page { min-height: 100vh; display: flex; flex-direction: column; }
.success-page > .brand { min-height: 88px; display: inline-flex; align-items: center; align-self: flex-start; text-decoration: none; }
.success-card { width: min(680px, 100%); margin: auto; padding: 50px 0 90px; text-align: center; }
.success-card .quote-star { display: block; color: var(--gold); font-size: 25px; margin-bottom: 14px; }
.success-card .eyebrow { margin-bottom: 14px; }
.success-card h1 { font-size: clamp(50px, 9vw, 88px); line-height: .98; margin-bottom: 24px; }
.success-card > p:not(.eyebrow) { max-width: 520px; margin: 0 auto 27px; color: #aaa7b5; font-size: 13px; line-height: 1.9; }

.cookie-notice { position: fixed; z-index: 30; left: 50%; bottom: 16px; transform: translateX(-50%); width: min(780px, calc(100% - 32px)); display: flex; align-items: center; gap: 18px; padding: 12px 14px 12px 18px; border: 1px solid rgba(217,187,143,.34); color: var(--cream); background: rgba(17,20,36,.97); box-shadow: 0 12px 42px rgba(0,0,0,.32); }
.cookie-notice.is-dismissed { display: none; }
.cookie-notice p { margin: 0; flex: 1; color: #b9b6c3; font-size: 11px; line-height: 1.65; }
.cookie-notice p strong { color: var(--cream); }
.cookie-notice p a { color: var(--lilac); text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.cookie-notice-accept { flex: 0 0 auto; min-width: 58px; min-height: 36px; padding: 0 13px; border: 1px solid rgba(238,233,223,.35); background: transparent; color: var(--cream); font-size: 11px; cursor: pointer; }
.cookie-notice-accept:hover { border-color: var(--gold); color: var(--gold); }
.cookie-notice-accept:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
@media (max-width: 560px) { .cookie-notice { bottom: 10px; width: calc(100% - 20px); gap: 12px; padding: 11px 12px; } .cookie-notice p { font-size: 10px; } }

/* Icone disegnate con SVG/CSS: nessun glifo emoji dipendente dal dispositivo. */
.ui-icon { display: inline-block; width: 14px; height: 14px; flex: 0 0 auto; vertical-align: middle; }
.nav-cta .ui-icon { color: var(--gold); margin-left: 8px; }
.button .ui-icon { width: 15px; height: 15px; }
.button-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.button-icon .ui-icon { width: 14px; height: 14px; }
.quiet-link .ui-icon { color: var(--gold); margin-left: 6px; }
.text-link .ui-icon { color: var(--gold); margin-left: 12px; }
.step-foot .ui-icon { color: var(--gold); width: 12px; height: 12px; }
.site-footer .back-top .ui-icon { color: var(--gold); width: 13px; height: 13px; }
.legal-back { display: inline-flex; align-items: center; gap: 8px; }
.legal-back .ui-icon { width: 13px; height: 13px; }

.brand-mark, .eyebrow-star, .quote-star, .intention-mark, .offer-list-mark, .offer-brand-mark, .icon-star, .hero-offer-price, .art-spark, .module-symbol {
  display: inline-block;
  flex: 0 0 auto;
  background-color: currentColor;
  clip-path: polygon(50% 0%, 59% 35%, 85% 14%, 65% 41%, 100% 50%, 65% 59%, 85% 86%, 59% 65%, 50% 100%, 41% 65%, 15% 86%, 35% 59%, 0% 50%, 35% 41%, 15% 14%, 41% 35%);
}
.brand-mark { width: 22px; height: 22px; color: var(--gold); }
.site-footer .brand-mark { width: 20px; height: 20px; }
.eyebrow-star { width: 13px; height: 13px; margin-right: 8px; color: currentColor; vertical-align: -2px; }
.quote-star { width: 18px; height: 18px; color: var(--gold); }
.success-card .quote-star { width: 25px; height: 25px; }
.intention-mark { width: 16px; height: 16px; padding: 0; color: var(--gold); clip-path: polygon(50% 0%, 61% 39%, 100% 50%, 61% 61%, 50% 100%, 39% 61%, 0% 50%, 39% 39%); }
.offer-list-mark { width: 10px; height: 10px; margin-right: 8px; color: #826eaa; vertical-align: -1px; }
.offer-brand-mark { width: 10px; height: 10px; color: var(--gold); vertical-align: -1px; }
.icon-star { width: 44px; height: 44px; min-height: 44px; color: var(--lavender); }
.hero-offer-price { width: 18px; height: 18px; color: var(--lilac); clip-path: polygon(50% 0%, 61% 39%, 100% 50%, 61% 61%, 50% 100%, 39% 61%, 0% 50%, 39% 39%); }
.art-spark { width: 12px; height: 12px; font-size: 0; }
.spark-two { width: 18px; height: 18px; clip-path: polygon(50% 0%, 61% 39%, 100% 50%, 61% 61%, 50% 100%, 39% 61%, 0% 50%, 39% 39%); }
.spark-three { width: 4px; height: 4px; border-radius: 50%; clip-path: none; }
.module-symbol { width: 18px; height: 18px; font-size: 0; margin-left: auto; }
.module-symbol-sparkle { clip-path: polygon(50% 0%, 61% 39%, 100% 50%, 61% 61%, 50% 100%, 39% 61%, 0% 50%, 39% 39%); }
.module-symbol-orbit { position: relative; border: 1px solid currentColor; border-radius: 50%; background: none; clip-path: none; }
.module-symbol-orbit::after { content: ''; position: absolute; top: 0; right: 0; width: 5px; height: 5px; border-radius: 50%; background: var(--gold); }
.module-symbol-crescent { clip-path: polygon(74% 0%, 63% 4%, 53% 11%, 45% 21%, 40% 33%, 39% 46%, 43% 59%, 50% 70%, 60% 79%, 72% 84%, 85% 85%, 98% 81%, 91% 90%, 80% 96%, 67% 100%, 53% 99%, 39% 94%, 27% 85%, 17% 73%, 11% 59%, 8% 44%, 11% 30%, 18% 18%, 28% 9%, 40% 3%, 54% 0%); }
.module-row:hover .module-symbol { text-shadow: none; filter: drop-shadow(0 0 7px rgba(217,187,143,.55)); }
.offer-card .button-light > .button-icon { justify-content: center; }
.offer-card .button-light .button-icon .ui-icon { color: var(--gold); }
.offer-card-featured { color: #191725; background: linear-gradient(150deg, #f4efe6, #e8dfd5); }
.offer-card-featured .offer-card-top, .offer-card-featured h3, .offer-card-featured li, .offer-card-featured .price-values strong { color: #211d2b; }
.offer-card-featured .offer-label { color: #5c5664; }
.offer-card-featured > p:not(.offer-foot) { color: #514b58; }
.offer-card-featured .price-values del { color: #706a76; }
.offer-card-featured .offer-foot { color: #5d5763; text-align: center; margin: 12px auto 0; width: 100%; }
.offer-card-featured .offer-price-block > div:first-child { width: 100%; }
.offer-card-featured .offer-urgency { display: block; justify-self: start; color: #624783; font-size: 9px; line-height: 1.5; }
.offer-card-featured .offer-urgency::before { content: ''; display: inline-block; width: 5px; height: 5px; margin: 0 7px 1px 0; border-radius: 50%; background: var(--gold); vertical-align: middle; }
.offer-card-featured .button-light { background: linear-gradient(110deg, #171622 0%, #252034 56%, #30253e 100%); color: #f5f0e7; }
.offer-card-featured .button-light:hover { background: linear-gradient(110deg, #211d2e 0%, #32263f 56%, #3b2c4b 100%); }
