/* uplift.css — visual next level, layered on refresh.css. 2026-09-09 */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,500;0,9..144,650;1,9..144,400;1,9..144,500&family=Inter:wght@400;500;600;700&display=swap');
:root{--serif:'Fraunces',Georgia,serif;--sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--glow:#c9f477;--ink2:#0f2a20}
body{font-family:var(--sans);background:
 radial-gradient(1100px 600px at 85% -10%,#d9f7a1 0%,transparent 60%),
 radial-gradient(900px 500px at -10% 30%,#e7efd8 0%,transparent 55%),
 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.05'/%3E%3C/svg%3E"),
 var(--paper);background-repeat:no-repeat,no-repeat,repeat,repeat}
header,main,footer{position:relative;z-index:1}
header{background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.3) blur(10px);-webkit-backdrop-filter:saturate(1.3) blur(10px)}
h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.03em;font-variation-settings:'opsz' 144}
h1{font-size:clamp(56px,6.2vw,96px);line-height:.98}
h1 em,h2 em{font-style:italic;font-weight:400;background:linear-gradient(transparent 62%,var(--glow) 62%,var(--glow) 92%,transparent 92%);padding:0 .06em}
h3{font-family:var(--sans);font-weight:650}
.eyebrow{font-family:var(--sans)}
.eyebrow .dot{box-shadow:0 0 0 0 #39714266;animation:pulse 2.2s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 #39714266}100%{box-shadow:0 0 0 14px transparent}}
.button{position:relative;overflow:hidden;border-radius:999px;box-shadow:0 10px 24px -10px #173c2e99,inset 0 1px 0 #ffffff22;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s,background .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 18px 34px -12px #173c2eaa}
.button:after{content:'';position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(105deg,transparent,#ffffff33,transparent);transform:skewX(-20deg);transition:left .55s ease}
.button:hover:after{left:130%}
.button [aria-hidden]{transition:transform .2s}.button:hover [aria-hidden]{transform:translate(3px,-3px)}
.underlined{background:linear-gradient(var(--ink),var(--ink)) no-repeat 0 100%/100% 2px;text-decoration:none;padding-bottom:3px;transition:background-size .25s}
.underlined:hover{background-size:0 2px;background-position:100% 100%}
.hero{padding-block:72px 64px}
.hero-art{background:linear-gradient(160deg,#d6f98a,#bdef5e 55%,#a9e34a);box-shadow:0 40px 80px -30px #173c2e55,inset 0 0 0 1px #ffffff55;border-radius:26px}
.hero-art:before{content:'';position:absolute;inset:0;background:radial-gradient(60% 50% at 70% 20%,#ffffff66,transparent 70%);pointer-events:none}
.orbit{animation:spin 60s linear infinite;border-color:#173c2e33;border-style:dashed}
.orbit:before{animation:spin 40s linear infinite reverse;border-style:solid}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.orbit:after{content:'';box-shadow:0 0 0 6px #173c2e10}
.screen{border-radius:14px;box-shadow:0 30px 60px -20px #173c2e80,0 2px 0 #ffffff88 inset;transform:rotate(-3deg) perspective(1200px) rotateY(4deg);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.hero-art:hover .screen{transform:rotate(-1.5deg) perspective(1200px) rotateY(0) translateY(-4px)}
.window{background:linear-gradient(#fbfbfa,#eef0ec);border-bottom:1px solid #173c2e18}
.window i:nth-child(1){background:#ff5f57}.window i:nth-child(2){background:#febc2e}.window i:nth-child(3){background:#28c840}
.art-note{backdrop-filter:blur(8px);background:#f7f6eecc;transition:transform .3s}
.hero-art:hover .art-note{transform:rotate(0) translateY(-3px)}
.promise{background:linear-gradient(90deg,var(--ink2),var(--ink) 50%,#1d4a38);position:relative;overflow:hidden}
.promise:before{content:'';position:absolute;inset:-40% -10%;background:radial-gradient(40% 60% at 20% 50%,#c9f47722,transparent 70%);pointer-events:none}
.promise b{text-shadow:0 0 18px #c9f47788}
.section{padding-block:88px}
.number{font-family:var(--serif);font-style:italic;font-weight:400;color:#397142;font-size:1.6em}
.steps>*{position:relative;transition:transform .25s}
.steps>*:hover{transform:translateY(-4px)}
.plan{border-radius:22px;transition:transform .25s,box-shadow .25s;box-shadow:0 1px 0 #ffffff88 inset}
.plan:hover{transform:translateY(-5px);box-shadow:0 30px 50px -28px #173c2e66}
.plan.pro{background:linear-gradient(160deg,var(--ink),var(--ink2));color:var(--paper);border-color:transparent;position:relative;overflow:hidden}
.plan.pro p,.plan.pro li{color:#d8e2d6}
.plan.pro:before{content:'';position:absolute;top:-60%;right:-30%;width:70%;aspect-ratio:1;background:radial-gradient(circle,#c9f47733,transparent 65%);pointer-events:none}
.plan.pro .price{color:var(--glow)}
.plan.pro .tag{background:var(--glow);color:var(--ink);border-radius:999px;padding:4px 12px;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.plan.pro .button{background:var(--glow);color:var(--ink)}
.plan.pro .button:hover{background:#d9ff8a}
.price{font-family:var(--serif);font-weight:500;letter-spacing:-.03em}
.device-shot img,.device-shot{border-radius:16px;box-shadow:0 30px 60px -24px #173c2e66}
.privacy{background:linear-gradient(135deg,var(--ink2),var(--ink) 55%,#1d4a38);position:relative;overflow:hidden}
.privacy:before{content:'';position:absolute;inset:0;background:radial-gradient(50% 120% at 78% 50%,#c9f47718,transparent 70%);pointer-events:none}
.privacy>.wrap{position:relative;z-index:1}
.privacy h2{color:var(--paper)}
.privacy h2 em{background:none;color:var(--glow);padding:0}
.privacy p{color:#d4dfd4}
.privacy .eyebrow{color:var(--glow)}
.privacy .button{background:var(--glow);color:var(--ink)}
.privacy .button:hover{background:#d9ff8a;color:var(--ink)}
.privacy .underlined{color:var(--glow);background-image:linear-gradient(var(--glow),var(--glow))}
.privacy-symbol{color:var(--glow);filter:drop-shadow(0 8px 14px #00000040)}
.faq details{border-radius:14px;transition:background .2s}
.faq details[open]{background:#173c2e08}
.faq summary{cursor:pointer}
footer{border-top:1px solid var(--line);background:linear-gradient(transparent,#173c2e08)}
/* scroll reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.rv:nth-child(2){transition-delay:.08s}.rv:nth-child(3){transition-delay:.16s}.rv:nth-child(4){transition-delay:.24s}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
@media (max-width:820px){h1{font-size:clamp(44px,11vw,64px)}.hero{padding-block:40px}.screen{transform:rotate(-2deg)}}
