@font-face{font-family:Termes;src:url('./termes.otf') format('opentype');font-display:swap}
@font-face{font-family:Lato;src:url('./lato-regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:Lato;src:url('./lato-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--cream:#FAF6F7;--white:#FFF;--wine:#6A1B4D;--bright:#A81E5B;--dark:#481234;--night:#26091B;--gold:#D6A02F;--pale:#F0CE86;--line:#E7D9DE;--muted:#745E69;--green:#41715D;--soft:#F4E9ED;--shadow:0 30px 90px rgba(38,9,27,.16)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--night);font-family:Lato,Arial,sans-serif;color:var(--night)}button{font:inherit}.deck{position:relative;width:100%;height:100%}
.slide{position:absolute;inset:0;display:grid;place-items:center;background:var(--cream);opacity:0;visibility:hidden;transform:translateX(5%);transition:opacity .45s ease,transform .55s cubic-bezier(.2,.7,.2,1),visibility .45s;overflow:hidden}.slide.active{opacity:1;visibility:visible;transform:none;z-index:2}.slide.exit-left{transform:translateX(-5%)}.slide.dark{background:radial-gradient(circle at 84% 18%,rgba(168,30,91,.2),transparent 30%),linear-gradient(135deg,var(--night),var(--dark));color:white}.slide.wine{background:linear-gradient(135deg,var(--wine),var(--night));color:white}
.canvas{width:min(94vw,1500px);height:min(84vh,850px);position:relative;display:flex;flex-direction:column;padding:clamp(24px,3vw,54px)}.eyebrow{font-size:clamp(13px,1.15vw,18px);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}.dark .eyebrow,.wine .eyebrow{color:var(--pale)}h1,h2,h3{font-family:Termes,Georgia,serif;font-weight:400;line-height:1.02;margin:0}h1{font-size:clamp(52px,7vw,110px);max-width:1050px}h2{font-size:clamp(44px,5.2vw,78px);color:var(--dark)}.dark h2,.wine h2{color:white}h3{font-size:clamp(27px,2.5vw,42px);color:var(--wine)}p{font-size:clamp(18px,1.7vw,27px);line-height:1.45;margin:0;color:var(--muted)}.dark p,.wine p{color:#F7EAF0}.lead{font-size:clamp(23px,2.35vw,38px);max-width:1050px;color:var(--night)}.dark .lead{color:#fff}.gold{color:var(--pale)}.pink{color:var(--bright)}
.brand{position:fixed;left:28px;top:22px;z-index:20;color:var(--wine);font-family:Termes,Georgia,serif;font-size:20px}.progress{position:fixed;left:0;top:0;height:5px;background:linear-gradient(90deg,var(--bright),var(--gold));z-index:30;width:0;transition:width .4s}.count{position:fixed;right:28px;top:22px;z-index:20;color:var(--wine);font-weight:700;font-size:14px}.controls{position:fixed;z-index:30;right:24px;bottom:20px;display:flex;gap:9px}.control{width:44px;height:44px;border:1px solid rgba(106,27,77,.2);border-radius:50%;background:rgba(255,255,255,.88);color:var(--wine);cursor:pointer;box-shadow:0 10px 30px rgba(38,9,27,.08);display:grid;place-items:center;font-size:22px}.control:hover{background:var(--wine);color:white}.hint{position:fixed;left:28px;bottom:29px;z-index:20;font-size:13px;color:var(--muted)}body.dark-ui .brand,body.dark-ui .count,body.dark-ui .hint{color:var(--pale)}
.reveal{opacity:0;transform:translateY(24px)}.active .reveal{animation:up .55s both}.active .d1{animation-delay:.12s}.active .d2{animation-delay:.24s}.active .d3{animation-delay:.36s}.active .d4{animation-delay:.48s}.active .d5{animation-delay:.6s}@keyframes up{to{opacity:1;transform:none}}
.cover .canvas{justify-content:center}.cover h1{max-width:900px}.cover .subtitle{margin-top:34px;color:var(--pale);font-size:clamp(21px,2vw,31px)}.cover-ring{position:absolute;right:7%;top:22%;width:min(29vw,380px);aspect-ratio:1;border:1px solid rgba(240,206,134,.55);border-radius:50%;display:grid;place-items:center}.cover-ring:before{content:'';width:52%;height:52%;border-radius:50%;background:var(--bright);box-shadow:0 0 0 34px rgba(168,30,91,.11)}.cover-ring:after{content:'›';position:absolute;color:white;font:96px/1 Termes}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center;flex:1}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;flex:1}.center{text-align:center}.question-card{background:var(--night);color:white;border-radius:28px;padding:35px;margin-top:34px;max-width:720px;font:clamp(27px,3vw,45px)/1.15 Termes,Georgia,serif;box-shadow:var(--shadow)}
.phone{width:min(31vw,350px);aspect-ratio:.64;background:var(--night);border-radius:38px;padding:13px;margin:auto;box-shadow:var(--shadow);position:relative}.phone:before{content:'';position:absolute;top:8px;left:36%;width:28%;height:10px;background:var(--night);border-radius:10px}.screen{height:100%;background:white;border-radius:28px;padding:31px 24px 22px;overflow:hidden}.phone-title{text-align:center;font-weight:700;margin-bottom:20px}.avatar{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--wine);font-weight:700;font-size:22px}.profile-head{display:grid;grid-template-columns:78px 1fr;gap:14px;align-items:center}.handle{font-weight:700}.small{font-size:15px;color:var(--muted);line-height:1.3}.bio{font-size:17px;line-height:1.28;margin:20px 0}.highlights{display:flex;gap:17px}.highlight{width:55px;height:55px;border-radius:50%;background:var(--soft);border:1px solid var(--line)}.highlight.good{border:2px solid var(--gold)}.labels{display:flex;gap:12px;margin-top:7px;font-size:10px;color:var(--muted);text-transform:uppercase}.labels span{width:61px;text-align:center}.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:22px}.post{height:63px;background:var(--soft);border-radius:8px}.post.good{background:var(--bright)}
.route{display:flex;align-items:center;justify-content:space-between;gap:11px;margin:auto 0}.node{flex:0 0 min(13vw,172px);aspect-ratio:1;border-radius:50%;background:var(--wine);color:white;display:grid;place-items:center;text-align:center;padding:16px;font-weight:700;font-size:clamp(15px,1.35vw,21px);box-shadow:0 12px 35px rgba(106,27,77,.2)}.node.hot{background:var(--bright)}.node.done{background:var(--green)}.chev{color:var(--gold);font:clamp(36px,4vw,64px)/1 Termes}
.compare{display:grid;grid-template-columns:1fr 90px 1fr;gap:22px;align-items:center;flex:1}.compare-label{font-size:15px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:12px;color:var(--wine)}.compare-label.good{color:var(--green)}.arrow-big{text-align:center;color:var(--gold);font:70px/1 Termes}.window{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}.window-bar{height:46px;background:var(--deep);color:white;padding:13px 20px;font-size:14px}.window-body{padding:30px}.window h3{margin-bottom:15px}.fake-line{height:12px;background:var(--line);border-radius:10px;margin:14px 0}.fake-line.short{width:58%}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:99px;background:var(--bright);color:white;padding:13px 21px;font-weight:700;font-size:17px;margin-top:15px}.button.wine{background:var(--wine)}.button.ghost{background:white;color:var(--wine);border:1px solid var(--line)}
.feature-list{display:grid;gap:23px}.feature{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:20px}.feature:last-child{border:0}.number{width:45px;height:45px;border-radius:14px;background:var(--wine);color:white;display:grid;place-items:center;font-weight:700}.feature strong{display:block;font:30px/1.05 Termes;color:var(--deep);margin-bottom:5px}.feature span{color:var(--muted);font-size:17px}
.page-card{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 18px 55px rgba(72,18,52,.08)}.page-card .topbar{height:42px;background:var(--deep)}.page-card .body{padding:27px}.tag{color:var(--gold);letter-spacing:.1em;font-size:13px;font-weight:700}.page-card h3{margin:13px 0 18px}.page-card p{font-size:17px}.mini-btn{height:13px;border-radius:10px;background:var(--wine);width:55%;margin-top:28px}.mini-btn.pink{background:var(--bright)}
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:auto 0}.step{background:white;border:1px solid var(--line);border-radius:22px;padding:25px 21px;min-height:230px;position:relative;box-shadow:0 16px 45px rgba(72,18,52,.05)}.step:last-child{background:var(--wine);color:white;border-top:8px solid var(--gold)}.step .idx{color:var(--gold);font-weight:700}.step h3{margin-top:34px;font-size:clamp(25px,2.2vw,36px);overflow-wrap:normal}.step:last-child h3{color:white}.step:after{content:'›';position:absolute;right:-18px;top:43%;z-index:2;color:var(--gold);font:45px/1 Termes}.step:last-child:after{display:none}
.exercise{max-width:1150px;margin:auto;width:100%}.exercise-row{display:grid;grid-template-columns:55px 1fr;gap:22px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.2);font-size:clamp(20px,2vw,31px)}.exercise-row b{color:var(--pale);font-size:16px}.timer{display:inline-flex;margin-top:30px;border-radius:99px;background:var(--bright);color:white;padding:12px 22px;font-weight:700}
.process{display:grid;grid-template-columns:1fr 58px 1fr 58px 1.45fr;gap:15px;align-items:center;flex:1}.process .window{box-shadow:none}.record{display:grid;gap:12px}.record div{padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.record b{color:var(--wine)}
.tools{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;flex:1;align-content:center}.tool{padding:25px 4px;border-bottom:6px solid var(--wine)}.tool .tag{display:block;margin-bottom:14px}.tool h3{font-size:clamp(27px,2.3vw,39px)}
.method{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:auto 0}.method-item{width:18%;text-align:center}.method-dot{width:80px;height:80px;border-radius:50%;background:var(--wine);color:white;display:grid;place-items:center;font-weight:700;font-size:20px;margin:0 auto 22px}.method-item.hot .method-dot{background:var(--bright)}.method-item strong{display:block;color:var(--gold);font-size:14px;letter-spacing:.08em;margin-bottom:10px}.method-item span{font:24px/1.12 Termes;color:var(--deep)}
.safety{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;flex:1;align-content:center}.safe{display:grid;grid-template-columns:46px 1fr;gap:15px}.tick{width:42px;height:42px;border-radius:50%;background:var(--green);color:white;display:grid;place-items:center;font-weight:700}.safe strong{display:block;color:var(--gold);margin-bottom:8px}.safe p{font-size:19px;color:var(--night)}
.workbook-card{background:white;border-radius:28px;padding:48px;color:var(--night);box-shadow:var(--shadow)}.workbook-card .button{font-size:20px;padding:16px 28px;margin-top:28px}.protocol-list{display:grid;gap:19px;margin-top:36px}.protocol-list div{display:flex;align-items:center;gap:14px;font-size:21px}.protocol-list div:before{content:'✓';width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--night);font-size:14px;font-weight:700}
.overview{position:fixed;inset:0;background:rgba(38,9,27,.97);z-index:50;padding:34px;display:none;overflow:auto}.overview.open{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.overview button{border:1px solid rgba(255,255,255,.15);border-radius:18px;background:#fff;color:var(--night);padding:20px;text-align:left;min-height:130px;cursor:pointer}.overview button:hover{outline:3px solid var(--gold)}.overview b{color:var(--wine);display:block;margin-bottom:12px}.overview span{font:22px/1.15 Termes}
@media(max-width:900px){.canvas{height:88vh;width:96vw;padding:32px}.two,.three,.compare,.process,.safety{grid-template-columns:1fr}.phone{width:270px}.compare>div:first-child{display:none}.compare{grid-template-columns:1fr}.arrow-big,.process>.chev{display:none}.route{display:grid;grid-template-columns:repeat(3,1fr)}.chev{display:none}.node{width:135px;justify-self:center}.steps{grid-template-columns:repeat(2,1fr);overflow:auto}.step:after{display:none}.tools{grid-template-columns:repeat(2,1fr)}.cover-ring{opacity:.25}.overview.open{grid-template-columns:repeat(2,1fr)}.hint{display:none}}
@media(prefers-reduced-motion:reduce){.slide,.progress{transition:none}.active .reveal{animation:none;opacity:1;transform:none}}
