/* Glass, depth and purposeful motion. The headline panel is always stationary. */
.header.header{height:auto;min-height:108px;padding-block:16px;gap:24px}.brand-lockup{flex-shrink:0;display:block}.brand-meaning{display:block;font-size:9px;line-height:1.45;color:#455c7b;letter-spacing:.1px;margin-top:5px}.header .logo{line-height:1.1}.header nav{font-size:12px;gap:20px}
.site-background{background:radial-gradient(ellipse at 82% 48%,#c4dcff80,transparent 48%),linear-gradient(135deg,#f1f6ff,#d3e1f5 65%,#eff6ff)}.backdrop-ribbon{position:absolute;inset:20% -30%;border:2px solid #fff;border-right:8px solid #70afff7a;border-bottom:3px solid #9cc6ff;border-radius:50%;transform:rotate(-28deg);box-shadow:0 12px 15px #638fcb22,inset 0 3px 5px #fff8}.backdrop-ribbon:after{content:'';position:absolute;inset:30px -30px;border:1px solid #fff;border-radius:50%;transform:rotate(18deg)}
.backdrop-emblem{position:absolute;right:8vw;top:28vh;width:clamp(220px,30vw,530px);aspect-ratio:1;perspective:1300px}.emblem-turn{height:100%;transform-style:preserve-3d;animation:emblem-revolve 28s linear infinite}.emblem-front,.emblem-back{position:absolute;inset:0;border:2px solid #ffffffd9;border-radius:23%;background:linear-gradient(135deg,#ffffff9c,#d6eaff26 45%,#9dc5ff6b);box-shadow:inset 8px 9px 17px #fff9,inset -8px -8px 14px #729ed444,0 25px 50px #4b70ad30;display:grid;place-items:center;backface-visibility:hidden}.emblem-front{transform:translateZ(12px)}.emblem-back{transform:rotateY(180deg) translateZ(12px)}.emblem-front svg,.emblem-back svg{width:53%;filter:drop-shadow(0 12px 6px #2049c334)}
@keyframes emblem-revolve{from{transform:rotateX(8deg) rotateY(0deg) rotateZ(-10deg)}to{transform:rotateX(8deg) rotateY(360deg) rotateZ(-10deg)}}
.hero.hero{min-height:820px;height:100svh;max-height:1180px;overflow:hidden;background:linear-gradient(180deg,#edf4ff 0%,#e3eeffba 70%,transparent)}.hero .hero-background{display:none}.hero .hero-shade{background:linear-gradient(90deg,#edf4ffb0,transparent 75%);mask-image:none}.hero .hero-copy{position:relative;z-index:2;width:min(53%,710px);margin:92px 0 70px 4%;padding:clamp(24px,3vw,48px);border:1px solid #ffffffec;border-radius:24px;background:linear-gradient(125deg,#fffffff0,#f2f7ffc9 70%,#dceaffd9);box-shadow:9px 13px 0 -5px #b5ccec,12px 16px 0 -5px #ffffffdb,0 35px 70px #34588724,inset 0 1px 2px #fff;transform:perspective(1500px) rotateY(5deg) rotateZ(-1deg);transform-origin:left center;animation:none;transition:none;backdrop-filter:blur(12px)}.hero .hero-copy h1{font-size:clamp(31px,3.5vw,58px);line-height:1.13;letter-spacing:-.045em}.hero .hero-copy h1 br{display:none}.hero .hero-copy h1 em{display:inline}.hero .hero-copy .intro{font-size:clamp(13px,1.2vw,17px);line-height:1.8;margin:26px 0 30px}.hero .hero-copy .eyebrow{font-size:9px;letter-spacing:1.3px;line-height:1.8}.hero .hero-appointment{border-radius:10px;box-shadow:0 8px 20px #1e50de20}.hero-bottom{z-index:4}
.hero-engine{position:absolute;right:-1%;top:16%;width:52%;height:72%;perspective:1100px;container-type:inline-size;pointer-events:none}.engine-float{position:absolute;width:52cqw;height:52cqw;top:20%;left:24%;transform-style:preserve-3d;animation:engine-hover 9s ease-in-out infinite}.engine-cube{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(-12deg) rotateY(-28deg);animation:engine-yaw 16s ease-in-out infinite}.cube-face{position:absolute;inset:0;border:2px solid #f8fdff;border-radius:7%;background:linear-gradient(135deg,#fff8,#cae4ff0d 35%,#72afff26 85%,#fff9);box-shadow:inset 3px 3px 8px #fff9,inset -4px -4px 6px #2d6fc044,0 0 2px #a0cfff}.cube-front{transform:translateZ(20cqw)}.cube-back{transform:translateZ(-20cqw)}.cube-left{width:40cqw;transform:translateX(-20cqw) rotateY(90deg)}.cube-right{width:40cqw;transform:translateX(32cqw) rotateY(90deg)}.cube-top{height:40cqw;transform:translateY(-20cqw) rotateX(90deg)}.cube-bottom{height:40cqw;transform:translateY(32cqw) rotateX(90deg)}
.engine-reactor{position:absolute;inset:10%;transform-style:preserve-3d}.engine-reactor i{position:absolute;inset:0;border-radius:50%;border:5px solid #c0e7ff;box-shadow:0 0 8px #83c9ff,inset 0 0 8px #4a96ff;animation:reactor-spin 12s linear infinite}.engine-reactor i:nth-child(2){inset:7%;animation-direction:reverse;animation-duration:17s;border-width:10px;border-color:#f7fcffb0}.engine-reactor i:nth-child(3){inset:15%;animation-duration:9s;border-color:#3e87ffb0}.engine-reactor b{position:absolute;inset:27%;border-radius:50%;background:radial-gradient(circle at 44% 39%,#fff 0 5%,#bcfaff 13%,#51c9ff 28%,#1f75e5 50%,#0c315f 80%);box-shadow:0 0 30px #52bdff,0 0 70px #a3d8ff;transform:translateZ(9cqw)}
.engine-brand{position:absolute;bottom:-6%;left:20%;width:70%;display:flex;align-items:center;justify-content:center;gap:9px;font-size:3.5cqw;color:#15325e;letter-spacing:.1em;transform:translateZ(24cqw);text-shadow:0 2px 2px white}.engine-brand svg{width:8cqw}.engine-plinth{position:absolute;bottom:11%;left:9%;width:86%;height:24%;border-radius:50%;border:3px solid #f4fcff;background:linear-gradient(180deg,#fff6,#91bded60);box-shadow:0 12px 0 #b3d4f3,0 15px 0 #fff,0 30px 20px #294b7d22,inset 0 0 25px #f8ffff;transform:rotateX(60deg)}.engine-orbit{position:absolute;top:25%;left:2%;width:96%;height:46%;border:1px solid #fff;border-bottom:3px solid #78bfff;border-radius:50%;transform:rotate(-24deg);box-shadow:0 3px 8px #c5e6ff;animation:orbit-drift 14s ease-in-out infinite}.orbit-two{transform:rotate(34deg);animation-direction:reverse;animation-delay:-7s}.engine-satellite{position:absolute;display:grid;place-items:center;width:8cqw;height:8cqw;background:linear-gradient(130deg,#fff,#b8d9ff99);border:1px solid white;box-shadow:4px 5px 0 #71a9e94f,0 12px 18px #5278a52e;border-radius:20%;font-size:2cqw;font-weight:700;color:#2457e6;transform:translateZ(30cqw)}.hero-engine .satellite-one{top:-12%;left:-12%}.hero-engine .satellite-two{top:-4%;right:-15%}.hero-engine .satellite-three{bottom:8%;left:-24%}.engine-caption{position:absolute;bottom:2%;left:0;width:100%;text-align:center;font-size:9px;letter-spacing:3px;color:#526d91}
@keyframes reactor-spin{from{transform:rotateX(65deg) rotateY(15deg) rotateZ(0)}to{transform:rotateX(65deg) rotateY(15deg) rotateZ(360deg)}}@keyframes engine-hover{50%{translate:0 -14px}}@keyframes engine-yaw{50%{transform:rotateX(-6deg) rotateY(-8deg)}}@keyframes orbit-drift{50%{translate:0 -14px;rotate:8deg}}
/* Stepped glass slabs give the two explanatory diagrams real depth. */
.scenario-visual,.method-visual{overflow:hidden;perspective:1200px;background:radial-gradient(ellipse at 50% 70%,#92bdff50,transparent 65%),linear-gradient(135deg,#f8fcffe6,#d9e9ffb3);box-shadow:inset 0 1px 0 white,0 20px 50px #264a7a13}.process-flow,.method-visual ol{gap:20px;transform-style:preserve-3d;padding:6px 10px 20px}.process-flow li,.method-visual li{padding:18px 16px;border:1px solid #ffffff;border-radius:14px;background:linear-gradient(120deg,#fff,#eaf3ffd9);box-shadow:4px 6px 0 #a3bfe84d,5px 7px 0 #fff,8px 16px 20px #3e63871b;transform:rotateY(-9deg) rotateX(5deg);animation:process-lift 8s ease-in-out infinite;transform-style:preserve-3d;gap:5px 15px}.process-flow li:nth-child(2),.method-visual li:nth-child(2){animation-delay:-6s}.process-flow li:nth-child(3),.method-visual li:nth-child(3){animation-delay:-4s}.process-flow li:nth-child(4),.method-visual li:nth-child(4){animation-delay:-2s}.process-flow li:after,.method-visual li:after{content:'';position:absolute;left:34px;top:100%;width:2px;height:22px;background:linear-gradient(#316cff,#b1d2ff)}.process-flow li:last-child:after,.method-visual li:last-child:after{display:none}.process-flow li>span,.method-visual li>span{background:linear-gradient(135deg,#4591ff,#1d4ce4);color:white;border:1px solid #a5d1ff;box-shadow:3px 4px 0 #133cae,0 8px 14px #2355cc22;transform:translateZ(12px);border-radius:12px}.process-flow strong,.method-visual strong{font-size:clamp(14px,1.4vw,20px)}.process-flow small,.method-visual small{font-size:12px}.method-visual li{grid-template-columns:54px 1fr}.method-visual>p:last-child{font-size:13px}.method-explanation{transition:box-shadow .3s,border-color .3s}.method-explanation .steps article{transition:transform .25s,background .25s,box-shadow .25s;padding:18px 14px;border-radius:12px}.method-explanation:focus-within,.method-explanation:hover{border-color:#aacbff;box-shadow:0 20px 60px #3562a422}@media(hover:hover){.method-explanation .steps article:hover{transform:translateX(5px);background:#ffffffb5;box-shadow:0 10px 25px #2d4d7d12}}
@keyframes process-lift{0%,70%,100%{transform:rotateY(-9deg) rotateX(5deg) translateZ(0)}30%{transform:rotateY(-5deg) rotateX(3deg) translateZ(16px)}}
/* A compact portrait preserves the original photograph without regenerating the face. */
#apropos .founder-portrait{max-width:350px;justify-self:center;padding:12px;box-shadow:0 25px 60px #264c7b20;background:#f7fbffbc;border:1px solid white;border-radius:24px}#apropos .founder-portrait .founder-photo{border-radius:15px;width:100%;height:auto;aspect-ratio:1;object-fit:contain}#apropos .founder-card{border:0;background:transparent;padding:22px 10px 12px}#apropos .founder-card>span{font-size:20px}#apropos .founder-card>small{font-size:12px}
/* Diagnostic: clear progress, legible choices and an explicit result. */
#diagnostic .diagnostic-panel{padding:clamp(22px,3vw,42px);background:linear-gradient(145deg,#fff,#f5f9ff);border:1px solid white;border-radius:24px;box-shadow:0 22px 65px #2349791c;overflow:hidden;position:relative}#diagnostic .quiz-top{font-size:10px;color:#4d6384;letter-spacing:1.5px}#quiz-count{color:#1d54d1;background:#eaf2ff;border-radius:20px;padding:6px 10px;white-space:nowrap}.diagnostic-journey{list-style:none;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:25px 0 12px;counter-reset:journey}.diagnostic-journey li{counter-increment:journey;text-align:center;font-size:9px;color:#718096;display:grid;gap:8px;justify-items:center}.diagnostic-journey li:before{content:counter(journey);width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#edf1f7;color:#6f8098;transition:background .3s}.diagnostic-journey li.is-current{color:#1e52d1;font-weight:700}.diagnostic-journey li.is-current:before{background:#2457e6;color:white;box-shadow:0 0 0 4px #e5eeff}.diagnostic-journey li.is-done:before{content:'✓';background:#dceaff;color:#2457e6}#diagnostic .progress{height:3px;margin:20px 0 28px;border-radius:3px;background:#e6edf7}#diagnostic #progress-bar{transition:width .4s}#diagnostic legend{font-size:clamp(22px,2.2vw,32px);font-weight:700;line-height:1.2;letter-spacing:-.8px}#diagnostic .question-help{font-size:13px;line-height:1.7;color:#576b85;margin:16px 0 22px}#diagnostic .choice{margin-bottom:12px}#diagnostic .choice span{background:white;border:1px solid #dce5f3;border-radius:12px;min-height:62px;padding:16px;font-size:14px;line-height:1.5;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}#diagnostic .choice:hover span{border-color:#9cb9ef;transform:translateX(3px)}#diagnostic .choice input:checked+span{background:#edf4ff;border-color:#2457e6;box-shadow:inset 3px 0 #2457e6}#diagnostic .quiz-buttons{margin-top:30px;padding-top:20px;border-top:1px solid #e3ebf7}#diagnostic .quiz-buttons .button{border-radius:10px;padding:15px 20px;font-size:13px}#diagnostic .back{font-size:12px}#diagnostic .erase-inline{font-size:11px;color:#66758b;border:0;margin-top:24px;text-decoration:underline;text-underline-offset:4px}#diagnostic .number-field{padding:18px;border:1px solid #dde7f5;border-radius:12px;background:white;margin:14px 0}#diagnostic .number-field label{font-size:13px;font-weight:650;color:#233853}#diagnostic .number-field input{width:100%;font-size:24px;font-weight:700;padding:13px;border:1px solid #bfd0eb;border-radius:8px;margin:10px 0;color:#1c4fc4}#diagnostic .number-field input:focus{outline:2px solid #2457e6;outline-offset:2px}#diagnostic .number-field small{font-size:11px;line-height:1.6;color:#64748b}#diagnostic .time-result{background:radial-gradient(circle at 95% 0,#407efb,#173e9f);color:white;border:0;border-radius:18px;padding:27px 22px;margin:25px 0;box-shadow:0 10px 25px #2457e62b}#diagnostic .time-result span{color:#e2ecff;font-size:12px;display:block}#diagnostic .time-result strong{color:white;font-size:clamp(26px,3vw,42px);line-height:1.2;display:block;margin:12px 0;letter-spacing:-1px}#diagnostic .calculation{background:white;border:1px solid #dce6f4;border-radius:14px;padding:8px 18px}#diagnostic .calculation>div{padding:13px 0;font-size:12px}#diagnostic .calculation dd{color:#1b4db8;font-weight:650}#diagnostic #result h3{font-weight:700;font-size:27px}#diagnostic #result>p,#diagnostic #result li{font-size:13px;line-height:1.8}#diagnostic #result .caption{font-size:11px}#diagnostic .result-actions{margin-top:25px}#diagnostic .result-actions .button{border-radius:10px}
/* Questions and the next step. */
#contenu .faq{width:min(94%,1440px);margin:64px auto;padding:clamp(24px,4vw,56px);display:grid;grid-template-columns:.8fr 1.2fr;gap:32px 50px;border-radius:24px;background:#f7fbffcb;border:1px solid white}.faq-list details{border:1px solid #dce6f4;background:#ffffffb5;border-radius:12px;margin-bottom:10px;padding:0 18px;transition:box-shadow .25s,border-color .25s,transform .25s}.faq-list summary{font-size:14px;font-weight:550;padding:20px 0}.faq-list details[open]{background:white;border-color:#a6c3f5;box-shadow:0 10px 25px #2457e60c}.faq-list details[open]>p{animation:answer-enter .3s ease-out}.faq-list details:hover{border-color:#9dbbeb;transform:translateY(-2px)}.faq-list details>p{padding-right:8px;font-size:13px}.question-desk{grid-column:1/-1;border-top:1px solid #d0dff0;padding-top:32px}.question-desk h3{font-size:25px;font-weight:650;letter-spacing:-.8px}.question-desk p:not(.eyebrow){font-size:13px;color:#526681;max-width:740px}.question-desk .eyebrow{margin-bottom:12px}.question-icon{float:right;width:50px;height:50px;display:grid;place-items:center;background:#e6efff;border-radius:15px;color:#2457e6;font-size:24px;box-shadow:3px 4px #bed3f6}.question-desk label{display:block;font-size:12px;font-weight:650;margin-bottom:8px}.question-input-row{display:flex;gap:10px}.question-input-row input{flex:1;min-width:0;border-radius:10px;border:1px solid #bbcee8;padding:15px;background:white;color:#183253}.question-input-row .button{border-radius:10px}.question-desk small{display:block;font-size:11px;margin:10px 0 18px;color:#637590}.question-desk .text-link{color:#2457e6}.question-desk #faq-answer{border-left:3px solid #2457e6;padding:18px 22px;margin:20px 0;background:#fff;border-radius:0 12px 12px 0}.question-desk #faq-answer p{margin:8px 0 0}.question-desk #faq-answer strong{font-size:14px}
@keyframes answer-enter{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
#contenu .closing{width:min(94%,1440px);margin:64px auto;padding:clamp(26px,4vw,56px);display:grid;grid-template-columns:1.2fr .8fr;gap:50px;background:linear-gradient(125deg,#f9fcfff0,#e7f0ffe8);border-radius:24px;border:1px solid white;box-shadow:0 20px 50px #345b8b16}.closing .eyebrow{color:#3765ae}.closing h2{font-size:clamp(30px,3.1vw,48px);font-weight:650;line-height:1.12}.closing-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#4b607e;max-width:590px;margin:22px 0}.closing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.closing .closing-actions .button{margin:0;border-radius:10px;padding:19px 24px}.closing-actions .text-link{font-size:12px;color:#234a8d}.closing-plan{padding:28px;border:1px solid #ccdef7;border-radius:18px;background:#ffffff9c}.closing-plan>span{font-size:10px;letter-spacing:1.8px;color:#54719c}.closing-plan ol{list-style:none;padding:0;margin:24px 0}.closing-plan li{display:flex;gap:16px;margin:23px 0;font-weight:650;font-size:15px;align-items:flex-start}.closing-plan b{color:#2457e6;font-size:12px;background:#eaf2ff;border-radius:8px;padding:7px}.closing-plan small{display:block;font-size:12px;font-weight:400;color:#5c6f88;margin-top:5px}.closing-plan>p{font-size:12px;color:#506885;border-top:1px solid #d7e4f4;padding-top:18px;margin-bottom:0}
.motion-control{position:fixed;bottom:16px;right:16px;z-index:30;border:1px solid #c8d8ef;border-radius:40px;padding:11px 16px;background:#ffffffed;box-shadow:0 6px 18px #142a4720;color:#355072;font-size:11px;display:flex;gap:9px;align-items:center}.motion-control span{color:#2457e6}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
@media(max-width:1100px){.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f8fbff;padding:20px;flex-direction:column;border-radius:12px}.header nav.open{display:flex}.header .menu-toggle{display:flex;margin-left:0;order:3;color:#193451}.header>.appointment{margin-left:auto}.hero.hero{min-height:760px}.hero .hero-copy{width:56%;margin-left:3%;padding:26px}.hero-engine{right:-7%;width:57%;top:18%}.hero .hero-copy h1{font-size:clamp(30px,4vw,43px)}.hero .hero-copy .eyebrow{font-size:8px}.hero .hero-copy .intro{font-size:13px}.process-flow,.method-visual ol{padding-inline:0}.process-flow li,.method-visual li{grid-template-columns:40px 1fr;padding:14px 10px;gap:4px 12px}.process-flow li>span,.method-visual li>span{width:40px;height:40px;font-size:15px}.process-flow small,.method-visual small{font-size:11px}#diagnostic .choice span{font-size:12px;padding:13px}#contenu .faq{gap:25px}#contenu .closing{gap:24px}}
@media(max-width:639px){.header.header{width:94%;padding:13px 12px;gap:9px;min-height:100px}.brand-meaning{font-size:7px;max-width:185px}.header .logo{font-size:22px}.header>.appointment{font-size:9px;padding:10px;gap:7px}.header .menu-toggle{font-size:10px;padding:5px;gap:5px}.hero.hero{height:auto;min-height:900px;display:block;padding-top:160px;padding-bottom:360px}.hero .hero-copy{width:88%;margin:0 auto;padding:25px;transform:perspective(1400px) rotateY(3deg) rotateZ(-.7deg);border-radius:18px}.hero .hero-copy h1{font-size:clamp(29px,7.8vw,43px)}.hero .hero-copy .eyebrow{font-size:7px}.hero .hero-copy .intro{font-size:13px;margin:20px 0}.hero .hero-copy .button{font-size:12px;padding:15px 18px}.hero-engine{top:auto;bottom:65px;right:8%;width:78%;height:290px;max-width:360px}.engine-float{top:12%;left:25%;width:44cqw;height:44cqw}.engine-caption{font-size:7px;letter-spacing:2px;bottom:1%}.engine-plinth{bottom:3%}.engine-orbit{top:20%}.hero-bottom{padding-block:13px}.backdrop-emblem{width:70vw;right:-18vw;top:40vh;opacity:.6}.process-flow li,.method-visual li{padding:18px;grid-template-columns:46px 1fr}.process-flow li>span,.method-visual li>span{width:46px;height:46px}.process-flow strong,.method-visual strong{font-size:17px}#apropos .founder-portrait{max-width:300px;position:static}#diagnostic .diagnostic-panel{padding:25px 20px}#diagnostic .choice span{font-size:13px}.diagnostic-journey li{font-size:8px}#contenu .faq,#contenu .closing{width:92%;grid-template-columns:1fr;margin:40px auto;padding:26px 22px}.faq-list summary{font-size:13px}.question-input-row{flex-wrap:wrap}.question-input-row input{flex-basis:100%;font-size:14px}.question-input-row .button{width:100%}.question-icon{width:38px;height:38px}.question-desk h3{font-size:23px;padding-right:40px}.closing-plan{padding:22px}.closing-copy>p:not(.eyebrow){font-size:14px}.motion-control{font-size:9px;bottom:10px;right:10px;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.motion-control{display:none}}
.engine-reactor i:after{content:'';position:absolute;top:-7px;left:48%;width:11px;height:11px;border-radius:50%;background:#fff;box-shadow:0 0 12px 4px #65cfff}
.result-next-step{margin:25px 0;padding:20px;border:1px solid #cbdcf3;border-radius:14px;background:#eef5ff}.result-next-step strong{font-size:14px;color:#1e4d9f}.result-next-step p{font-size:13px;line-height:1.8;margin:8px 0 0;color:#3e5676}
