@import url("shared/brand.css");
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--site-header-height,90px) + 16px)}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.skip{position:fixed;top:-100px;z-index:100;background:var(--panel-bg);padding:12px}.skip:focus{top:10px}.header{background:var(--header-bg);border-bottom:1px solid var(--line);height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:absolute;top:0;width:100%;z-index:10;color:var(--ink)}.brand{display:flex;align-items:center;gap:9px;font-family:Manrope,sans-serif;font-size:25px;font-weight:800;letter-spacing:-1px}.brand img{width:38px;height:38px;object-fit:contain}.brand-dot{color:var(--brand-honey)}.header nav{display:flex;gap:30px;font-size:13px;font-weight:600}.nav-cta{font-size:13px;font-weight:600;border-bottom:1px solid;padding:7px 0}.nav-cta span{margin-left:12px}.hero{min-height:890px;position:relative;padding:150px 5% 80px;display:grid;grid-template-columns:1.03fr 1fr;gap:5%;overflow:hidden;background:var(--page-bg)}.hero-grain{position:absolute;inset:0;pointer-events:none}.hero-copy,.hero-visual{position:relative}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:700;display:flex;align-items:center;gap:10px}.tiny-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(48px,5.1vw,78px);line-height:1.07;letter-spacing:-4px;font-weight:600;margin:32px 0 24px}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-2px}.hero h1 em{color:var(--green)}.hero-copy>p{font-size:16px;max-width:390px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:24px;border-radius:5px;padding:17px 23px;font-size:13px;font-weight:700;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.honey{background:var(--action-bg);color:var(--action-text)}.honey:hover{background:var(--action-hover)}.text-link{font-size:12px;border-bottom:1px solid var(--line);padding:5px 0}.hero-note{display:flex;gap:20px;font-size:11px;color:var(--muted);margin-top:25px}.hero-note span+span:before{content:'·';margin-right:20px}.hero-visual{margin-top:25px;height:570px}.photo-frame{position:absolute;inset:0 8px 0 16px;border-radius:180px 180px 12px 12px;overflow:hidden;background:var(--raised-bg);will-change:transform}.photo-frame>img{width:100%;height:100%;object-fit:cover}.image-shade{position:absolute;inset:0;background:linear-gradient(transparent 50%,var(--photo-shade))}.photo-caption{position:absolute;bottom:25px;left:30px;font-size:10px;letter-spacing:3px;color:var(--on-photo)}.orbit-label{position:absolute;right:-15px;top:-35px;width:115px;height:115px;background:var(--honey);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:9px;letter-spacing:1.8px;line-height:1.5;transform:rotate(13deg)}.orbit-label span{font-size:32px;margin-top:2px}.floating-card{position:absolute;left:-50px;bottom:46px;background:var(--panel-bg);padding:22px;width:280px;border-radius:14px;box-shadow:0 22px 65px var(--shadow);will-change:transform}.card-top{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700}.card-top small{display:block;font-size:9px;color:var(--muted);font-weight:400}.mini-icon{width:34px;height:34px;background:var(--soft);border-radius:8px;text-align:center;font-size:24px}.live-dot{width:6px;height:6px;background:var(--green);border-radius:50%;margin-left:auto}.card-numbers{display:flex;gap:35px;margin:15px 0}.card-numbers b{display:block;font-size:32px;font-family:Manrope;line-height:1.3}.card-numbers small{font-size:10px;color:var(--muted)}.card-task{border-top:1px solid var(--line);padding-top:12px;font-size:10px}.card-task span{display:inline-block;border-radius:50%;background:var(--soft);margin-right:5px;width:19px;text-align:center}.hero-coordinate{position:absolute;right:25px;bottom:-40px;font-size:9px;letter-spacing:3px}.scroll-link{position:absolute;bottom:30px;font-size:10px;letter-spacing:.5px;left:5%}.scroll-link span{margin-left:50px}.manifesto-strip{background:var(--panel-bg);color:var(--text);display:flex;align-items:center;justify-content:center;gap:55px;padding:26px;font-size:15px}.manifesto-strip i{color:var(--honey);font-size:20px}.section{padding:115px 8%;scroll-margin-top:20px}h2{font-family:Manrope,sans-serif;font-size:clamp(35px,4vw,58px);line-height:1.12;letter-spacing:-2.5px;font-weight:500;margin:20px 0 30px}h3{font-family:Manrope,sans-serif;font-weight:600;letter-spacing:-.5px}p{color:var(--muted)}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;margin-top:15px}.intro-grid p{font-size:14px}.intro-grid .large-text{font-size:20px;line-height:1.6;color:var(--ink);margin-top:20px}.inline-link{display:inline-flex;gap:45px;font-size:12px;font-weight:600;border-bottom:1px solid var(--line);padding:10px 0;margin-top:10px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:65px;border-top:1px solid var(--line);padding-top:28px}.principles>div>span{font-size:10px;color:var(--muted)}.principles h3{font-size:24px;margin:10px 0}.principles p{font-size:13px;max-width:270px}.application{background:var(--panel-bg)}.app-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:50px}.app-heading>p{max-width:280px;font-size:14px;margin-bottom:30px}.app-stage{display:grid;grid-template-columns:1fr 2.15fr;gap:50px;align-items:center}.feature-nav button{display:flex;gap:15px;align-items:center;background:none;border:0;border-bottom:1px solid var(--line);width:100%;padding:22px 0;text-align:left;color:var(--muted);font-size:14px;cursor:pointer}.feature-nav button span{font-size:10px}.feature-nav button b{margin-left:auto;font-weight:400}.feature-nav button[aria-selected=true]{color:var(--forest);font-weight:700}.feature-nav button[aria-selected=true] b{background:var(--forest);color:var(--button-text);border-radius:50%;width:26px;height:26px;text-align:center;line-height:26px}.feature-nav>p{font-size:12px;margin-top:25px;min-height:70px}.demo-shell{background:var(--panel-bg);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 25px 70px var(--shadow);transform:rotate(-1deg)}.demo-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:12px 16px;font-size:11px}.demo-toolbar small{font-size:7px;letter-spacing:1px;color:var(--muted)}.window-dots{display:flex;gap:4px}.window-dots i{width:6px;height:6px;border-radius:50%;background:var(--line)}.demo-app{background:var(--page-bg);display:flex;min-height:365px}.demo-app aside{background:var(--panel-bg);border-right:1px solid var(--line);padding:18px 12px;display:flex;flex-direction:column;align-items:center;gap:25px;color:var(--navy);font-size:19px}.demo-app aside img{width:24px}.demo-content{padding:27px;width:100%}.demo-content h3{font-size:20px;margin:0 0 5px}.demo-content>.demo-sub{font-size:10px;margin:0 0 20px}.demo-stats{display:flex;gap:12px;margin-bottom:22px}.demo-stats>div{background:var(--panel-bg);border:1px solid var(--line);border-radius:8px;padding:13px 20px;flex:1}.demo-stats b{display:block;font-size:23px;font-weight:600}.demo-stats span{font-size:9px;color:var(--muted)}.demo-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:12px 0;font-size:11px}.demo-row>span:last-child{margin-left:auto;background:var(--tag-bg);padding:3px 8px;border-radius:10px;font-size:9px;color:var(--tag-text)}.demo-row small{display:block;font-size:9px;color:var(--muted)}.demo-icon{width:30px;height:30px;background:var(--soft);display:flex;align-items:center;justify-content:center;border-radius:7px;font-size:14px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:75px}.line-icon{font-size:28px;color:var(--green)}.detail-grid h3{font-size:19px;line-height:1.4}.detail-grid p{font-size:13px}.living{height:650px;position:relative;overflow:hidden;background:var(--navy);color:var(--on-photo)}.living-media{position:absolute;inset:-100px 0;will-change:transform}.living-media video{width:100%;height:100%;object-fit:cover}.living-overlay{position:absolute;inset:0;background:linear-gradient(90deg,var(--video-shade-start),var(--video-shade-end))}.living-copy{position:absolute;top:50%;left:8%;transform:translateY(-50%)}.living h2{font-size:clamp(48px,6vw,85px)}.living p{color:var(--on-photo);font-size:16px}.video-toggle{position:absolute;right:8%;bottom:45px;padding:12px 20px;border:1px solid #ffffff66;background:#ffffff15;color:var(--on-photo);border-radius:25px;font-size:11px;cursor:pointer;backdrop-filter:blur(8px)}.video-credit{position:absolute;left:8%;bottom:35px;font-size:8px;letter-spacing:.7px;color:var(--on-photo)}.journey-title{display:flex;justify-content:space-between;align-items:center;gap:50px}.journey-title>p{max-width:310px;font-size:15px}.journey-track{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:55px 0 65px}.step{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:11px}.journey-track article{position:relative}.journey-track article:not(:last-child):after{content:'';position:absolute;height:1px;background:var(--line);width:calc(100% - 35px);top:20px;left:55px}.journey-track h3{font-size:18px}.journey-track p{font-size:12px;max-width:190px}.stock-story{background:var(--panel-bg);border:1px solid var(--line);padding:38px 42px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:30px}.stock-story h3{font-size:25px;line-height:1.5}.stock-story h3 em{letter-spacing:-.5px}.stock-equation{display:flex;gap:24px;align-items:center}.stock-equation div{text-align:center}.stock-equation b{display:block;font-size:58px;font-weight:500;font-family:Manrope;line-height:1.4}.stock-equation span{font-size:10px;color:var(--muted)}.stock-equation i{font-size:22px;color:var(--muted)}.stock-equation .result{background:var(--honey);border-radius:15px;padding:12px 22px}.ownership{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;background:var(--panel-bg)}.ownership-photo{height:480px;position:relative;overflow:hidden;border-radius:12px 150px 12px 12px}.ownership-photo img{height:115%;width:100%;object-fit:cover;filter:brightness(.8)}.ownership-photo>span{position:absolute;left:25px;bottom:25px;color:var(--on-photo);font-size:9px;letter-spacing:2px}.ownership-copy>p{font-size:14px}.ownership-copy ul{list-style:none;padding:0;font-size:12px;margin:25px 0}.ownership-copy li{padding:7px 0}.ownership-copy li:before{content:'↗';margin-right:15px;color:var(--green)}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none;font-size:14px;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:20px;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:13px;max-width:500px}.closing{background:var(--panel-bg);color:var(--text);padding:95px 6%;text-align:center;position:relative;overflow:hidden}.closing:before{content:'✳';position:absolute;right:-70px;top:-70px;font-size:480px;line-height:1;color:#ffffff05}.closing .eyebrow{justify-content:center;color:var(--muted)}.closing h2{font-size:clamp(36px,5vw,66px);margin:35px 0}.closing>div{display:flex;justify-content:center;gap:15px}.outline{border:1px solid var(--line);color:var(--green)}.closing>p{font-size:10px;color:var(--muted);margin-top:30px}footer{display:flex;align-items:center;gap:30px;padding:35px 5%;font-size:11px}footer .brand{font-size:21px}footer p{margin-right:auto}footer .brand img{width:29px;height:29px}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}
@media(min-width:1500px){.hero{padding-left:10%;padding-right:10%}.hero h1{font-size:80px}.hero-visual{max-width:600px}.section{padding-left:12%;padding-right:12%}}
@media(max-width:1000px){.hero{min-height:800px;gap:30px}.hero h1{font-size:56px;letter-spacing:-3px}.hero-visual{height:480px}.hero-actions{flex-wrap:wrap;gap:15px}.header nav{gap:18px}.floating-card{width:230px;left:-20px;padding:18px}.intro-grid{gap:35px}.app-stage{gap:25px}.demo-content{padding:18px}.section{padding:85px 6%}.ownership{gap:40px}.stock-equation{gap:15px}.stock-story{padding:25px}.manifesto-strip{gap:25px}}
@media(max-width:700px){.header{height:76px;padding:0 6%}.header nav{display:none}.brand{font-size:21px}.nav-cta{font-size:10px}.hero{grid-template-columns:1fr;padding:120px 7% 90px;min-height:0}.hero h1{font-size:clamp(46px,10vw,66px);letter-spacing:-2.5px;margin:22px 0}.hero-copy>p{font-size:14px}.hero-visual{height:470px;margin-top:30px;max-width:460px;width:100%;justify-self:center}.photo-frame{inset:0 10px 0 28px}.orbit-label{right:0;top:-20px;width:90px;height:90px;font-size:8px}.floating-card{left:0;bottom:25px}.hero-coordinate{bottom:-30px;font-size:8px}.scroll-link{bottom:25px;left:7%}.manifesto-strip{gap:14px;font-size:10px;padding:20px 10px;flex-wrap:wrap}.manifesto-strip i{font-size:14px}.manifesto-strip span:last-child{display:none}.manifesto-strip i:last-of-type{display:none}.section{padding:70px 7%}.eyebrow{font-size:8px;letter-spacing:1.5px}h2{font-size:38px;letter-spacing:-1.5px}.intro-grid,.ownership,.faq{grid-template-columns:1fr;gap:20px}.intro-grid .large-text{font-size:17px}.principles{gap:20px;margin-top:35px}.principles h3{font-size:17px}.principles p{font-size:11px}.app-heading{display:block;margin-bottom:25px}.app-heading>p{max-width:350px}.app-stage{grid-template-columns:1fr}.feature-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.feature-nav button{font-size:11px;padding:15px 0;gap:8px}.feature-nav>p{grid-column:1/-1;min-height:0;margin-bottom:0}.demo-shell{transform:none}.demo-content h3{font-size:18px}.demo-toolbar small{font-size:6px}.demo-app{min-height:330px}.demo-stats{gap:6px}.demo-stats>div{padding:10px}.demo-stats b{font-size:20px}.detail-grid{gap:25px;grid-template-columns:1fr;margin-top:45px}.detail-grid article{display:grid;grid-template-columns:35px 1fr;gap:0 12px}.detail-grid h3{margin:0;font-size:18px}.detail-grid p{grid-column:2;margin-top:8px}.living{height:550px}.living-copy{left:7%;right:7%}.living h2{font-size:48px}.living p{font-size:14px}.video-credit{left:7%;bottom:20px;font-size:7px}.video-toggle{right:7%;bottom:50px}.journey-title{display:block}.journey-track{grid-template-columns:1fr 1fr;gap:25px;margin:35px 0}.journey-track article:nth-child(2):after{display:none}.journey-track p{max-width:none}.stock-story{flex-direction:column;align-items:flex-start;padding:25px}.stock-story h3{font-size:23px}.stock-equation{width:100%;justify-content:space-between;gap:10px}.stock-equation b{font-size:43px}.ownership-photo{height:380px;order:2;margin-top:20px}.faq{gap:0}.faq-list summary{font-size:13px}.closing{padding:70px 7%}.closing>div{flex-direction:column;align-items:center}.closing h2{font-size:38px}footer{flex-wrap:wrap;gap:10px 25px;padding:25px 7%}footer p{flex-basis:100%;order:3}.button{padding:15px 20px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}[data-parallax]{transform:none!important}.button{transition:none}}
/* Choix du thème : automatique, clair ou sombre. */
.header-actions{display:flex;align-items:center;gap:20px}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:80px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:24px;background:var(--soft);color:var(--navy);font-size:12px;cursor:pointer;white-space:nowrap}
.theme-toggle:hover{background:var(--raised-bg)}
@media(max-width:700px){.header-actions{gap:10px}.theme-toggle{min-width:68px;padding:8px;font-size:11px}.header .brand{font-size:19px}.header .brand img{width:30px;height:30px}.header .nav-cta{display:none}}

/* Les surfaces et les accents suivent le même rôle que dans l’application. */
.orbit-label,.stock-equation .result{background:var(--tag-bg);color:var(--tag-text)}
.stock-equation .result span{color:inherit}
.demo-icon,.mini-icon,.card-task span{color:var(--green)}
.feature-nav button[aria-selected=true] b{color:var(--button-text)}
::selection{background:var(--green);color:var(--button-text)}

/* Navigation et titres secondaires : bleu ardoise de l’application.
   En sombre, les titres reprennent le texte clair de brand-theme.css. */
.header nav,.nav-cta,.demo-toolbar{color:var(--navy)}
h2,.demo-content h3{color:var(--navy)}
html[data-theme=dark] h2,html[data-theme=dark] .demo-content h3{color:var(--text)}
.living h2{color:var(--on-photo)}

/* Captures de l’application locale : navigation et zoom natifs. */
.screenshot-shell{margin:0;min-width:0;background:var(--page-bg);border-radius:12px;overflow:hidden;box-shadow:0 18px 50px var(--shadow)}
.screenshot-scroll{max-height:560px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--green) var(--soft)}
.screenshot-scroll a{display:block}
.screenshot-scroll img{width:100%;height:auto}
.screenshot-scroll .capture-dark{display:none}
html[data-theme=dark] .screenshot-scroll .capture-light{display:none}
html[data-theme=dark] .screenshot-scroll .capture-dark{display:block}
.screenshot-shell figcaption{padding:12px 16px;font-size:11px;color:var(--muted);background:var(--raised-bg)}
.screenshot-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}
@media(max-width:700px){.screenshot-scroll{max-height:500px}}

/* Flèche centrée et animation douce vers la section suivante. */
.scroll-link{left:50%;bottom:24px;transform:translateX(-50%);display:grid;place-items:center;width:68px;height:68px;border:1px solid color-mix(in srgb,var(--green) 30%,transparent);border-radius:50%;background:linear-gradient(145deg,var(--raised-bg),var(--soft));color:var(--green);box-shadow:0 8px 24px var(--shadow);transition:background .2s,box-shadow .2s}
.scroll-link svg{display:block;animation:scroll-arrow-pulse 1.8s ease-in-out infinite}
.scroll-link:hover,.scroll-link:focus-visible{background:var(--action-bg);box-shadow:0 10px 30px var(--shadow)}
.scroll-link:hover svg,.scroll-link:focus-visible svg{animation:none;opacity:1}
@keyframes scroll-arrow-pulse{0%,100%{opacity:1;transform:translateY(-3px)}50%{opacity:.35;transform:translateY(4px)}}
@media(prefers-reduced-motion:reduce){.scroll-link{transition:none}.scroll-link svg{animation:none}}

.back-to-top{position:fixed;right:24px;bottom:24px;z-index:110;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--action-bg);color:var(--action-text);box-shadow:0 4px 18px var(--shadow);font-size:30px;line-height:1;text-decoration:none}
.back-to-top:hover{background:var(--action-hover)}
@media(max-width:700px){.back-to-top{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:48px;height:48px}}

.back-to-top[hidden]{display:none}

/* Alvéole de découverte, dans l’espace entre le texte et la carte du rucher. */
.scroll-link{left:46%;top:540px;bottom:auto;width:72px;height:72px;border:0;border-radius:0;background:none;box-shadow:none}
.scroll-link:hover,.scroll-link:focus-visible{background:none;box-shadow:none}
.scroll-link svg{width:64px;height:64px;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;animation:none}
.scroll-direction{stroke:var(--brand-honey);animation:scroll-arrow-pulse 1.8s ease-in-out infinite}
.scroll-link:hover .scroll-direction,.scroll-link:focus-visible .scroll-direction{animation:none;opacity:1}
@media(min-width:1500px){.scroll-link{left:47%;top:550px}}
@media(max-width:1000px) and (min-width:701px){.scroll-link{left:47%;top:590px}}
@media(max-width:700px){.scroll-link{left:50%;top:auto;bottom:12px}}
@media(prefers-reduced-motion:reduce){.scroll-direction{animation:none}}

.scroll-link svg{animation:honeycomb-descend 2s ease-in-out infinite}
.scroll-link:hover svg,.scroll-link:focus-visible svg{animation:none}
@keyframes honeycomb-descend{0%,100%{transform:translateY(-4px)}55%{transform:translateY(7px)}}
@media(prefers-reduced-motion:reduce){.scroll-link svg,.scroll-direction{animation:none}}

/* Même ligne de base que la photo, avec davantage d’espace avant la carte. */
@media(min-width:701px){.scroll-link{left:43%;top:673px}}
@media(min-width:701px) and (max-width:1000px){.scroll-link{top:583px}}
@media(min-width:1500px){.scroll-link{left:44%}}

@media(min-width:701px){.scroll-link{top:calc(var(--photo-bottom,745px) - 72px)}}


.join{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;background:var(--panel-bg)}.join-copy>p{max-width:490px;font-size:16px}.join-copy .inline-link{display:inline-block;margin-top:14px;font-size:13px}.join-card{padding:36px;border-radius:18px;background:var(--page-bg);border:1px solid var(--soft)}.join-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1px;color:var(--green)}.join-card h3{font-size:24px;line-height:1.3;margin:18px 0 14px;overflow-wrap:anywhere}.join-card>p{font-size:15px}.join-card .button{margin:12px 0 8px}.join-card .join-note{font-size:12px;max-width:330px}.join-conditions{display:inline-block;font-size:12px;color:var(--green);text-decoration:underline;text-underline-offset:4px}@media(max-width:900px){.join{gap:35px;grid-template-columns:1fr 1fr}.join-card{padding:26px}}@media(max-width:700px){.join{grid-template-columns:1fr;gap:28px}.join h2{font-size:38px}.join-card{padding:26px}.join-copy .inline-link{font-size:12px}}
