/* A new homepage, isolated from the site's calculators and editorial pages. */
body.home-cine{background:#09182e;color:#edf1f8}
body.home-cine #cine-intro{display:none!important}
body.home-cine #cine-cosmos{background:radial-gradient(ellipse at 80% 15%,#234b72 0,transparent 50%),linear-gradient(145deg,#091a35,#0d233f 50%,#09172c)}
body.home-cine #cine-cosmos .c-veil{background:linear-gradient(180deg,#08152e55,#0a193966)}
body.home-cine #cine-cosmos .c-aurora span{opacity:.18;background:#477aae!important}
.sa-home{--sa-gold:#f0ce89;--sa-text:#d5deeb;--sa-line:#9db8d32b;position:relative;z-index:1;overflow:clip;font-family:var(--c-sans,'Hanken Grotesk',sans-serif);color:#f5f2e9;background:linear-gradient(180deg,#0b1b3200,#0b1b3240)}
.sa-home *{box-sizing:border-box}.sa-home [hidden]{display:none!important}
.sa-home a{color:inherit;text-decoration:none}.sa-home button{font:inherit;cursor:pointer}.sa-home img{max-width:100%;display:block}.sa-home p{font-size:17px;line-height:1.8;color:var(--sa-text);margin:0 0 24px;max-width:58ch}.sa-home h1,.sa-home h2,.sa-home h3{color:#f5f2e9;margin:0;font-family:var(--c-serif,Georgia,serif);font-weight:400;text-wrap:balance}.sa-home h1{font-size:clamp(48px,5.2vw,78px);line-height:1.04;letter-spacing:-.04em}.sa-home h2{font-size:clamp(36px,4.1vw,60px);line-height:1.12;letter-spacing:-.025em;margin-bottom:28px}.sa-home h3{font-size:27px;line-height:1.25}.sa-home em{font-style:normal;color:var(--sa-gold)}
.sa-home .sa-kicker{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#d9bc81;margin-bottom:22px;font-weight:600;line-height:1.6}
.sa-container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.sa-section{position:relative;padding:105px 0;scroll-margin-top:90px}.sa-section-title{text-align:center;max-width:780px;margin:0 auto 48px}.sa-section-title p{margin-inline:auto}.sa-section-title h2{margin-bottom:24px}
.sa-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:30px 0}.sa-btn{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:54px;padding:16px 25px;border-radius:30px;font-size:15px;font-weight:700;border:1px solid transparent;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;line-height:1.35}.sa-btn span{font-size:21px}.sa-btn:hover{transform:translateY(-3px)}.sa-gold{background:linear-gradient(110deg,#fae5ac,#e6b660 65%,#ca8f45);color:#172035!important;box-shadow:0 8px 32px #e2af4e33,inset 0 1px #fff8}.sa-gold:hover{box-shadow:0 10px 38px #e2af4e55}.sa-blue{background:linear-gradient(110deg,#3766be,#255292 65%,#267489);box-shadow:0 8px 30px #3675d733;color:white!important;border-color:#87b7e759}.sa-glass{background:#bdcff510;border-color:#b8c9e750;color:#f4f3ed!important}.sa-text-link{display:inline-block;color:var(--sa-gold)!important;min-height:44px;padding:12px 0;font-size:15px;font-weight:600}.sa-center{text-align:center;margin-top:36px}.sa-home :is(a,button,summary,input):focus-visible{outline:3px solid #f4d795;outline-offset:5px}
.sa-hero{position:relative;isolation:isolate;padding:160px 0 170px;background:#09162c;min-height:850px}.sa-hero-image{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 45%;opacity:.52;animation:sa-camera 25s ease-in-out infinite alternate}.sa-hero::before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#07182deb,#102c50a8 55%,#08172f4f),linear-gradient(0deg,#0c213e,transparent 65%)}.sa-hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:70px;align-items:center}.sa-hero-copy>p:not(.sa-kicker){margin-top:28px;font-size:18px;max-width:47ch}.sa-hero-links{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:14px;color:#d2dae9}.sa-hero-links>a{padding:8px 0;border-bottom:1px solid #dbc08750}.sa-hero-links>span{color:#d9bd83}.sa-curve{position:absolute;bottom:-1px;left:0;width:100%;height:115px;pointer-events:none;fill:#112b4a}
.sa-chat{align-self:center;position:relative;border-radius:22px;border:1px solid #bdcff540;background:linear-gradient(145deg,#162e4ce8,#0a172cec);box-shadow:0 25px 75px #0208176b,0 0 60px #77a0df12;backdrop-filter:blur(15px);overflow:hidden;transform:rotate(1deg)}.sa-chat-top{display:flex;gap:13px;align-items:center;padding:22px;border-bottom:1px solid var(--sa-line)}.sa-chat-top strong{display:block;font-size:19px}.sa-chat-top>div>span{display:block;font-size:12px;color:#b9cbe1;margin-top:5px}.sa-chat-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(140deg,#f4d899,#bd843b);color:#152441;font-size:27px}.sa-pause{margin-left:auto;border:1px solid #95b7da40;background:#122d4d;color:#f0d49b;border-radius:50%;width:38px;height:38px}.sa-home .sa-example{font-size:11px;letter-spacing:.07em;margin:14px 22px 0;color:#aebfd2}.sa-chat-body{padding:20px 22px 12px;min-height:265px}.sa-home .sa-question{background:linear-gradient(110deg,#3562a2,#2e7487);border:1px solid #6094bc50;color:white;padding:12px 17px;border-radius:17px 17px 4px 17px;max-width:90%;width:fit-content;margin:0 0 23px auto;font-size:15px;line-height:1.5}.sa-reply{background:#0b1b30b8;border:1px solid #91abd325;border-radius:4px 17px 17px;padding:16px;min-height:132px}.sa-reply p{font-size:15px;line-height:1.7;margin:0;color:#e0e6f0}.sa-typing{display:none;height:22px;align-items:center;gap:5px}.sa-typing i{width:5px;height:5px;background:#dcc48e;border-radius:50%;animation:sa-dot 1s ease-in-out infinite}.sa-typing i:nth-child(2){animation-delay:.15s}.sa-typing i:nth-child(3){animation-delay:.3s}.sa-chat.is-thinking .sa-typing{display:flex}.sa-chat-choices{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 20px}.sa-chat-choices button,.sa-tabs button{border:1px solid #abc3df40;background:#b3cef509;color:#d6e4f5;border-radius:22px;padding:10px 14px;min-height:44px;font-size:13px}.sa-chat-choices button[aria-pressed=true],.sa-tabs button[aria-pressed=true]{color:#14213b;background:#efd49b;border-color:#efd49b}.sa-chat-launch{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,#f0d79e,#d9a758);color:#19263d!important;padding:17px 24px;font-weight:700;font-size:15px}.sa-chat-launch>span{font-size:23px}
.sa-explore{background:#112b4a;padding-top:30px}.sa-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.sa-card{position:relative;min-height:400px;border-radius:18px;overflow:hidden;background:#091a32;border:1px solid #adcbed35;isolation:isolate;transition:transform .35s,box-shadow .35s}.sa-card>img{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;z-index:-2;transition:transform .8s;object-position:60% center}.sa-card::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#061426 2%,#08172ceb 22%,#06172b22 90%)}.sa-card>div{position:absolute;inset:auto 22px 22px}.sa-card>div>span{font-size:12px;color:#f4d897;display:block;margin-bottom:11px}.sa-card h3{font-size:28px;margin-bottom:12px}.sa-card p{font-size:14px;line-height:1.65;margin-bottom:20px;min-height:46px}.sa-card-action{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:600;padding:11px 12px;border-radius:20px;background:linear-gradient(110deg,#3569a9,#2a547c);border:1px solid #89b4e139;color:#fff}.sa-card-action span{font-size:18px}.sa-card:hover{transform:translateY(-6px);box-shadow:0 20px 35px #03132966}.sa-card:hover>img{transform:scale(1.05)}.sa-topic-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}.sa-topic-links a{border:1px solid #99b7d32b;border-radius:24px;padding:12px 18px;font-size:14px;background:#07203a30}.sa-topic-links a:hover{background:#244a70}
.sa-theme{background:linear-gradient(160deg,#112b4a,#0a1a31)}.sa-split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.sa-wheel{position:relative;padding:20px;border-radius:50%;background:radial-gradient(circle,#42709a33,transparent 70%);text-align:center}.sa-wheel img{width:100%;height:auto;filter:drop-shadow(0 0 35px #debd7133);animation:sa-wheel 80s linear infinite}.sa-wheel>span{display:block;margin-top:30px;font-size:14px;color:#ceb98b}.sa-steps{list-style:none;padding:0;margin:32px 0;display:grid;gap:24px}.sa-steps li{display:flex;gap:20px}.sa-steps li>span{font-size:12px;color:#e3c68e;border:1px solid #ccb27b60;display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:50%}.sa-steps h3{font-family:inherit;font-size:17px;font-weight:600}.sa-steps p{font-size:15px;margin:6px 0 0}
.sa-grimoire{padding-bottom:170px;background:radial-gradient(ellipse at 50% 50%,#214264,#0d223e);isolation:isolate}.sa-grimoire .sa-curve{fill:#0c1d34;height:90px}.sa-grimoire-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:0;align-items:stretch;border:1px solid #a9c2db38;border-radius:24px;overflow:hidden;background:#0c1d3477}.sa-book img{width:100%;height:100%;min-height:480px;object-fit:cover}.sa-symbol-panel{padding:35px;text-align:center}.sa-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.sa-symbol{width:145px;height:145px;display:grid;place-items:center;margin:28px auto;color:#ffe3a3;font-family:Georgia,serif;font-size:78px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#a68448,#322c28 50%,#091a2f 78%);box-shadow:0 0 45px #d5b16616,inset 1px 1px 2px #e4c78b;animation:sa-float 7s ease-in-out infinite}.sa-symbol-panel h3{font-size:29px;margin:12px 0}.sa-symbol-panel p{font-size:16px;max-width:37ch;min-height:88px;margin:0 auto 25px}.sa-home #outils{background:#0c1d34}.sa-tool-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:24px}.sa-tool{position:relative;background:linear-gradient(140deg,#204369,#10243f);border:1px solid #90b3da35;border-radius:20px;min-height:320px;padding:32px;overflow:hidden}.sa-tool h3{font-size:27px}.sa-tool p{font-size:15px;margin:14px 0}.sa-tool-glyph{display:block;color:#e8cf96;font-size:60px;margin:10px 0 35px;font-family:Georgia,serif}.sa-tool-image{isolation:isolate;display:flex;align-items:end}.sa-tool-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.sa-tool-image::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#08162ff5,transparent);z-index:-1}
.sa-approach{background:linear-gradient(145deg,#0c1d34,#173754)}.sa-approach-art img{width:100%;height:580px;object-fit:cover;border-radius:160px 160px 12px 12px}.sa-approach p{margin-bottom:24px}.sa-consult{background:linear-gradient(160deg,#173754,#0c203c);border-radius:0 0 7% 7%/0 0 70px 70px}.sa-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:45px}.sa-offer{padding:32px;background:#0a1b33a8;border:1px solid #b9cee23b;border-radius:18px;display:flex;flex-direction:column;justify-content:space-between;gap:30px;transition:border-color .3s,transform .3s}.sa-offer:nth-child(2){background:linear-gradient(145deg,#284561,#182d49);border-color:#e7bd7070}.sa-offer:hover{border-color:#e6c383;transform:translateY(-4px)}.sa-offer h3{font-size:27px}.sa-offer p{margin:22px 0 0;font-size:16px;line-height:1.8}.sa-price{font-family:var(--c-serif);font-size:37px;color:#f0ce89;border-top:1px solid var(--sa-line);padding-top:20px}.sa-price span{display:block;font-family:var(--c-sans);font-size:14px;color:#cbd8e8;margin-top:9px}.sa-reading{background:linear-gradient(180deg,#0a1930,#0d2440)}.sa-reading img{border-radius:20px;height:400px;width:100%;object-fit:cover}.sa-faq{background:#0d2440}.sa-faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.sa-faq details{border:1px solid #9dbbdd30;border-radius:13px;background:#193a5d80;margin-bottom:14px;padding:0 23px}.sa-faq summary{font-size:16px;font-weight:600;line-height:1.5;padding:21px 28px 21px 0;cursor:pointer;position:relative;list-style:none}.sa-faq summary::-webkit-details-marker{display:none}.sa-faq summary::after{content:'+';position:absolute;right:0;top:20px;color:#ecd09a;font-size:22px}.sa-faq details[open] summary::after{content:'−'}.sa-faq details p{font-size:15px;padding-bottom:22px;margin:0}.sa-finale{background:radial-gradient(ellipse at 50% 30%,#30557866,transparent 70%),#0b203b;text-align:center;border-top:1px solid var(--sa-line)}.sa-finale h2{margin-bottom:36px}.sa-finale .hp-wl{max-width:700px;margin:65px auto 0;padding:35px 0 0;border-top:1px solid var(--sa-line)}.sa-finale .hp-wl p{margin:20px auto}.sa-finale .hp-wl .fine{font-size:13px;color:#bbcde3}.sa-finale .hp-wl button{border-radius:25px;background:linear-gradient(110deg,#fae5ac,#d8a04e);color:#15213a;font-weight:700}.sa-finale .hp-wl input{color:#fff;background:#0a1a31;border:1px solid #b7cde54d;border-radius:25px}.sa-finale .hp-wl h3{font-size:28px}
@keyframes sa-camera{to{transform:scale(1.04)}}@keyframes sa-dot{50%{transform:translateY(-4px);opacity:.4}}@keyframes sa-float{50%{transform:translateY(-7px)}}@keyframes sa-wheel{to{transform:rotate(360deg)}}
@media(min-width:1700px){.sa-container{width:min(1400px,calc(100% - 144px))}.sa-hero-grid{gap:110px}.sa-hero{padding-top:190px;min-height:930px}.sa-card{min-height:460px}}
@media(max-width:1100px){.sa-container{width:calc(100% - 64px)}.sa-hero-grid{gap:35px}.sa-home h1{font-size:54px}.sa-split{gap:40px}.sa-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-card{min-height:370px}.sa-offer{padding:23px}.sa-faq-grid{gap:35px}.sa-chat{transform:none}.sa-chat-top{padding:16px}.sa-tool{padding:25px}.sa-home h2{font-size:43px}}
@media(max-width:760px){.sa-container{width:calc(100% - 40px)}.sa-section{padding:70px 0}.sa-hero{padding:115px 0 100px;min-height:0}.sa-hero-grid,.sa-split,.sa-grimoire-grid,.sa-faq-grid{grid-template-columns:1fr;gap:40px}.sa-hero-copy{text-align:center}.sa-home h1{font-size:clamp(40px,9vw,60px);line-height:1.08}.sa-hero-copy>p:not(.sa-kicker){font-size:17px;margin-inline:auto}.sa-actions,.sa-hero-links{justify-content:center}.sa-hero-image{object-position:65% 50%;opacity:.38}.sa-curve{height:60px}.sa-chat{width:min(100%,500px);margin:auto;text-align:left}.sa-home h2{font-size:clamp(33px,7.4vw,44px)}.sa-home p{font-size:16px;line-height:1.8}.sa-section-title{margin-bottom:34px}.sa-explore{padding-top:30px}.sa-cards{gap:14px}.sa-card{min-height:350px}.sa-card>div{inset:auto 18px 18px}.sa-card h3{font-size:26px}.sa-card-action{font-size:11px}.sa-topic-links{gap:8px}.sa-topic-links a{font-size:12px;padding:12px}.sa-wheel{max-width:390px;margin:auto}.sa-grimoire{padding-bottom:120px}.sa-grimoire-grid{gap:0}.sa-book img{min-height:0;height:270px}.sa-symbol-panel{padding:25px 20px}.sa-symbol-panel p{min-height:0}.sa-tool-grid,.sa-offers{grid-template-columns:1fr}.sa-tool{min-height:270px}.sa-offer{padding:28px}.sa-offer p{max-width:55ch}.sa-approach-art img{height:380px;border-radius:100px 100px 12px 12px}.sa-reading img{height:300px}.sa-consult{border-radius:0 0 40px 40px}.sa-finale .hp-wl form{flex-direction:column;gap:12px}.sa-finale .hp-wl button{min-height:50px;width:100%}.sa-finale .hp-wl input{width:100%}.sa-hero-image,.sa-wheel img{animation:none}.sa-btn{min-height:52px}.sa-chat-body{min-height:255px}}
@media(max-width:460px){.sa-cards{grid-template-columns:1fr}.sa-card{min-height:370px}.sa-card h3{font-size:32px}.sa-card p{min-height:0;font-size:15px}.sa-card-action{font-size:14px;padding:13px 18px}.sa-home .sa-kicker{font-size:10px}.sa-hero .sa-btn{width:100%}.sa-hero-links{gap:13px;font-size:13px}.sa-chat-top>div>span{font-size:11px}.sa-chat-choices{padding-inline:16px}.sa-chat-body{padding:18px 16px}.sa-symbol-panel .sa-tabs{gap:5px}.sa-tabs button{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){.sa-home *, .sa-home *::before,.sa-home *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sa-card:hover,.sa-btn:hover,.sa-offer:hover{transform:none}}
/* Full-screen scenes, continuous atmosphere and a single CTA language. */
html:has(body.home-cine){scroll-snap-type:none;scroll-padding-top:76px;scroll-behavior:smooth}
body.home-cine .sa-home{background:linear-gradient(180deg,#091b32aa,#102d4e88 35%,#0b213b99 70%,#091c33bb)}
body.home-cine .sa-home>section{min-height:100svh;height:auto;display:flex;flex-direction:column;justify-content:center;margin:0;border:0;border-radius:0;padding-block:100px 84px;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at 85% 22%,#31597f18,transparent 65%);box-shadow:none}
body.home-cine .sa-home>section.sa-hero{padding-top:140px;padding-bottom:125px;background:#0b213b60}
body.home-cine .sa-home>section+section::before{content:none!important;display:none!important}
body.home-cine .sa-home>section+section::after{content:none!important;display:none!important}
body.home-cine .sa-home .sa-container{position:relative;z-index:2;flex-shrink:0}
body.home-cine .sa-home>section:nth-of-type(even){background:radial-gradient(ellipse at 15% 75%,#396c941e,transparent 68%)}
body.home-cine .sa-home .sa-curve{z-index:1;opacity:.22;fill:#38658a;height:95px;mask-image:linear-gradient(180deg,#000,transparent);-webkit-mask-image:linear-gradient(180deg,#000,transparent)}
body.home-cine #cine-cosmos .c-zwheel{opacity:.16}
body.home-cine #cine-cosmos .c-zwheel text{fill:#e7cc95}
.sa-bg-glyph{position:absolute;right:2%;top:16%;z-index:0;font-family:Georgia,'Times New Roman',serif;font-variant-emoji:text;font-size:clamp(180px,30vw,480px);line-height:1;color:#e4d3aa;opacity:.055;pointer-events:none;user-select:none;text-shadow:0 0 70px #83b7dc55;animation:sa-glyph-drift 28s ease-in-out infinite alternate}
.sa-home>section:nth-of-type(even)>.sa-bg-glyph{right:auto;left:-2%;top:28%;animation-direction:alternate-reverse;animation-delay:-12s}
.sa-home>section:nth-of-type(3n)>.sa-bg-glyph{top:45%;font-size:clamp(190px,35vw,530px);color:#96c8ee;animation-delay:-6s}
body.home-cine .sa-home :is(.sa-btn,.sa-card-action,.sa-chat-launch,.sa-text-link,.sa-topic-links a,.sa-hero-links a,.hp-wl button){background:linear-gradient(115deg,#fbe6b3 0%,#edca82 38%,#d7a04f 76%,#f5daa2 100%)!important;background-size:180% 100%!important;color:#14233a!important;border:1px solid #ffe8b26b!important;box-shadow:0 6px 24px #dbaa4726,inset 0 1px 0 #fff5;border-radius:28px;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,background-position .55s ease!important;text-shadow:none}
body.home-cine .sa-home .sa-text-link{padding:13px 21px;margin-top:12px;font-size:14px;line-height:1.45}
body.home-cine .sa-home .sa-hero-links a{padding:11px 17px;border-radius:24px;font-size:13px}
body.home-cine .sa-home .sa-chat-launch{border-radius:0 0 20px 20px;box-shadow:none}
body.home-cine .sa-home :is(.sa-btn,.sa-card-action,.sa-chat-launch,.sa-text-link,.sa-topic-links a,.sa-hero-links a,.hp-wl button)::after{content:'';position:absolute;inset:-60% auto -60% -55%;width:35%;background:linear-gradient(90deg,transparent,#fff8,transparent);transform:skewX(-22deg);pointer-events:none;opacity:0}
@media(hover:hover) and (pointer:fine){
 body.home-cine .sa-home :is(.sa-btn,.sa-chat-launch,.sa-text-link,.sa-topic-links a,.sa-hero-links a,.hp-wl button):hover{transform:translateY(-3px);background-position:100% 50%!important;box-shadow:0 12px 35px #e6b64f45,inset 0 1px #fff8}
 body.home-cine .sa-home :is(.sa-btn,.sa-chat-launch,.sa-text-link,.sa-topic-links a,.sa-hero-links a,.hp-wl button):hover::after,.sa-card:hover .sa-card-action::after{animation:sa-gold-sheen .8s ease both}
 body.home-cine .sa-home .sa-card:hover .sa-card-action{background-position:100% 50%!important;transform:translateY(-2px)}
 .sa-btn>span,.sa-card-action>span,.sa-chat-launch>span{transition:transform .3s ease}.sa-btn:hover>span,.sa-card:hover .sa-card-action>span,.sa-chat-launch:hover>span{transform:translateX(4px)}
}
.sa-home .sa-chat-choices button,.sa-home .sa-tabs button{border-color:#e3c58d70;color:#ead5ad;background:#bd944312}
.sa-home .sa-chat-choices button[aria-pressed=true],.sa-home .sa-tabs button[aria-pressed=true]{background:linear-gradient(120deg,#f8dfa5,#daa650);color:#14233a}
.sa-home .sa-pause{color:#edce92;border-color:#d6b47177;background:#b18d4014}
.sa-home .sa-faq summary::before{content:none!important}
.sa-home .sa-chat{transform:none}
.sa-home .sa-scene-enter{animation:sa-scene-arrival .75s cubic-bezier(.2,.6,.2,1) both}
@keyframes sa-scene-arrival{from{transform:translateY(14px)}to{transform:translateY(0)}}
@keyframes sa-glyph-drift{from{transform:translate3d(0,-8px,0) rotate(-7deg)}to{transform:translate3d(16px,20px,0) rotate(7deg)}}
@keyframes sa-gold-sheen{0%{left:-55%;opacity:0}15%{opacity:.7}100%{left:135%;opacity:0}}
@media(max-width:760px){body.home-cine .sa-home>section{min-height:100svh;padding-block:80px 64px}body.home-cine .sa-home>section.sa-hero{padding-block:115px 90px}.sa-bg-glyph{font-size:250px;opacity:.04;animation:none}.sa-home .sa-scene-enter{animation:none}body.home-cine .sa-home .sa-curve{height:60px}}
@media(prefers-reduced-motion:reduce){html:has(body.home-cine){scroll-behavior:auto}.sa-home .sa-bg-glyph,.sa-home .sa-scene-enter{animation:none!important}body.home-cine .sa-home :is(.sa-btn,.sa-card-action,.sa-chat-launch,.sa-text-link,.sa-topic-links a,.sa-hero-links a,.hp-wl button){transition:none!important;transform:none!important}body.home-cine .sa-home :is(.sa-btn,.sa-card-action,.sa-chat-launch,.sa-text-link,.sa-topic-links a,.sa-hero-links a,.hp-wl button)::after{animation:none!important;display:none}.sa-home .sa-btn>span,.sa-home .sa-card-action>span,.sa-home .sa-chat-launch>span{transform:none!important;transition:none!important}}
/* Continuous canvas and native, non-blocking scroll snapping. */
html:has(body.home-cine){scroll-snap-type:y proximity;scroll-padding-top:0}
body.home-cine .sa-home>section{scroll-snap-align:start;scroll-snap-stop:normal;background:transparent!important}
body.home-cine .sa-home .sa-curve{display:none}
body.home-cine .sa-home>section.sa-hero{background:transparent!important}
body.home-cine .sa-home .sa-hero-image{mask-image:linear-gradient(to bottom,#000 65%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 65%,transparent 100%)}
body.home-cine .sa-home .sa-hero::before{background:linear-gradient(90deg,#07182ddd,#102c5080 55%,#08172f40);mask-image:linear-gradient(to bottom,#000 65%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000 65%,transparent)}
@supports(animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
  body.home-cine .sa-home>section>.sa-container{animation:sa-scroll-dissolve linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
 }
}
@keyframes sa-scroll-dissolve{0%{opacity:.35;translate:0 20px}18%,82%{opacity:1;translate:0 0}100%{opacity:.35;translate:0 -20px}}
@media(max-width:760px){html:has(body.home-cine){scroll-snap-type:y proximity}}
@media(prefers-reduced-motion:reduce){html:has(body.home-cine){scroll-snap-type:none;scroll-behavior:auto}body.home-cine .sa-home>section>.sa-container{opacity:1;translate:none;animation:none!important}}
/* Matching illustrated exploration cards and the supplied lunar scene. */
.sa-cards-complement{margin-top:24px}
.sa-cards-complement .sa-card>img{object-position:center top}
.sa-cards-complement .sa-card h3{font-size:clamp(24px,2vw,28px);min-height:2.5em}
.sa-cards-complement .sa-card p{min-height:4.95em}
body.home-cine .sa-home .sa-hero-image{opacity:.7;object-position:50% 42%}
body.home-cine .sa-home .sa-hero::before{background:linear-gradient(90deg,#07182deb 0%,#10243f99 42%,#08172f33 75%),linear-gradient(0deg,#091b3288,transparent 45%)}
.sa-hero-stars{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;mask-image:linear-gradient(#000 70%,transparent)}
.sa-hero-stars i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:#fff2cf;box-shadow:0 0 8px 2px #eac98566;opacity:.2;animation:sa-starlight var(--duration) ease-in-out var(--delay) infinite alternate}
@keyframes sa-starlight{from{opacity:.12;transform:translate3d(0,0,0) scale(.7)}to{opacity:.65;transform:translate3d(8px,-12px,0) scale(1.15)}}
.sa-pointer-trail{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:9998}
@media(max-width:760px){body.home-cine .sa-home .sa-hero-image{object-position:53% top;opacity:.5}.sa-cards-complement{margin-top:14px}.sa-cards-complement .sa-card h3,.sa-cards-complement .sa-card p{min-height:0}.sa-hero-stars i:nth-child(n+15){display:none}}
@media(prefers-reduced-motion:reduce){.sa-hero-stars i{animation:none;opacity:.2}.sa-pointer-trail{display:none}}
/* Responsive scenes: native scrolling, no forced snapping or content scaling. */
html:has(body.home-cine){scroll-snap-type:none!important;scroll-padding-top:80px;scroll-behavior:smooth}
body.home-cine .sa-home>section,body.home-cine .footer{scroll-snap-align:none!important;scroll-snap-stop:normal!important;scroll-margin-top:0}
body.home-cine .sa-home>section>.sa-container{animation:none!important;opacity:1;translate:none;transform:none}
body.home-cine .sa-home .sa-container{width:min(1440px,calc(100% - clamp(40px,7vw,144px)));min-width:0}
.sa-home :is(.sa-hero-grid,.sa-split,.sa-faq-grid)>*{min-width:0}
.sa-home .sa-card{display:flex;align-items:flex-end}
.sa-home .sa-card>div{position:relative;inset:auto;width:100%;padding:22px}
@media(min-width:761px){
 body.home-cine .sa-home>section{min-height:100svh;height:auto;padding-block:clamp(84px,11svh,120px) clamp(28px,5svh,70px)}
 body.home-cine .sa-home>section.sa-hero{padding-block:clamp(94px,12svh,140px) clamp(32px,5svh,80px)}
 .sa-home h1{font-size:clamp(40px,min(5vw,7.5svh),78px)}
 .sa-home h2{font-size:clamp(32px,min(4vw,6svh),60px);margin-bottom:clamp(16px,2.8svh,28px)}
 .sa-home p{font-size:clamp(16px,1.15vw,18px);line-height:1.65;margin-bottom:clamp(16px,2.5svh,24px)}
 .sa-home .sa-kicker{margin-bottom:clamp(12px,2svh,22px)}
 .sa-home .sa-section-title{margin-bottom:clamp(20px,3svh,42px)}
 .sa-home .sa-section-title p{margin-bottom:0}
 .sa-home .sa-hero-grid,.sa-home .sa-split,.sa-home .sa-faq-grid{gap:clamp(28px,5vw,80px)}
 .sa-home .sa-hero-copy>p:not(.sa-kicker){margin-top:clamp(18px,3svh,28px);font-size:clamp(16px,1.25vw,18px)}
 .sa-home .sa-actions{margin-block:clamp(18px,3svh,30px);gap:12px}
 .sa-home .sa-btn{min-height:46px;padding:12px 20px;font-size:14px;gap:12px}
 .sa-home .sa-hero-links{gap:12px}
 .sa-home .sa-cards{gap:clamp(14px,1.6vw,24px)}
 .sa-home .sa-cards-complement{margin-top:0}
 .sa-home .sa-card{min-height:clamp(320px,57svh,560px)}
 .sa-home .sa-card h3{font-size:clamp(23px,2vw,30px);min-height:0}
 .sa-home .sa-card p{font-size:14px;line-height:1.55;min-height:0;margin-bottom:16px}
 .sa-home .sa-card>div{padding:clamp(16px,1.6vw,24px)}
 .sa-home .sa-card-action{font-size:12px;min-height:44px}
 .sa-home .sa-wheel{width:min(100%,62svh);margin-inline:auto;padding:12px}
 .sa-home .sa-wheel>span{margin-top:16px}
 .sa-home .sa-approach-art img{height:clamp(300px,64svh,660px)}
 .sa-home .sa-reading img{height:clamp(260px,53svh,540px)}
 .sa-home .sa-book img{min-height:0;max-height:70svh}
 .sa-home .sa-symbol{width:clamp(90px,15svh,145px);height:clamp(90px,15svh,145px);font-size:clamp(52px,8svh,78px);margin:clamp(14px,2.5svh,28px) auto}
 .sa-home .sa-symbol-panel{padding:clamp(20px,3svh,35px)}
 .sa-home .sa-symbol-panel p{min-height:0}
 .sa-home .sa-steps{gap:clamp(14px,2.5svh,24px);margin-block:clamp(18px,3svh,32px)}
 .sa-home .sa-steps p{font-size:15px;margin:6px 0 0}
 .sa-home .sa-offers{margin-top:clamp(20px,3svh,45px)}
 .sa-home .sa-offer{padding:clamp(20px,2.4vw,32px);gap:clamp(18px,3svh,30px)}
 .sa-home .sa-offer p{font-size:15px;margin:16px 0 0}
 .sa-home .sa-finale .hp-wl{margin-top:clamp(28px,5svh,65px);padding-top:clamp(22px,3svh,35px)}
 .sa-home .sa-chat-body{min-height:230px;padding:16px 20px 10px}
 .sa-home .sa-chat-top{padding:16px 20px}
 .sa-home .sa-chat-choices{padding:0 20px 16px}
 .sa-home .sa-reply{min-height:120px}
}
@media(min-width:1000px){.sa-home .sa-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:761px){.sa-home .sa-card{min-height:clamp(440px,64svh,610px)}.sa-home .sa-card p{font-size:13px;line-height:1.58}.sa-home .sa-card h3{margin-bottom:8px}.sa-home .sa-card>div>span{margin-bottom:8px}}
@media(min-width:761px) and (max-height:760px){
 .sa-home .sa-chat-body{min-height:0}.sa-home .sa-question{margin-bottom:14px}.sa-home .sa-reply p{font-size:14px;line-height:1.55}
 .sa-home .sa-chat-launch{padding:12px 20px}.sa-home .sa-chat-choices button{padding:8px 12px}
 .sa-home .sa-tool{min-height:280px;padding:24px}.sa-home .sa-tool-glyph{margin:0 0 18px;font-size:48px}
 .sa-home .sa-faq summary{padding-block:16px}.sa-home .sa-faq summary::after{top:15px}
}
@media(min-width:761px) and (max-width:999px){
 .sa-home .sa-hero-grid,.sa-home .sa-split{gap:24px}
 .sa-home .sa-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sa-home .sa-card{min-height:clamp(270px,32svh,380px)}
 .sa-home .sa-tool-grid,.sa-home .sa-offers{grid-template-columns:1fr}
 .sa-home .sa-tool{min-height:240px}
}
@media(max-width:760px){
 body.home-cine .sa-home>section{min-height:0;height:auto;padding-block:64px}
 body.home-cine .sa-home>section.sa-hero{min-height:0;padding-block:110px 64px}
 .sa-home .sa-card>div{padding:22px}.sa-home .sa-cards-complement{margin-top:0}
 .sa-home .sa-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:540px){.sa-home .sa-cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html:has(body.home-cine){scroll-behavior:auto}}
/* Bounded scene rhythm on tall monitors; uninterrupted blue atmosphere. */
@media(min-width:761px){
 body.home-cine .sa-home>section{min-height:min(100svh,860px);padding-block:clamp(64px,7svh,96px) clamp(40px,4.5svh,64px)}
 body.home-cine .sa-home>section.sa-hero{min-height:min(100svh,960px);padding-block:clamp(100px,10svh,136px) clamp(40px,5svh,72px)}
 .sa-home .sa-approach-art img{height:clamp(300px,58svh,540px)}
 .sa-home .sa-card{min-height:clamp(320px,53svh,480px)}
 .sa-home .sa-wheel{width:min(100%,56svh,520px)}
 .sa-home .sa-reading img{height:clamp(260px,49svh,460px)}
}
body.home-cine .sa-home{background:transparent}
.sa-blue-atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:linear-gradient(155deg,#071a32,#123654 48%,#0b2547)}
.sa-blue-atmosphere>span{position:absolute;inset:-25%;background:radial-gradient(ellipse at 25% 35%,#316caa80,transparent 53%),radial-gradient(ellipse at 75% 65%,#2578a05c,transparent 55%);animation:sa-blue-flow 24s ease-in-out infinite alternate;will-change:transform}
.sa-blue-atmosphere>span+span{background:radial-gradient(ellipse at 70% 25%,#447dc354,transparent 45%),radial-gradient(ellipse at 30% 75%,#143d743d,transparent 55%);animation-duration:33s;animation-delay:-12s;animation-direction:alternate-reverse}
@keyframes sa-blue-flow{from{transform:translate3d(-4%,-3%,0) scale(1)}to{transform:translate3d(5%,4%,0) scale(1.12)}}
body.home-cine .sa-home .sa-hero-image{opacity:1;object-position:50% 40%}
body.home-cine .sa-home .sa-hero::before{background:linear-gradient(90deg,#071a32bf 0%,#0b213b70 35%,#0b213b0a 70%),linear-gradient(0deg,#0b254777,transparent 42%)}
.sa-hero-copy{text-shadow:0 2px 20px #031020c9}
.sa-hero-copy>p:not(.sa-kicker){color:#f0f3f9}
.sa-hero-stars{z-index:1;mask-image:linear-gradient(#000 76%,transparent)}
.sa-hero-stars i{width:4px;height:4px;box-shadow:0 0 7px 2px #fff2cfa0,0 0 22px 5px #aacff54d;animation-name:sa-star-breathe}
.sa-hero-stars i:nth-child(4n)::before,.sa-hero-stars i:nth-child(4n)::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:16px;height:1px;background:linear-gradient(90deg,transparent,#fff2cf,transparent)}
.sa-hero-stars i:nth-child(4n)::after{width:1px;height:16px}
@keyframes sa-star-breathe{from{opacity:.35;transform:translate3d(0,0,0) scale(.8)}to{opacity:.95;transform:translate3d(10px,-16px,0) scale(1.2)}}
.sa-lunar-halo{position:absolute;z-index:0;left:36%;top:8%;width:42%;height:58%;pointer-events:none;border-radius:50%;background:radial-gradient(ellipse,#f3d69819,transparent 68%);animation:sa-lunar-breathe 12s ease-in-out infinite alternate}
@keyframes sa-lunar-breathe{from{opacity:.35;transform:scale(.94)}to{opacity:.85;transform:scale(1.07)}}
@media(max-width:760px){body.home-cine .sa-home .sa-hero-image{opacity:.85}.sa-blue-atmosphere>span{inset:-15%;animation-duration:32s}.sa-hero-stars i{width:3px;height:3px}.sa-lunar-halo{left:15%;width:75%;height:40%}}
@media(prefers-reduced-motion:reduce){.sa-blue-atmosphere>span,.sa-lunar-halo,.sa-hero-stars i{animation:none!important}.sa-hero-stars i{opacity:.6}.sa-lunar-halo{opacity:.45}}
/* Clearly perceptible blue movement and shooting stars behind the content. */
.sa-blue-atmosphere{background:linear-gradient(140deg,#071d39,#173f69 48%,#0a274a)}
.sa-blue-atmosphere>span{inset:-35%;background:radial-gradient(ellipse at 22% 30%,#357fc3c2 0%,#255f9b65 25%,transparent 53%),radial-gradient(ellipse at 78% 65%,#237da3a8 0%,transparent 48%);animation:sa-blue-current 16s ease-in-out infinite alternate}
.sa-blue-atmosphere>span+span{background:radial-gradient(ellipse at 72% 22%,#4c86c887,transparent 42%),radial-gradient(ellipse at 26% 78%,#13365ba8,transparent 48%);animation:sa-blue-current 21s ease-in-out -9s infinite alternate-reverse}
@keyframes sa-blue-current{0%{transform:translate3d(-12%,-8%,0) rotate(-7deg) scale(1)}100%{transform:translate3d(14%,10%,0) rotate(9deg) scale(1.14)}}
.sa-hero-stars i{width:5px;height:5px;box-shadow:0 0 8px 2px #fff4d8b0,0 0 26px 7px #badcff66}
.sa-hero-meteors{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;mask-image:linear-gradient(#000 55%,transparent 85%)}
.sa-hero-meteors span{position:absolute;top:10%;left:48%;width:160px;height:2px;opacity:0;background:linear-gradient(90deg,transparent,#d3eaff88,#fff0ca);border-radius:100%;transform-origin:right center;animation:sa-meteor 10s linear infinite;filter:drop-shadow(0 0 4px #b5d9ff)}
.sa-hero-meteors span:nth-child(2){top:22%;left:68%;width:115px;animation-delay:-4s;animation-duration:13s}
.sa-hero-meteors span:nth-child(3){top:5%;left:32%;width:95px;animation-delay:-8s;animation-duration:17s}
@keyframes sa-meteor{0%{opacity:0;transform:translate3d(0,0,0) rotate(28deg)}3%{opacity:.85}16%{opacity:0;transform:translate3d(280px,150px,0) rotate(28deg)}100%{opacity:0;transform:translate3d(280px,150px,0) rotate(28deg)}}
@media(max-width:760px){.sa-hero-meteors span{width:90px}.sa-hero-meteors span:nth-child(3){display:none}.sa-blue-atmosphere>span{animation-duration:22s}.sa-hero-stars i{width:4px;height:4px}}
@media(prefers-reduced-motion:reduce){.sa-blue-atmosphere>span,.sa-hero-meteors span{animation:none!important}.sa-hero-meteors{display:none}}
/* The mesh is a single fixed surface shared by every homepage section. */
.sa-blue-atmosphere>canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.sa-blue-atmosphere.sa-mesh-ready>span{display:none;animation:none}
/* Stronger auroral movement when the CSS fallback is used. */
.sa-blue-atmosphere:not(.sa-mesh-ready)>span{animation-duration:12s}
.sa-blue-atmosphere:not(.sa-mesh-ready)>span+span{animation-duration:17s}
/* Brighter stellar scintillation with slow, staggered peaks. */
.sa-hero-stars i{width:5px;height:5px;background:#fff9e8;box-shadow:0 0 5px 2px #fff5dacc,0 0 18px 5px #c1e6ff99,0 0 35px 8px #71aaff44;animation:sa-star-shimmer var(--duration) ease-in-out var(--delay) infinite}
.sa-hero-stars i:nth-child(3n){width:7px;height:7px}
.sa-hero-stars i:nth-child(4n)::before{width:24px;height:2px;background:linear-gradient(90deg,transparent,#fff9e8,transparent)}
.sa-hero-stars i:nth-child(4n)::after{width:2px;height:24px;background:linear-gradient(0deg,transparent,#fff9e8,transparent)}
@keyframes sa-star-shimmer{0%,100%{opacity:.3;transform:translate3d(0,0,0) scale(.75)}35%{opacity:.65;transform:translate3d(3px,-5px,0) scale(1)}55%{opacity:1;transform:translate3d(5px,-8px,0) scale(1.4)}75%{opacity:.55;transform:translate3d(7px,-11px,0) scale(.95)}}
.sa-blue-atmosphere:not(.sa-mesh-ready)>span{background:radial-gradient(ellipse at 22% 30%,#387edac4,transparent 53%),radial-gradient(ellipse at 78% 65%,#26ab989c,transparent 48%)}
.sa-blue-atmosphere:not(.sa-mesh-ready)>span+span{background:radial-gradient(ellipse at 72% 22%,#8269cb75,transparent 42%),radial-gradient(ellipse at 26% 78%,#32a18b66,transparent 48%)}
@media(max-width:760px){.sa-hero-stars i{width:4px;height:4px}.sa-hero-stars i:nth-child(3n){width:5px;height:5px}}
@media(prefers-reduced-motion:reduce){.sa-hero-stars i{animation:none!important;opacity:.75}}

/* Accueil resserré (11/10/2026) : douze outils en une grille, Palazzo dans sa section. */
.sa-home .sa-cards-outils{grid-template-columns:repeat(4,minmax(0,1fr))}
.sa-home .sa-cards-outils .sa-card{min-height:300px}
.sa-home .sa-cards-outils .sa-card>img{object-position:center center}
.sa-home .sa-cards-outils .sa-card h3{font-size:clamp(20px,1.6vw,24px);margin-bottom:8px;min-height:0}
.sa-home .sa-cards-outils .sa-card p{font-size:14px;line-height:1.55;min-height:0;margin-bottom:0}
/* 18/10/2026 : avec aspect-ratio, toute min-height se transfère en largeur (280 × 4/3,3 = 339 px) et les cartes
   débordaient de leurs colonnes dès que celles-ci étaient plus étroites (fenêtre < 1500 px). Plus de min-height :
   le ratio 4/3,3 donne la hauteur à partir de la colonne, et le contenu peut l'allonger si besoin. */
.sa-home .sa-cards-outils .sa-card{min-height:0;aspect-ratio:4/3.3;min-width:0}
.sa-palazzo{background:linear-gradient(145deg,#0c1d34,#173754)}
.sa-palazzo .sa-chat{max-width:560px;justify-self:end;width:100%}
.sa-palazzo p{margin-bottom:24px}
@media(max-width:1100px){.sa-home .sa-cards-outils{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sa-home .sa-cards-outils{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-home .sa-cards-outils .sa-card{min-height:0}.sa-palazzo .sa-chat{justify-self:stretch;max-width:none}}
@media(max-width:460px){.sa-home .sa-cards-outils{grid-template-columns:1fr}}

/* Rubriques de la grille : mêmes repères que le menu. */
.sa-home .sa-cards-group{grid-column:1 / -1;margin:28px 0 4px;font-size:clamp(25px,2.4vw,32px);line-height:1.25}
.sa-home .sa-cards-group:first-child{margin-top:0}

/* 18/10/2026 : en-tête centré (demande de Stéphane). Une seule colonne de lecture au milieu, boutons centrés,
   et un halo sombre très doux derrière le bloc de texte pour le détacher de la Lune et du ciel. */
.sa-home .sa-hero-grid{grid-template-columns:minmax(0,1fr);justify-items:center;gap:0}
.sa-home .sa-hero-copy{position:relative;max-width:760px;text-align:center;padding:clamp(18px,3vw,36px) clamp(16px,3vw,40px)}
.sa-home .sa-hero-copy::before{content:"";position:absolute;inset:-6% -14%;z-index:-1;pointer-events:none;border-radius:50%;
  background:radial-gradient(ellipse at 50% 50%,rgba(6,14,30,.58) 0%,rgba(6,14,30,.34) 42%,rgba(6,14,30,0) 72%)}
.sa-home .sa-hero-copy h1{text-wrap:balance}
.sa-home .sa-hero-copy>p:not(.sa-kicker){margin-left:auto;margin-right:auto;max-width:62ch;text-wrap:pretty}
.sa-home .sa-hero-copy .sa-actions{justify-content:center}
.sa-home .sa-hero-copy{text-shadow:0 1px 2px rgba(3,16,32,.55),0 6px 24px rgba(3,16,32,.45)}
.sa-home .sa-hero-copy .sa-hero-link{color:#f7e3ad;font-weight:600;text-decoration:none;padding:1px 6px 2px;border-radius:8px;background:linear-gradient(0deg,rgba(226,175,78,.34),rgba(226,175,78,.34)) no-repeat 0 100%/100% 42%;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background-size .2s ease,color .2s ease}
.sa-home .sa-hero-copy .sa-hero-link:hover,.sa-home .sa-hero-copy .sa-hero-link:focus-visible{background-size:100% 100%;color:#1a1b2e}
