/* Aelo referral journey: all content is visible before JavaScript and with reduced motion. */
.referral-journey{--reward-ink:#292323;--reward-wine:#5b202d;--reward-champagne:#b59a74;position:relative;background:#f4efe6;color:var(--reward-ink);padding:100px var(--gutter) 70px;overflow:clip}
.referral-heading{max-width:1260px;margin:0 auto 42px;display:flex;justify-content:space-between;align-items:flex-end;gap:50px}.referral-heading h2{font-size:clamp(44px,5.5vw,80px);font-weight:500;line-height:1.04;letter-spacing:-.06em;margin-top:17px}.referral-heading h2 span{color:var(--reward-wine)}.referral-intro{max-width:285px;font-size:14px;line-height:1.8;padding-bottom:5px}.referral-nav{max-width:1260px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:17px 0;border-top:1px solid #cdbda5;border-bottom:1px solid #cdbda5}.referral-nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.referral-nav-stops{display:flex;gap:clamp(15px,3vw,48px)}.referral-nav a{min-width:44px;min-height:44px;display:grid;place-items:center;font-size:13px;position:relative}.referral-nav a::after{content:'';position:absolute;bottom:3px;width:4px;height:4px;border-radius:50%;background:var(--reward-wine);opacity:0}.referral-nav a[aria-current=location]{color:var(--reward-wine);font-weight:800}.referral-nav a[aria-current=location]::after{opacity:1}.referral-nav a:hover{color:var(--reward-wine)}
.referral-stages{position:relative;max-width:1260px;margin:0 auto}.referral-trace{position:absolute;left:0;top:0;width:80px;height:100%;overflow:visible;pointer-events:none}.referral-trace path{fill:none;stroke-width:1.3;vector-effect:non-scaling-stroke}.referral-trace-base{stroke:#d4c4ad}.referral-trace-progress{stroke:#7c4d41}.referral-stage{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(35px,6vw,100px);padding:63px 0 63px 110px;min-height:380px;scroll-margin-top:35px}.referral-waypoint{position:absolute;left:35px;top:50%;width:10px;height:10px;transform:translateY(-50%);background:#f4efe6;border:1px solid var(--reward-champagne);border-radius:50%;box-shadow:0 0 0 7px #f4efe6;z-index:1;transition:background .35s,box-shadow .35s,border-color .35s}.referral-stage.is-in-view .referral-waypoint{background:var(--reward-wine);border-color:var(--reward-wine);box-shadow:0 0 0 7px #f4efe6,0 0 0 8px #c0a17b}.referral-copy{position:relative;z-index:1}.referral-threshold{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;display:flex;align-items:center;gap:16px;margin-bottom:20px;color:#706259}.referral-threshold>span{font-size:18px;letter-spacing:-.025em;color:var(--reward-wine);min-width:34px}.referral-copy h3{font-size:clamp(31px,3.6vw,51px);font-weight:500;letter-spacing:-.052em;line-height:1.08;margin:0 0 20px}.referral-copy>p:not(.referral-threshold){font-size:14px;line-height:1.8;max-width:310px;color:#6c5d55}.referral-copy .text-link{margin-top:19px;font-size:12px}.referral-art{width:100%;max-width:430px;justify-self:end;position:relative;will-change:transform;transform:translateY(var(--referral-lift,0px));transition:transform .5s ease}.referral-art-fine{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.referral-art-wordmark{font-size:46px;font-weight:800;letter-spacing:-3px}.referral-invitation{min-height:245px;padding:28px 34px;background:#fdfaf3;border:1px solid #ded2c0;box-shadow:10px 16px 32px #38241d09;transform:translateY(var(--referral-lift,0px)) rotate(-3deg)}.referral-invitation-rule{height:1px;background:#cdb898;margin:20px 0 18px;width:42px}.referral-invitation p{font-size:25px;letter-spacing:-.035em;margin-bottom:9px}.referral-invitation .referral-art-fine{color:#8d7969}.referral-art-arrow{position:absolute;right:29px;top:30px;font-size:32px;color:#8d7969}.referral-credit{aspect-ratio:1.6;background:#35191e;color:#eadac2;padding:28px 31px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 22px 40px #38241d12;overflow:hidden}.referral-credit::before{content:'';position:absolute;inset:9px;border:1px solid #bba08040}.referral-credit-amount{font-size:clamp(70px,9vw,132px);line-height:.9;font-weight:400;letter-spacing:-.085em;margin:14px 0 20px}.referral-credit-amount small{font-size:.42em;vertical-align:top;letter-spacing:-.06em;margin-right:9px;line-height:1.3}.referral-credit-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px}.referral-credit-bottom span:first-child{font-size:21px;font-weight:800;letter-spacing:-1.4px}.referral-credit-bottom span:last-child{font-size:7px;letter-spacing:.14em}.referral-three{display:flex;align-items:center;gap:25px;min-height:225px;color:var(--reward-wine);border-top:1px solid #ccb699;border-bottom:1px solid #ccb699}.referral-three-number{font-size:clamp(90px,11vw,160px);line-height:1;font-weight:400;letter-spacing:-.09em}.referral-three-label{font-size:12px;text-transform:uppercase;line-height:1.8;letter-spacing:.1em;max-width:110px}.referral-three-line{position:absolute;top:-3px;right:0;width:40px;height:5px;background:var(--reward-wine)}
.referral-stage-kit{padding-top:70px;padding-bottom:75px}.referral-stage-kit h3{font-size:clamp(38px,4.6vw,66px);color:var(--reward-wine)}.referral-kit-detail{display:block;margin-top:23px;font-size:11px;line-height:1.8;color:#817166;max-width:270px}.referral-kit-gallery{min-width:0;width:100%;max-width:440px;justify-self:end}.referral-kit-image{background:#ececee;aspect-ratio:4/5;overflow:hidden;box-shadow:0 18px 48px #38241d0c}.referral-kit-image img{display:block;width:100%;height:100%;object-fit:contain;transform:translateY(var(--referral-lift,0px));transition:transform .55s ease}.referral-kit-views{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:14px}.referral-kit-view-label,.referral-kit-view-name{font-size:10px;color:#6f625c}.referral-kit-view-name{text-align:right;min-width:46px}.referral-kit-swatches{display:flex;justify-content:center;gap:0}.referral-kit-swatches button{width:40px;height:44px;background:none;border:0;display:grid;place-items:center;padding:0}.referral-kit-swatches button span{display:block;width:19px;height:19px;background:var(--kit-color);border-radius:50%;border:1px solid #0002;outline:1px solid transparent;outline-offset:5px}.referral-kit-swatches button[aria-pressed=true] span{outline-color:#7c6657}.referral-kit-noscript{font-size:11px;line-height:1.7;margin-top:12px}.referral-kit-noscript a{text-decoration:underline}.referral-ambassador{min-height:285px;background:#282321;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;color:#dfc7a5}.referral-seal{width:166px;height:166px;border:1px solid #9f8263;outline:1px solid #9f82634d;outline-offset:9px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.referral-seal>span{font-size:8px;letter-spacing:.23em;text-transform:uppercase}.referral-seal strong{font-size:66px;font-weight:400;letter-spacing:-.055em;line-height:1}.referral-ambassador-note{font-family:Georgia,serif;font-style:italic;font-size:17px;letter-spacing:.01em}.referral-personal{border-top:1px solid #cdb898;border-bottom:1px solid #cdb898;min-height:270px;padding:25px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:var(--reward-wine)}.referral-personal-top{font-size:11px;letter-spacing:.02em}.referral-personal-route{display:flex;align-items:center;width:100%;margin:21px 0 14px}.referral-personal-route>span{width:9px;height:9px;border:1px solid #a68b69;border-radius:50%;flex:none}.referral-personal-route>span:last-child{background:var(--reward-wine);border-color:var(--reward-wine)}.referral-personal-route i{flex:1;height:1px;background:linear-gradient(90deg,#bfa483,#5b202d);margin:0 12px}.referral-personal strong{font-family:Georgia,serif;font-style:italic;font-size:clamp(42px,5vw,69px);font-weight:400;letter-spacing:-.045em;line-height:1.3}.referral-personal .referral-art-fine{font-size:8px;line-height:1.7;margin-top:11px;color:#8a715d}.referral-stage-finale{padding-bottom:75px}.referral-footer{max-width:1260px;margin:12px auto 0;border-top:1px solid #cdbda5;padding:36px 0 0;display:flex;gap:60px;justify-content:space-between}.referral-keep{font-size:21px;line-height:1.55;letter-spacing:-.025em}.referral-keep strong{font-weight:500;color:var(--reward-wine)}.referral-fineprint{max-width:430px;font-size:10px;line-height:1.8;color:#78695f}.referral-fineprint p{line-height:1.8}.referral-fineprint p+p{margin-top:9px}.referral-fineprint a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:1000px){.referral-stage{padding-left:83px;gap:35px}.referral-heading{gap:32px}.referral-intro{max-width:240px;font-size:12px}.referral-art{max-width:360px}.referral-copy h3{font-size:36px}.referral-kit-views{grid-template-columns:1fr auto}.referral-kit-view-label{grid-column:1}.referral-kit-swatches{grid-column:1;grid-row:2;justify-content:flex-start}.referral-kit-view-name{grid-row:2;grid-column:2}.referral-credit-bottom span:last-child{font-size:6px}}
@media(max-width:700px){.referral-journey{padding:58px 22px 45px}.referral-heading{display:block;margin-bottom:26px}.referral-heading h2{font-size:clamp(39px,10.8vw,54px);margin-top:13px}.referral-intro{max-width:310px;font-size:12px;margin-top:21px;padding:0;line-height:1.75}.referral-nav{display:block;padding:12px 0 9px}.referral-nav-label{font-size:8px;letter-spacing:.11em;display:block;margin:0 0 4px}.referral-nav-stops{justify-content:space-between;gap:0}.referral-nav a{font-size:11px;min-width:36px}.referral-trace{width:28px;left:-12px}.referral-stage{grid-template-columns:1fr 1fr;gap:18px;padding:37px 0 37px 25px;min-height:265px;align-items:center}.referral-waypoint{left:-3px;width:8px;height:8px;box-shadow:0 0 0 5px #f4efe6}.referral-stage.is-in-view .referral-waypoint{box-shadow:0 0 0 5px #f4efe6,0 0 0 6px #c0a17b}.referral-threshold{display:block;font-size:7px;letter-spacing:.06em;margin-bottom:12px;line-height:1.65}.referral-threshold>span{display:block;font-size:17px;line-height:1.35;margin-bottom:3px}.referral-copy h3{font-size:clamp(24px,6.4vw,31px);letter-spacing:-.05em;margin-bottom:12px;line-height:1.12}.referral-copy>p:not(.referral-threshold){font-size:11px;line-height:1.7}.referral-copy .text-link{margin-top:9px;font-size:10px;gap:12px}.referral-invitation{padding:18px 15px;min-height:170px}.referral-art-wordmark{font-size:31px;letter-spacing:-2px}.referral-art-arrow{top:17px;right:13px;font-size:23px}.referral-invitation-rule{margin:15px 0;width:25px}.referral-invitation p{font-size:17px;line-height:1.3}.referral-invitation .referral-art-fine{font-size:6px;line-height:1.7;display:block;letter-spacing:.06em}.referral-credit{aspect-ratio:auto;min-height:168px;padding:17px 16px}.referral-credit .referral-art-fine{font-size:7px}.referral-credit-amount{font-size:63px;letter-spacing:-.075em;margin:16px 0}.referral-credit-amount small{margin-right:5px}.referral-credit-bottom{display:block}.referral-credit-bottom span:first-child{font-size:16px;display:block}.referral-credit-bottom span:last-child{font-size:5px;display:block;line-height:1.8;letter-spacing:.08em;margin-top:3px}.referral-three{min-height:155px;display:block;padding:19px 0 16px}.referral-three-number{font-size:87px;display:block;line-height:.9}.referral-three-label{font-size:8px;line-height:1.5;display:block;margin-top:14px;letter-spacing:.07em}.referral-three-label br{display:none}.referral-stage-kit{grid-template-columns:1fr;padding-top:46px;padding-bottom:44px;gap:23px}.referral-stage-kit .referral-copy{padding-right:0}.referral-stage-kit h3{font-size:41px;margin-bottom:13px}.referral-stage-kit .referral-copy>p:not(.referral-threshold){font-size:12px}.referral-kit-detail{font-size:10px;margin-top:12px}.referral-kit-gallery{max-width:100%}.referral-kit-image{aspect-ratio:4/4.6}.referral-kit-image img{object-fit:contain}.referral-kit-views{grid-template-columns:auto 1fr auto;margin-top:8px}.referral-kit-view-label{grid-column:1;font-size:9px}.referral-kit-swatches{grid-column:2;grid-row:1;justify-content:center}.referral-kit-view-name{grid-row:1;grid-column:3;font-size:9px}.referral-kit-swatches button{width:32px;height:44px}.referral-kit-swatches button span{width:16px;height:16px;outline-offset:4px}.referral-ambassador{min-height:185px;gap:19px;padding:18px 7px}.referral-seal{width:103px;height:103px;outline-offset:5px;gap:6px}.referral-seal>span{font-size:5px;letter-spacing:.15em}.referral-seal strong{font-size:43px}.referral-ambassador-note{font-size:12px;text-align:center;line-height:1.35}.referral-personal{min-height:178px;padding:13px 0}.referral-personal-top{font-size:8px}.referral-personal strong{font-size:30px;line-height:1.3}.referral-personal-route{margin:20px 0 15px}.referral-personal-route>span{width:7px;height:7px}.referral-personal-route i{margin:0 7px}.referral-personal .referral-art-fine{font-size:6px;letter-spacing:.05em;line-height:1.8}.referral-stage-finale{padding-bottom:40px}.referral-footer{display:block;margin-top:0;padding-top:27px}.referral-keep{font-size:20px}.referral-fineprint{font-size:9px;margin-top:20px;max-width:100%}.referral-fineprint p+p{margin-top:11px}}
@media(max-width:360px){.referral-journey{padding-left:18px;padding-right:18px}.referral-stage{gap:13px;padding-left:23px}.referral-copy h3{font-size:23px}.referral-copy>p:not(.referral-threshold){font-size:10px}.referral-threshold{font-size:6px}.referral-credit-amount{font-size:56px}.referral-stage-kit h3{font-size:36px}.referral-kit-views{grid-template-columns:1fr auto}.referral-kit-view-label{grid-column:1}.referral-kit-swatches{grid-column:1;grid-row:2;justify-content:flex-start}.referral-kit-view-name{grid-column:2;grid-row:2}.referral-personal strong{font-size:27px}}
@media(prefers-reduced-motion:reduce){.referral-art,.referral-kit-image img{transform:none!important;transition:none!important}.referral-waypoint{transition:none!important}.referral-trace-progress{stroke-dasharray:none!important;stroke-dashoffset:0!important}}
/* Existing product photographs preserve the actual filter and tumbler geometry. */
.referral-filters{padding:18px 0;border-top:1px solid #cdb898;border-bottom:1px solid #cdb898}.referral-filter-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:center}.referral-filter-triptych img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.referral-filter-caption{display:flex;align-items:center;gap:20px;margin-top:19px;color:var(--reward-wine)}.referral-filter-caption strong{font-size:66px;font-weight:400;line-height:1;letter-spacing:-.08em}.referral-filter-caption span{font-size:11px;letter-spacing:.06em}.referral-ambassador-product{background:#282321;padding-bottom:10px}.referral-ambassador-product>img{width:100%;height:auto}.referral-founder-note{margin:0 20px 10px;padding:20px 3px 8px;color:#ead9c0;border-bottom:1px solid #bba08050}.referral-founder-note>span{font-family:Georgia,serif;font-style:italic;font-size:24px;display:block}.referral-founder-note small{display:block;font-size:9px;letter-spacing:.08em;margin-top:9px;color:#c3ab91}.referral-copy>.referral-delivery-note{font-size:10px!important;line-height:1.75!important;max-width:290px;margin-top:14px}.referral-delivery-note a{display:inline;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.referral-filter-triptych{gap:4px}.referral-filters{padding:12px 0}.referral-filter-caption{display:block;margin-top:13px}.referral-filter-caption strong{font-size:52px;display:block}.referral-filter-caption span{display:block;font-size:7px;letter-spacing:.04em;margin-top:8px}.referral-founder-note{margin:0 11px 8px;padding:13px 0 6px}.referral-founder-note>span{font-size:17px;line-height:1.3}.referral-founder-note small{font-size:6px;letter-spacing:.03em;line-height:1.6;margin-top:7px}.referral-copy>.referral-delivery-note{font-size:8px!important;line-height:1.65!important;margin-top:10px}.referral-stage-finale{min-height:310px}}
/* View-only swatches use the stylesheet, compatible with this preview's CSP. */
.referral-kit-swatches [data-kit=black] span{background:#272727}.referral-kit-swatches [data-kit=burgundy] span{background:#6a2538}.referral-kit-swatches [data-kit=blue] span{background:#b8ccdc}.referral-kit-swatches [data-kit=white] span{background:#efefec}
@media(min-width:701px){.referral-stage:nth-of-type(even) .referral-copy{grid-column:2;grid-row:1}.referral-stage:nth-of-type(even)>.referral-art,.referral-stage:nth-of-type(even)>.referral-kit-gallery{grid-column:1;grid-row:1;justify-self:start}.referral-stage-kit{grid-template-columns:1.1fr 1fr}}
@media(max-width:700px){.referral-stage{gap:20px;min-height:300px}.referral-copy>p:not(.referral-threshold){font-size:13px;line-height:1.65}.referral-threshold{font-size:9px;line-height:1.55;letter-spacing:.035em}.referral-threshold>span{font-size:19px;margin-bottom:5px}.referral-copy h3{font-size:27px;line-height:1.1}.referral-stage-kit h3{font-size:41px}.referral-stage-kit .referral-copy>p:not(.referral-threshold){font-size:14px}.referral-kit-detail{font-size:12px;line-height:1.6}.referral-copy .text-link{font-size:12px}.referral-copy>.referral-delivery-note{font-size:10px!important}.referral-fineprint{font-size:11px;line-height:1.7}.referral-intro{font-size:14px;line-height:1.7}.referral-nav-label{font-size:9px}.referral-stage-finale{min-height:360px}}
@media(max-width:360px){.referral-stage{grid-template-columns:1.07fr .93fr;gap:14px;min-height:315px}.referral-copy h3{font-size:25px}.referral-copy>p:not(.referral-threshold){font-size:13px}.referral-threshold{font-size:9px}.referral-stage-kit{grid-template-columns:1fr}.referral-stage-kit h3{font-size:36px}.referral-copy .text-link{font-size:11px}.referral-stage-finale{min-height:390px}}
.referral-traveler{fill:#5b202d;stroke:#f4efe6;stroke-width:4;vector-effect:non-scaling-stroke}.referral-footer-invite>.text-link{margin-top:14px;color:var(--reward-wine);font-size:12px}
@media(prefers-reduced-motion:reduce){.referral-traveler{display:none}}

/* September refinement: direct invitations, photographic rewards, and a distant finale. */
.referral-heading{align-items:center;gap:clamp(32px,5vw,76px);margin-bottom:48px}
.referral-heading>div:first-child{flex:1;min-width:0}
.referral-heading h2{font-size:clamp(44px,5.1vw,74px);margin-top:0}
.referral-entry{flex:0 1 440px;min-width:0}
.referral-intro{max-width:none;font-size:16px;line-height:1.65;padding:0;margin:0;text-wrap:pretty}
.referral-entry .signup-form,.referral-footer-invite .signup-form{max-width:450px;margin:23px 0 0;width:100%}
.referral-journey .signup-row{min-width:0}
.referral-journey .signup-row .button{flex-shrink:0;white-space:nowrap}
.referral-journey .signup-secondary{margin-top:4px}
.referral-copy>p.referral-value{display:inline-block;margin-top:20px;padding-top:10px;border-top:1px solid #cdbda5;font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;font-weight:600;color:var(--reward-wine)}
.referral-filters{padding:0;border:0;overflow:hidden;background:#f8f6f2}
.referral-filters>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.referral-ambassador-product{padding:0;background:#ede8df;overflow:hidden;max-width:420px}
.referral-ambassador-product>img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.referral-stage:has(.referral-ambassador-product){padding-top:85px;padding-bottom:90px}
.referral-footer{position:relative;z-index:2;align-items:center;gap:clamp(35px,6vw,85px);padding-top:52px;margin-top:40px}
.referral-footer-invite{flex:1;min-width:0;max-width:590px}
.referral-footer-invite h3{font-size:clamp(30px,3.3vw,48px);font-weight:500;line-height:1.1;letter-spacing:-.045em;max-width:590px}
.referral-footer-invite>p{font-size:15px;line-height:1.65;margin-top:15px;color:#6c5d55}
.referral-footer-invite .signup-form{max-width:450px}
.referral-fineprint{flex:0 1 345px;font-size:11px}

/* The long final approach is part of the reading flow, never a scroll lock. */
.referral-stage-finale{isolation:isolate;grid-template-columns:minmax(0,1fr);gap:40px;min-height:0;margin-top:210px;padding:80px 0 75px 110px;text-align:center}
.referral-stage-finale::before{content:'';position:absolute;inset:-160px calc(-1 * var(--gutter)) -30px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 37% 28% at 10% 35%,#fffefa 0%,#fffefaef 28%,#fffefa00 74%),radial-gradient(ellipse 42% 24% at 90% 54%,#fffcf8 0%,#fffcf8e8 32%,#fffcf800 75%),radial-gradient(ellipse 65% 48% at 52% 45%,#e8dce554 0%,#eee6e540 55%,#f4efe600 100%),linear-gradient(180deg,#f4efe600 0%,#faf7f1 24%,#fbf8f4 66%,#f4efe600 100%)}
.referral-stage-finale::after{content:'';position:absolute;inset:-60px -5% 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 45% 17% at 17% 17%,#ffffffb8 0%,#fff0 75%),radial-gradient(ellipse 45% 15% at 86% 23%,#ffffff90 0%,#fff0 80%);filter:blur(15px)}
.referral-stage-finale .referral-copy{grid-column:1!important;grid-row:1!important;justify-self:center;width:100%;max-width:800px}
.referral-stage-finale .referral-finale-kicker{font-family:Georgia,serif;font-style:italic;font-size:20px!important;line-height:1.5!important;letter-spacing:-.025em;max-width:none!important;margin:0 0 36px;color:#836273!important}
.referral-stage-finale .referral-threshold{display:flex;flex-direction:column;gap:10px;margin-bottom:26px;font-size:10px;letter-spacing:.18em;color:#795d63}
.referral-stage-finale .referral-threshold>span{font-size:clamp(68px,8.8vw,118px);font-weight:400;letter-spacing:-.085em;line-height:1;color:var(--reward-wine);margin:0}
.referral-stage-finale h3{font-size:clamp(41px,4.4vw,66px);margin-bottom:18px;letter-spacing:-.06em;line-height:1.03}
.referral-stage-finale .referral-copy>p:not(.referral-threshold):not(.referral-finale-kicker){max-width:450px;margin-left:auto;margin-right:auto;font-size:16px;line-height:1.7}
.referral-stage-finale .referral-copy>.referral-delivery-note{max-width:420px!important;font-size:11px!important;line-height:1.75!important;margin-top:20px}
.referral-stage-finale>.referral-personal{grid-column:1!important;grid-row:2!important;justify-self:center!important;max-width:940px;padding:0;border:0;min-height:0;display:block;background:none;box-shadow:none;transform:none}
.referral-personal>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;mask-image:linear-gradient(180deg,#000 0%,#000 83%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 83%,transparent 100%)}
.referral-stage-finale .referral-waypoint{top:190px;background:#fcf9f5;box-shadow:0 0 0 8px #fcf9f5}
.referral-stage-finale.is-in-view .referral-waypoint{background:var(--reward-wine);box-shadow:0 0 0 8px #fcf9f5,0 0 0 9px #c0a17b}

@media(min-width:701px) and (max-width:1000px){
 .referral-heading{align-items:start;gap:28px}
 .referral-heading h2{font-size:clamp(43px,5.5vw,56px)}
 .referral-entry{flex-basis:45%}
 .referral-intro{font-size:14px}
 .referral-entry .signup-row,.referral-footer-invite .signup-row{gap:7px}
 .referral-journey .signup-row input{padding:15px 11px}
 .referral-journey .signup-row .button{padding:15px 13px;gap:13px;font-size:12px}
 .referral-stage-finale{padding-left:83px;margin-top:170px}
 .referral-stage:has(.referral-ambassador-product){padding-top:65px;padding-bottom:60px}
 .referral-footer{gap:36px}
 .referral-fineprint{flex-basis:32%}
}
@media(max-width:700px){
 .referral-heading{margin-bottom:30px}
 .referral-heading h2{font-size:clamp(39px,10.8vw,54px);margin-top:0}
 .referral-entry{margin-top:24px;max-width:450px}
 .referral-intro{font-size:15px;line-height:1.7;max-width:none;margin:0}
 .referral-entry .signup-form,.referral-footer-invite .signup-form{margin-top:20px;max-width:none}
 .referral-journey .signup-row input{padding-left:12px;padding-right:12px;font-size:16px}
 .referral-journey .signup-row .button{padding:15px 17px;gap:16px;font-size:12px}
 .referral-copy>p.referral-value{font-size:10px;line-height:1.5;margin-top:16px;padding-top:9px}
 .referral-filters{padding:0}
 .referral-filters>img{aspect-ratio:4/3}
 .referral-stage:has(.referral-ambassador-product){grid-template-columns:1fr;padding-top:50px;padding-bottom:45px;gap:25px}
 .referral-stage:has(.referral-ambassador-product) .referral-copy{max-width:340px}
 .referral-stage:has(.referral-ambassador-product) h3{font-size:38px}
 .referral-stage:has(.referral-ambassador-product) .referral-copy>p:not(.referral-threshold){font-size:14px}
 .referral-ambassador-product{max-width:100%}
 .referral-stage-finale{grid-template-columns:minmax(0,1fr);gap:30px;margin-top:125px;padding:45px 0 35px 25px;min-height:0}
 .referral-stage-finale::before{inset:-100px -40px -20px;background:radial-gradient(ellipse 80% 20% at 0% 35%,#fffdf9f0 0%,#fffdf900 78%),radial-gradient(ellipse 75% 23% at 100% 46%,#fffaf8 0%,#fffaf800 75%),radial-gradient(ellipse 90% 50% at 55% 43%,#e5d9e452 0%,#f4efe600 100%),linear-gradient(180deg,#f4efe600 0%,#fcf9f4 25%,#fcf9f4 75%,#f4efe600 100%)}
 .referral-stage-finale::after{inset:-70px -25px 0;filter:blur(10px)}
 .referral-stage-finale .referral-finale-kicker{font-size:17px!important;margin-bottom:29px;max-width:240px!important;margin-left:auto;margin-right:auto}
 .referral-stage-finale .referral-threshold{font-size:9px;gap:10px;letter-spacing:.15em;margin-bottom:24px}
 .referral-stage-finale .referral-threshold>span{font-size:80px;line-height:1;margin:0}
 .referral-stage-finale h3{font-size:clamp(36px,9.8vw,48px);line-height:1.05;margin-bottom:16px}
 .referral-stage-finale .referral-copy>p:not(.referral-threshold):not(.referral-finale-kicker){font-size:14px;line-height:1.65;max-width:290px}
 .referral-stage-finale .referral-copy>.referral-delivery-note{font-size:10px!important;max-width:280px!important;margin-top:16px}
 .referral-stage-finale .referral-waypoint{top:145px;box-shadow:0 0 0 6px #fcf9f5}
 .referral-stage-finale.is-in-view .referral-waypoint{box-shadow:0 0 0 6px #fcf9f5,0 0 0 7px #c0a17b}
 .referral-personal>img{aspect-ratio:3/2}
 .referral-footer{display:block;margin-top:25px;padding-top:32px}
 .referral-footer-invite{max-width:450px}
 .referral-footer-invite h3{font-size:clamp(31px,8vw,40px);line-height:1.12}
 .referral-footer-invite>p{font-size:14px;margin-top:14px}
 .referral-fineprint{margin-top:27px;padding-top:22px;border-top:1px solid #d9cbb8;max-width:none;font-size:11px}
}
@media(max-width:360px){
 .referral-journey .signup-row .button{padding-left:12px;padding-right:12px;gap:10px;font-size:11px}
 .referral-journey .signup-row input{padding-left:10px;padding-right:10px}
 .referral-stage:has(.referral-ambassador-product) h3{font-size:34px}
 .referral-stage-finale{grid-template-columns:minmax(0,1fr);padding-left:23px;margin-top:105px;min-height:0}
 .referral-stage-finale h3{font-size:34px}
 .referral-stage-finale .referral-threshold>span{font-size:73px}
}
.referral-stage .referral-copy>p.referral-value{font-size:11px;line-height:1.5}
@media(max-width:700px){.referral-stage .referral-copy>p.referral-value{font-size:10px}}
@media(max-width:700px){
 .referral-stage:has(.referral-filters){grid-template-columns:1fr;gap:24px;padding-top:47px;padding-bottom:44px}
 .referral-stage:has(.referral-filters) .referral-copy{max-width:340px}
 .referral-stage:has(.referral-filters) h3{font-size:clamp(32px,8.5vw,41px);line-height:1.08}
 .referral-stage:has(.referral-filters) .referral-copy>p:not(.referral-threshold):not(.referral-value){font-size:14px}
 .referral-filters{max-width:100%}
}
/* Preserve the complete generated product scenes at their delivered aspect ratios. */
.referral-filters>img,.referral-ambassador-product>img,.referral-personal>img{aspect-ratio:auto;height:auto;object-fit:contain}
/* Reserve lazy photographs before download so in-page links keep their destination. */
.referral-filters>img{aspect-ratio:1122 / 1402}
.referral-ambassador-product>img{aspect-ratio:949 / 1658}
.referral-delivery-note a{white-space:nowrap}
/* Give the rewards ladder its own dominant title. */
.referral-heading h2 { font-size: clamp(46px, 5.8vw, 84px); line-height: 1.04; letter-spacing: -.055em; text-wrap: balance; margin: 0; }
.referral-heading-subtitle { font-size: clamp(23px, 2.6vw, 36px); line-height: 1.25; letter-spacing: -.035em; margin-top: 26px; font-weight: 500; }
.referral-heading-subtitle span { color: var(--reward-wine); }
/* Color swatches, arrows and dragging all navigate the same image strip. */
.referral-kit-image { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.referral-kit-image::-webkit-scrollbar { display: none; }
.referral-kit-image.is-enhanced { touch-action: pan-y pinch-zoom; scroll-snap-type: none; scroll-behavior: auto; }
.referral-kit-image .kit-slide { flex: 0 0 100%; min-width: 0; height: 100%; scroll-snap-align: center; }
.referral-kit-image img { transform: none; transition: none; user-select: none; -webkit-user-drag: none; }
.referral-kit-image.is-dragging { cursor: grabbing; user-select: none; -webkit-user-select: none; }
.referral-kit-meta { display: flex; justify-content: space-between; align-items: center; margin-top: 16px; }
.referral-kit-gallery .referral-kit-views { display: grid; grid-template-columns: 44px minmax(0,1fr) 44px; gap: 4px; align-items: center; margin-top: 8px; }
.referral-kit-gallery .referral-kit-swatches { grid-column: 2; grid-row: 1; justify-content: center; }
.kit-arrow { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #c9b9aa; border-radius: 50%; color: var(--reward-wine); background: transparent; font-size: 24px; transition: background .2s, opacity .2s; }
.kit-arrow:hover:not(:disabled) { background: #eee5d9; border-color: var(--reward-wine); }
.kit-arrow:disabled { opacity: .3; }
@media (hover:hover) and (pointer:fine) { .referral-kit-image { cursor: grab; } .referral-kit-image.is-dragging { cursor: grabbing; } }
@media (max-width:700px) { .referral-heading h2 { font-size: clamp(40px, 11.8vw, 58px); } .referral-heading-subtitle { font-size: clamp(23px, 6.5vw, 30px); margin-top: 23px; } }
@media (prefers-reduced-motion:reduce) { .kit-arrow { transition: none; } }
/* Center the final milestone on the page, independently of the timeline rail. */
.referral-footer-invite { text-align: center; margin-inline: auto; }
.referral-footer-invite h3 { text-wrap: balance; }
.referral-prelaunch-only { color: var(--reward-wine); }
@media (min-width:701px) {
 .referral-stage-finale { padding-left: 0; padding-right: 0; }
 .referral-footer { justify-content: center; text-align: center; }
 .referral-footer-invite .signup-form { margin-left: auto; margin-right: auto; }
}

/* A text-only final milestone flows directly into the invitation. */
.referral-stage-finale { margin-top: 40px; padding-top: 64px; padding-bottom: 48px; }
.referral-stage-finale::before, .referral-stage-finale::after { content: none; }
.referral-stage-finale .referral-waypoint { background-color: #f4efe6; box-shadow: 0 0 0 8px #f4efe6; }
.referral-stage-finale.is-in-view .referral-waypoint { background-color: var(--reward-wine); box-shadow: 0 0 0 8px #f4efe6, 0 0 0 9px #c0a17b; }
.referral-footer { margin-top: 0; padding-top: 44px; }
@media (max-width:700px) {
 .referral-stage-finale { margin-top: 20px; padding-top: 40px; padding-bottom: 36px; }
 .referral-footer { margin-top: 0; padding-top: 32px; }
}
