@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#171b19;--muted:#66716b;--forest:#143f35;--green:#1d6751;--cream:#f7f6f1;--line:#e4e7e1;--white:#fff;--gold:#c7a46b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}header{background:#fff;border-bottom:1px solid var(--line)}.container{max-width:1080px;margin:auto;padding-left:25px;padding-right:25px}.bar{height:80px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{font-size:22px;font-weight:800;letter-spacing:-.075em;white-space:nowrap}.brand span{letter-spacing:.025em;font-size:12px;margin-left:10px;font-weight:700;color:var(--forest)}.location{font-size:11px;color:#6c7770;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.hero{background:var(--forest);color:#fff;overflow:hidden;position:relative}.hero:after{content:'';position:absolute;width:480px;height:480px;right:-180px;top:-140px;border:1px solid #ffffff26;border-radius:50%;box-shadow:0 0 0 75px #ffffff08,0 0 0 150px #ffffff08;pointer-events:none}.hero-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;padding-top:70px;padding-bottom:78px;position:relative;z-index:1}.eyebrow{letter-spacing:.17em;font-size:11px;text-transform:uppercase;font-weight:800;color:#d5c099}.hero h1{font-size:clamp(40px,5vw,68px);letter-spacing:-.055em;line-height:1.07;margin:19px 0}.hero p{color:#d4e0d9;line-height:1.8;font-size:15px;max-width:560px}.hero-side{border:1px solid #ffffff35;background:#ffffff0d;padding:30px;border-radius:5px;max-width:280px;justify-self:end}.hero-side .big{font-size:41px;letter-spacing:-.05em;font-weight:800;margin:6px 0}.hero-side p{font-size:12px;margin-bottom:0}.hero-side small{color:#dfc99d;letter-spacing:.12em;text-transform:uppercase}.main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(255px,.9fr);gap:28px;align-items:start;padding-top:38px;padding-bottom:70px}.panel{background:#fff;border:1px solid var(--line);padding:36px;border-radius:7px;box-shadow:0 10px 40px #1b332610}.step{font-size:11px;color:var(--green);text-transform:uppercase;letter-spacing:.15em;font-weight:800}.panel h2{font-size:29px;line-height:1.2;letter-spacing:-.04em;margin:13px 0 9px}.sub{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 26px}form{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:12px;font-weight:800;display:block;margin-bottom:8px}.full{grid-column:1/-1}input,select,textarea{width:100%;padding:14px;border:1px solid #dbe1da;border-radius:4px;background:#fff;color:var(--ink);font:inherit;font-size:13px;min-height:50px}textarea{min-height:86px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #b2d3c2;border-color:#50856d}.checkboxline{display:flex;gap:10px;align-items:start;color:#65716a;font-size:11px;line-height:1.65}.checkboxline input{width:17px;min-height:17px;height:17px;flex:none;accent-color:var(--forest);margin-top:2px}.button{display:flex;justify-content:center;align-items:center;gap:14px;width:100%;border:0;text-decoration:none;background:var(--forest);color:white;padding:17px 20px;min-height:54px;border-radius:4px;font-weight:800;font-family:inherit;font-size:12px;letter-spacing:.045em;cursor:pointer;transition:background .2s}.button:hover{background:#1e634e}.button.outline{background:#fff;color:var(--forest);border:1px solid #cddad2}.button.outline:hover{background:#f4f8f5}.sidebox{background:#f0f2eb;border:1px solid #dfe6dc;padding:26px;border-radius:7px;margin-bottom:19px}.sidebox .sidehead{font-size:11px;letter-spacing:.14em;color:var(--green);text-transform:uppercase;font-weight:800}.sidebox h3{font-size:22px;letter-spacing:-.05em;line-height:1.3;margin:13px 0}.sidebox p{font-size:12px;line-height:1.8;color:var(--muted)}.perks{display:grid;gap:0}.perk{border-top:1px solid #d7ded5;padding:16px 0;display:flex;gap:13px}.perk svg{color:var(--green);flex:none}.perk b{font-size:12px}.perk small{display:block;color:var(--muted);font-size:11px;line-height:1.65;margin-top:3px}.partners{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.partners span{font-size:10px;border:1px solid #dce4dd;background:white;padding:8px 10px;font-weight:800;color:#33483c;border-radius:3px}.fine{font-size:10px;line-height:1.8;color:#7a827c}.result-top{padding:78px 20px 52px;text-align:center}.seal{height:64px;width:64px;border:1px solid #bc9f72;border-radius:50%;display:grid;place-items:center;color:#ba9964;margin:0 auto 23px;background:#fff}.result-top h1{font-size:clamp(38px,6vw,60px);letter-spacing:-.065em;line-height:1.1;margin:14px 0 16px}.result-top p{max-width:570px;margin:0 auto;color:var(--muted);font-size:14px;line-height:1.9}.result-grid{display:grid;grid-template-columns:1fr .85fr;gap:28px;padding-bottom:76px}.credit{background:var(--forest);color:#fff;padding:40px;border-radius:6px}.credit .eyebrow{color:#d6c098}.credit .big{font-size:44px;letter-spacing:-.07em;font-weight:800;margin:14px 0}.credit p{font-size:12px;color:#d5e0d9;line-height:1.8}.benefit{border:1px solid #e4e5dc;background:#fff;padding:22px;margin-top:15px;border-radius:5px}.benefit b{font-size:13px}.benefit p{font-size:12px;color:var(--muted);line-height:1.7;margin:8px 0 0}.summary{background:white;border:1px solid var(--line);border-radius:6px;padding:28px}.summary h3{margin:0 0 19px;font-size:18px;letter-spacing:-.03em}.summaryrow{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #e8eae5;padding:15px 0;font-size:12px}.summaryrow span{color:var(--muted)}.summaryrow strong{text-align:right;max-width:62%;overflow-wrap:anywhere}.stack{display:grid;gap:12px;margin-top:24px}footer{background:#fff;border-top:1px solid var(--line);padding:26px 0;color:#768079;font-size:11px;line-height:1.7}.foot{display:flex;justify-content:space-between;gap:20px;align-items:center}.hidden{display:none!important}@media(max-width:780px){.hero-inner{grid-template-columns:1fr;padding-top:56px;padding-bottom:56px}.hero-side{justify-self:start;max-width:none;width:100%}.main,.result-grid{grid-template-columns:1fr}.main{padding-top:23px}.result-top{padding-top:60px}.foot{display:block}}@media(max-width:510px){.container{padding-left:16px;padding-right:16px}.bar{height:70px}.brand{font-size:19px}.brand span{display:block;font-size:9px;margin:2px 0 0}.location{font-size:9px;text-align:right}.hero h1{font-size:43px}.hero-inner{padding-top:50px;padding-bottom:50px}.panel,.summary{padding:24px 20px}.panel h2{font-size:25px}form{grid-template-columns:1fr;gap:16px}.full{grid-column:auto}.credit{padding:30px}.credit .big{font-size:39px}}

/* Premium celebration: brief, subtle and accessible */
.celebrate-wrap{position:relative;width:112px;height:112px;margin:0 auto 3px;display:grid;place-items:center}
.celebrate-wrap:before,.celebrate-wrap:after{content:"";position:absolute;inset:14px;border:1px solid rgba(199,164,107,.5);border-radius:50%;animation:goldRing 1.3s ease-out both}
.celebrate-wrap:after{animation-delay:.22s}
.celebrate-wrap .seal{margin:0;position:relative;z-index:1;animation:sealAppear .75s cubic-bezier(.2,1.4,.35,1) both;box-shadow:0 8px 26px rgba(20,63,53,.10)}
.celebrate-wrap .seal svg path{stroke-dasharray:30;stroke-dashoffset:30;animation:drawTick .6s ease-out .4s forwards}
.sparkle{position:absolute;z-index:2;width:7px;height:7px;background:#c7a46b;transform:rotate(45deg);border-radius:1px;opacity:0;animation:twinkle 1.9s ease-in-out .55s 2}
.sparkle:before,.sparkle:after{content:"";position:absolute;background:#c7a46b;border-radius:2px}
.sparkle:before{height:2px;width:13px;left:-3px;top:2.5px}.sparkle:after{width:2px;height:13px;top:-3px;left:2.5px}
.sp1{left:6px;top:20px}.sp2{right:9px;top:13px;animation-delay:.86s}.sp3{left:10px;bottom:13px;animation-delay:1.14s}.sp4{right:5px;bottom:16px;animation-delay:1.4s}
.result-top .eyebrow,.result-top h1,.result-top p{animation:revealRise .75s ease-out both}
.result-top h1{animation-delay:.14s}.result-top p{animation-delay:.26s}
.result-grid{animation:revealRise .7s ease-out .35s both}
@keyframes sealAppear{0%{opacity:0;transform:scale(.65)}100%{opacity:1;transform:scale(1)}}
@keyframes goldRing{0%{opacity:.7;transform:scale(.65)}100%{opacity:0;transform:scale(1.55)}}
@keyframes drawTick{to{stroke-dashoffset:0}}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.3) rotate(45deg)}35%,60%{opacity:1;transform:scale(1) rotate(45deg)}}
@keyframes revealRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.celebrate-wrap:before,.celebrate-wrap:after,.celebrate-wrap .seal,.celebrate-wrap .seal svg path,.sparkle,.result-top .eyebrow,.result-top h1,.result-top p,.result-grid{animation:none!important}.celebrate-wrap .seal svg path{stroke-dashoffset:0}}

/* Premium animated shopping illustration and celebration */
.amount-meta{font-size:11px;letter-spacing:.05em;color:#d8cda8;margin:-5px 0 11px}
.credit .big{font-variant-numeric:tabular-nums;white-space:nowrap}
.confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:100;overflow:hidden}
.confetti-piece{position:absolute;display:block;width:8px;height:14px;border-radius:2px;opacity:0;animation:premiumPop 2.35s cubic-bezier(.16,.6,.3,1) forwards}
@keyframes premiumPop{0%{transform:translate(0,0) scale(.35) rotate(0deg);opacity:0}10%{opacity:1}75%{opacity:.95}100%{transform:translate(var(--dx),var(--dy)) scale(.65) rotate(var(--spin));opacity:0}}
@media(prefers-reduced-motion:reduce){.confetti-piece{display:none}}
