/* Jeune Trans — accueil et parcours, indépendant des pages existantes. */
:root{--world-bg:#071f1b;--world-light:#bde9ce;--journey-bg:#f3f3ec}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #db8e49;outline-offset:5px}
.hero-world{background:var(--world-bg);min-height:780px;height:100svh;max-height:1080px;display:flex;flex-direction:column;justify-content:center}
.hero-world::before{background:radial-gradient(ellipse at 83% 41%,#145b3b55,transparent 47%);pointer-events:none}
.world-grain{position:absolute;inset:0;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.25' d='M0 0h160v160H0z'/%3E%3C/svg%3E");pointer-events:none}
.hero-world .world-layout{width:100%;max-width:1440px;grid-template-columns:1.02fr 1fr;gap:0;padding:105px 64px 90px;position:relative}
.hero-world .hero-content{z-index:3;pointer-events:none;position:relative}
.hero-world .hero-content a{pointer-events:auto}
.hero-world .eyebrow{font-size:10px;letter-spacing:.16em;color:var(--world-light);margin-bottom:26px}
.hero-world .eyebrow::before{background:var(--world-light);width:20px}
.hero-world h1{font-size:clamp(40px,4.65vw,72px);line-height:1.06;letter-spacing:-.055em;font-weight:500;margin-bottom:27px}
.hero-world h1 .accent{color:var(--world-light)}
.hero-world p{font-size:14px;line-height:1.9;max-width:415px;color:#b9cbc3;margin-bottom:30px}
.hero-world .hero-actions{gap:23px;align-items:center;margin-bottom:30px}
.hero-world .btn{padding:16px 20px;border-radius:5px;font-size:12px;box-shadow:none;min-height:50px;background:#bd3431}
.hero-world .btn:hover{background:#a32b28}
.world-discover{font-size:11px;color:#f4f8f5;display:inline-flex;gap:13px;align-items:center;min-height:44px}
.world-discover span{font-size:20px}
.world-signature{font-size:10px;letter-spacing:.01em;color:#acc2b5;display:flex;align-items:center;gap:9px}
.status-dot{width:5px;height:5px;border-radius:50%;background:#bde9ce}
.world-visual{position:relative;width:calc(100% + 150px);height:650px;margin-left:-60px;align-self:center;z-index:2}
.globe-host{position:absolute;inset:0;cursor:grab;touch-action:pan-y}
.globe-host:active{cursor:grabbing}
.globe-host canvas{display:block;width:100%;height:100%;touch-action:pan-y}
.globe-fallback{width:75%;height:75%;object-fit:contain;position:absolute;inset:12%;opacity:.55;filter:brightness(1.8)}
.globe-host.is-ready .globe-fallback{display:none}
.globe-location{position:absolute;left:42%;top:49%;display:flex;gap:10px;align-items:center;pointer-events:none;background:#09241bd9;backdrop-filter:blur(8px);padding:9px 13px;border:1px solid #739a7744;border-radius:3px;transform:translate(16px,-50%)}
.globe-location strong{font:500 12px var(--font-display);letter-spacing:.12em;display:block;color:#f5faed}
.globe-location small{font-size:9px;display:block;color:#b2cabb;margin-top:2px;white-space:nowrap}
.location-dot{width:5px;height:5px;background:#ef936c;border-radius:50%}
.globe-controls{position:absolute;right:19%;bottom:10px;display:flex;gap:15px;align-items:center;color:#c0d5c5;font-size:10px}
.hero-world .world-bottom{position:absolute;bottom:30px;width:100%;max-width:1440px;padding:0 64px;display:flex;align-items:center;justify-content:space-between;color:#a6bcb0;font-size:10px;letter-spacing:.04em;z-index:3}
.world-bottom a{display:flex;align-items:center;gap:12px;min-height:44px}
.scroll-symbol{border:1px solid #a7bfa73b;display:grid;place-items:center;width:22px;height:32px;border-radius:16px;font-size:15px}
.world-bottom>span{font:9px monospace;letter-spacing:.1em}
.world-bottom b{color:#d5e5d5;margin-left:16px;font-weight:400}
.expertise-strip{background:#e7ece2;border-bottom:1px solid #cfd6cd}
.expertise-strip .wrap{display:flex;align-items:center;justify-content:space-between;padding:23px 64px;max-width:1440px;gap:20px;font:500 10px var(--font-display);letter-spacing:.13em;color:#28513a}
.expertise-strip i{width:5px;height:5px;border:1px solid #60866a;transform:rotate(45deg)}
.journey-section{background:var(--journey-bg);scroll-margin-top:70px}
.journey-section.is-animated{height:540vh}
.journey-sticky{position:relative;padding:70px 0 28px;overflow:hidden;background:var(--journey-bg)}
.is-animated .journey-sticky{position:sticky;top:0;height:100svh;min-height:680px;display:flex;flex-direction:column;padding-top:100px}
.journey-heading{display:flex;justify-content:space-between;align-items:flex-end;width:100%;max-width:1440px;padding:0 64px;position:relative;z-index:3;pointer-events:none}
.journey-heading .eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:14px;display:block;color:#42614a}
.journey-heading h2{font-size:clamp(34px,3.3vw,49px);font-weight:500;letter-spacing:-.055em;line-height:1.05}
.journey-heading em{font-style:normal;color:#6b8069}
.journey-heading>p{font-size:11px;color:#53604f;line-height:1.9;padding-bottom:5px}
.journey-stage{position:relative;min-height:310px;flex:1;width:100%;height:420px}
.journey-stage canvas{display:block;width:100%;height:100%}
.journey-fallback{height:100%;display:flex;justify-content:center}
.journey-fallback img{height:100%;max-width:75%;object-fit:contain}
.journey-stage.is-ready .journey-fallback{display:none}
.cargo-tag{position:absolute;padding:6px 8px;font:8px var(--font-display);letter-spacing:.08em;color:#f3f5e9;background:#173e2d;white-space:nowrap;transform:translate(-50%,-100%);pointer-events:none;box-shadow:0 2px 6px #08231418}
.cargo-tag:after{content:'';position:absolute;bottom:-4px;left:calc(50% - 4px);border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #173e2d}
.cargo-tag span{display:inline-block;background:#df774d;width:4px;height:4px;vertical-align:middle;margin-right:5px}
.scene-coordinate{position:absolute;right:64px;bottom:15px;font:8px monospace;letter-spacing:.12em;color:#879081;pointer-events:none}
.journey-details{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1440px;padding:6px 64px 23px;gap:32px}
.journey-copy{display:flex;align-items:flex-start;gap:22px;max-width:650px}
.journey-copy>span{font:11px monospace;color:#517550;padding-top:7px;white-space:nowrap}
.journey-copy h3{font-size:22px;font-weight:500;letter-spacing:-.035em;margin-bottom:9px}
.journey-copy p{font-size:11px;line-height:1.8;color:#596754;max-width:480px}
.journey-quote{font-size:10px;color:#234c30;white-space:nowrap;min-height:44px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #91a48a}
.journey-quote span{font-size:21px}
.journey-steps{display:grid;grid-template-columns:repeat(4,1fr);width:100%;max-width:1440px;padding:0 64px;gap:20px}
.journey-steps button{position:relative;min-height:46px;border:0;border-top:1px solid #cfd4c8;background:transparent;text-align:left;cursor:pointer;font:500 10px var(--font-display);color:#6e7866;padding:12px 0 5px;white-space:nowrap}
.journey-steps button>span{font:9px monospace;margin-right:9px;opacity:.8}
.journey-steps button[aria-current]{color:#163b26}
.journey-steps i{position:absolute;top:-1px;left:0;right:0;height:2px;background:#356744;transform:scaleX(var(--step-progress,0));transform-origin:left;transition:transform .1s linear}
.journey-mode{margin:13px 64px 0;align-self:flex-end;display:block;background:none;border:0;color:#52644d;font-size:10px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:32px}
.journey-readable{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:35px 64px 65px;max-width:1440px;margin:auto}
.journey-readable li{border-top:1px solid #a9b6a3;padding-top:16px}
.journey-readable span{font:10px monospace;color:#55764d}
.journey-readable h3{font-size:17px;margin:12px 0}
.journey-readable p{font-size:13px;color:#586652}
.is-animated .journey-readable{display:none}
.journey-section:not(.is-animated) .journey-steps,.journey-section:not(.is-animated) .journey-copy,.journey-section:not(.is-animated) .scene-coordinate{display:none}
.journey-section:not(.is-animated) .journey-details{justify-content:flex-end;padding-bottom:0}
.journey-section:not(.is-animated) .journey-mode{margin-left:auto;margin-right:64px}
.journey-section:not(.is-animated) .journey-heading>p{max-width:220px}
.journey-section:not(.is-animated) .journey-stage{height:400px;min-height:0}
.journey-section:not(.is-animated) .journey-stage:not(.is-ready){height:240px}
.burger{min-width:44px;min-height:44px;align-items:center;justify-content:center}
@media(min-width:1100px){.hero-world .world-layout{min-height:700px}.hero-world .hero-content{margin-right:-45px}.world-visual{position:absolute;width:700px;right:-30px;top:65px}}
@media(min-width:1500px){.world-visual{width:780px;right:-15px;top:70px;height:750px}.hero-world .world-layout{min-height:790px}}
@media(max-width:1099px){.hero-world .world-layout{padding-left:40px;padding-right:40px;grid-template-columns:1.04fr 1fr}.hero-world h1{font-size:46px}.world-visual{height:550px;width:calc(100% + 130px);margin-left:-40px}.hero-world .hero-actions{gap:12px}.hero-world .world-bottom{padding:0 40px}.journey-heading,.journey-details,.journey-steps{padding-left:40px;padding-right:40px}.journey-heading h2{font-size:37px}.journey-heading>p{max-width:230px}.nav-links{gap:1.2rem}.nav-links a{font-size:.82rem}.nav-cta .btn{font-size:.8rem;padding:12px 15px}}
@media(max-width:760px){.hero-world{height:auto;min-height:0;max-height:none}.hero-world .world-layout{padding:125px 24px 80px;display:flex;flex-direction:column;gap:0}.hero-world .hero-content{width:100%}.hero-world h1{font-size:clamp(38px,8vw,56px);max-width:600px;line-height:1.07}.hero-world p{font-size:13px;max-width:500px}.hero-world .eyebrow{font-size:9px;margin-bottom:24px}.hero-world .hero-actions{margin-bottom:22px;gap:22px}.hero-world .btn{font-size:11px}.world-signature{font-size:9px}.world-visual{height:390px;width:min(550px,calc(100% + 60px));margin:-5px -30px -15px}.globe-controls{right:10%;bottom:0}.hero-world .world-bottom{bottom:15px;padding:0 24px;font-size:9px}.world-bottom>span{display:none}.expertise-strip .wrap{padding:21px 24px;font-size:8px;gap:14px;letter-spacing:.05em}.expertise-strip i{width:3px;height:3px;flex-shrink:0}.is-animated .journey-sticky{min-height:620px;padding:87px 0 14px}.journey-section.is-animated{height:420vh}.journey-heading{padding:0 24px;display:block}.journey-heading h2{font-size:33px;line-height:1.04}.journey-heading .eyebrow{font-size:8px;margin-bottom:10px}.journey-heading>p{font-size:10px;max-width:none;margin-top:10px;line-height:1.5}.journey-heading>p br{display:none}.journey-stage{min-height:220px}.journey-details{padding:0 24px 15px;display:block}.journey-copy{gap:13px}.journey-copy>span{font-size:9px;padding-top:5px}.journey-copy h3{font-size:19px;margin-bottom:6px}.journey-copy p{font-size:11px;line-height:1.65}.journey-quote{display:none}.journey-steps{padding:0 24px;gap:12px}.journey-steps button{font-size:8px;white-space:normal;line-height:1.4;padding-top:9px;min-height:51px}.journey-steps button>span{display:block;font-size:8px;margin-bottom:3px}.journey-mode{margin:9px 24px 0;min-height:35px;font-size:9px}.scene-coordinate{right:24px;bottom:10px;font-size:6px}.cargo-tag{font-size:6px;padding:4px 6px}.journey-readable{grid-template-columns:1fr 1fr;padding:20px 24px 50px;gap:25px}.journey-readable h3{font-size:15px}.journey-readable p{font-size:12px}.journey-section:not(.is-animated) .journey-mode{margin-right:24px}.journey-section:not(.is-animated) .journey-stage{height:280px}.journey-section:not(.is-animated) .journey-heading>p{max-width:none}}
@media(max-width:380px){.hero-world h1{font-size:35px}.hero-world .hero-actions{gap:10px}.world-discover{font-size:10px}.expertise-strip .wrap{font-size:7px;gap:9px}.journey-steps{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page.active{animation:none}.btn,.svc-card,.nav-links{transition:none}.journey-section.is-animated{height:auto}.journey-section.is-animated .journey-sticky{position:relative;height:auto}.journey-section .journey-readable{display:grid}.journey-steps i{transition:none}}

/* Lisibilité mobile : planchers de taille pour les textes à lire (les libellés décoratifs restent discrets). */
@media(max-width:760px){.hero-world p{font-size:14px}.hero-world .eyebrow,.journey-heading .eyebrow,.world-signature,.hero-world .world-bottom{font-size:10px}.hero-world .btn,.world-discover{font-size:12px}.journey-heading>p{font-size:12px}.journey-copy>span{font-size:10px}.journey-copy p{font-size:13px}.journey-steps button,.journey-steps button>span{font-size:10px}.journey-mode{font-size:11px}.scene-coordinate,.cargo-tag{font-size:8px}.globe-location small{font-size:10px}}
