.deriba-landing{--landing-green:var(--brand);--landing-green-dark:var(--color-zellige-800);--landing-lime:#d9ee83;--landing-gold:var(--color-safran-400);--landing-red:#c8513f;--landing-red-soft:#ffe4de;--landing-cream:var(--surface-sunken);--landing-line:var(--border);--landing-muted:var(--text-muted);overflow:clip;background:var(--surface-raised);color:var(--text)}.deriba-landing a{text-decoration:none}.deriba-landing img{display:block;max-width:100%}.landing-hero{min-height:calc(100vh - 5rem);padding:7vw 5vw 5vw;display:grid;grid-template-columns:.82fr 1.18fr;gap:5vw;align-items:center;overflow:hidden;background:radial-gradient(circle at 72% 40%,var(--brand-subtle) 0,var(--surface-raised) 39%)}.landing-hero-copy{position:relative;z-index:2}.landing-eyebrow{display:flex;align-items:center;gap:.625rem;text-transform:uppercase;letter-spacing:.16em;color:var(--landing-green);font-weight:800;font-size:.75rem}.landing-eyebrow>span{width:1.75rem;height:2px;background:currentColor}.landing-hero h1{margin:1.375rem 0 1.75rem;max-width:45rem;font-family:var(--font-display);font-size:clamp(3.5rem,6vw,6.375rem);line-height:.92;letter-spacing:-.065em;font-weight:760}.landing-hero-lead{max-width:36.5rem;font-size:clamp(1.125rem,1.4vw,1.375rem);line-height:1.55;color:var(--landing-muted)}.landing-actions{display:flex;align-items:center;gap:1.875rem;margin-top:2.25rem}.landing-light-button,.landing-primary-button{display:inline-flex;align-items:center;gap:1.375rem;padding:1.0625rem 1.375rem;background:var(--landing-green);color:var(--on-brand);border-radius:var(--radius-md);font-size:.875rem;font-weight:750;box-shadow:0 12px 30px color-mix(in srgb,var(--landing-green) 18%,transparent);transition:transform .25s ease,box-shadow .25s ease}.landing-light-button:hover,.landing-primary-button:hover{transform:translateY(-3px);box-shadow:0 17px 36px color-mix(in srgb,var(--landing-green) 26%,transparent)}.landing-light-button span,.landing-primary-button span{font-size:1.125rem}.landing-text-link{position:relative;font-size:.875rem;font-weight:700}.landing-text-link:after{content:"";position:absolute;inset-inline-start:0;inset-inline-end:100%;bottom:-.4375rem;height:2px;background:var(--landing-green);transition:inset-inline-end .25s ease}.landing-text-link:hover:after{inset-inline-end:0}.landing-meta{display:flex;flex-wrap:wrap;gap:1.375rem;margin-top:2.75rem;font-size:.75rem;font-weight:700;color:var(--text-muted)}.landing-meta span{padding-inline-start:.9375rem;position:relative}.landing-meta span:before{content:"";position:absolute;width:.375rem;height:.375rem;border-radius:50%;background:var(--landing-gold);inset-inline-start:0;top:.3125rem}.landing-hero-visual{position:relative;animation:landing-hero-rise 1s cubic-bezier(.2,.7,.2,1) both}.landing-hero-visual>img{position:relative;z-index:2;border-radius:1.75rem;box-shadow:0 35px 80px color-mix(in srgb,var(--landing-green-dark) 22%,transparent);transform:rotate(1.2deg);animation:landing-mobile-float 5s ease-in-out infinite}.landing-visual-glow{position:absolute;inset:8% 5%;background:var(--landing-lime);filter:blur(75px);opacity:.52;border-radius:50%}.landing-floating-note{position:absolute;z-index:4;background:color-mix(in srgb,var(--surface-raised) 94%,transparent);backdrop-filter:blur(12px);border:1px solid color-mix(in srgb,var(--surface-raised) 85%,transparent);box-shadow:0 20px 45px color-mix(in srgb,var(--landing-green-dark) 13%,transparent);border-radius:var(--radius-lg);padding:.75rem 1rem;display:flex;flex-direction:column;animation:landing-note-float 4.6s ease-in-out infinite}.landing-floating-note b{font-size:.8125rem}.landing-floating-note span{font-size:.6875rem;color:var(--landing-muted);margin-top:.1875rem}.landing-note-one{top:6%;inset-inline-end:-1%}.landing-note-two{bottom:8%;inset-inline-start:-4%;animation-delay:-2.2s}.landing-trust-strip{padding:1.875rem 5vw;background:var(--landing-green-dark);color:var(--text-inverse);display:flex;align-items:center;justify-content:space-between}.landing-trust-strip p{font-weight:650;margin:0}.landing-trust-strip div{display:flex;gap:2.125rem;color:var(--color-zellige-100);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.landing-product-story{padding:7.5rem 5vw 8.75rem;background:var(--landing-cream)}.landing-section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:4.5rem}.landing-faq h2,.landing-scene-copy h2,.landing-section-heading h2{font-family:var(--font-display);font-size:clamp(2.625rem,5vw,4.75rem);line-height:1;letter-spacing:-.055em;margin:1.25rem 0 0}.landing-story-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:start}.landing-sticky-product{position:sticky;top:5.625rem}.landing-phone-stage{background:linear-gradient(145deg,var(--brand-subtle),var(--color-zellige-200));padding:6%;border-radius:2.25rem;overflow:hidden;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--landing-green-dark) 8%,transparent)}.landing-phone-stage img{border-radius:1.25rem;box-shadow:0 25px 60px color-mix(in srgb,var(--landing-green-dark) 18%,transparent);transform:scale(.96)}.landing-story-steps article{min-height:42vh;padding:9vh 0;border-top:1px solid var(--border-strong);display:flex;flex-direction:column;justify-content:center}.landing-story-steps article>span{color:var(--landing-green);font-weight:850;font-size:.75rem;letter-spacing:.12em}.landing-story-steps h3{font-family:var(--font-display);font-size:clamp(1.875rem,3vw,3rem);letter-spacing:-.04em;line-height:1.05;margin:1.375rem 0 1.125rem}.landing-story-steps p{max-width:33.75rem;color:var(--landing-muted);font-size:1.125rem;line-height:1.6;margin:0}.landing-commerce-scene{display:grid;grid-template-columns:1.1fr .9fr;min-height:51.25rem}.landing-scene-image{position:relative;min-height:45rem;overflow:hidden;background:var(--brand-subtle)}.landing-scene-image>img{object-fit:cover}.landing-scene-badge{position:absolute;inset-inline-start:2.125rem;bottom:2.125rem;padding:.8125rem 1rem;background:color-mix(in srgb,var(--surface-raised) 92%,transparent);backdrop-filter:blur(14px);border-radius:var(--radius-md);display:flex;align-items:center;gap:.75rem;box-shadow:0 18px 40px color-mix(in srgb,var(--landing-green-dark) 18%,transparent)}.landing-scene-badge img{width:7.25rem;height:1.75rem;object-fit:contain}.landing-scene-badge span{font-size:.75rem;font-weight:750;padding-inline-start:.75rem;border-inline-start:1px solid var(--landing-line)}.landing-scene-copy{padding:9vw 7vw;display:flex;flex-direction:column;justify-content:center}.landing-scene-copy h2{max-width:43.75rem}.landing-scene-copy>p:not(.landing-eyebrow){color:var(--landing-muted);font-size:1.125rem;line-height:1.65;max-width:36.25rem}.landing-scene-copy ul{list-style:none;padding:1.25rem 0 1.5rem;margin:0;max-width:37.5rem}.landing-scene-copy li{padding:1.125rem 0;border-top:1px solid var(--landing-line);display:grid;grid-template-columns:7.5rem 1fr;gap:1.125rem}.landing-scene-copy li span{color:var(--landing-muted);line-height:1.5}.landing-scene-copy .landing-primary-button{align-self:flex-start}.landing-manifesto{padding:8.125rem 5vw;text-align:center;background:var(--landing-green-dark);color:var(--text-inverse);position:relative;overflow:hidden}.landing-manifesto:before{content:"d";position:absolute;font-family:var(--font-display);font-size:37.5rem;font-weight:900;line-height:.7;color:color-mix(in srgb,var(--text-inverse) 2.5%,transparent);inset-inline-start:3%;bottom:-8%}.landing-eyebrow.landing-light{color:var(--landing-lime);justify-content:center}.landing-manifesto h2{font-family:var(--font-display);font-size:clamp(2.875rem,6vw,5.75rem);line-height:.98;letter-spacing:-.06em;margin:1.75rem auto;position:relative}.landing-manifesto>p:not(.landing-eyebrow){color:var(--color-zellige-100);font-size:1.1875rem}.landing-light-button{background:var(--landing-lime);color:var(--landing-green-dark);box-shadow:none;margin-top:1.75rem;position:relative}.landing-faq{padding:7.5rem 5vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.landing-faq-list details{border-top:1px solid var(--landing-line);padding:1.4375rem 0}.landing-faq-list details:last-child{border-bottom:1px solid var(--landing-line)}.landing-faq-list summary{cursor:pointer;list-style:none;font-size:1.1875rem;font-weight:700;display:flex;justify-content:space-between;gap:1.25rem}.landing-faq-list summary::-webkit-details-marker{display:none}.landing-faq-list summary span{color:var(--landing-green);font-size:1.5rem;transition:transform .25s ease}.landing-faq-list details[open] summary span{transform:rotate(45deg)}.landing-faq-list p{color:var(--landing-muted);line-height:1.6;max-width:46.25rem}.landing-city-status{padding:7.5rem 5vw;background:linear-gradient(180deg,var(--surface-raised) 0,var(--landing-cream) 100%);display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center}.landing-city-copy h2{font-family:var(--font-display);font-size:clamp(2.625rem,5vw,4.75rem);line-height:1;letter-spacing:-.055em;margin:1.25rem 0 1.5rem}.landing-city-copy>p:not(.landing-eyebrow){max-width:39rem;color:var(--landing-muted);font-size:1.125rem;line-height:1.65}.landing-status-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;margin:2rem 0 1.75rem;padding:1rem 1.125rem;border:1px solid var(--landing-line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-raised) 82%,transparent)}.landing-status-summary div{display:flex;flex-direction:column;gap:.25rem}.landing-status-summary div>span{color:var(--landing-muted);font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.09em}.landing-status-summary strong{font-size:1rem}.landing-status-summary small{color:var(--landing-muted);font-size:.75rem;font-weight:650}.landing-status-board{padding:1.125rem;border:1px solid color-mix(in srgb,var(--landing-green-dark) 11%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-raised) 92%,transparent);box-shadow:0 30px 75px color-mix(in srgb,var(--landing-green-dark) 12%,transparent)}.landing-morocco-map{position:relative;aspect-ratio:.92;min-height:35rem;overflow:hidden;isolation:isolate;border:1px solid color-mix(in srgb,var(--landing-green-dark) 10%,transparent);border-radius:var(--radius-md);background:linear-gradient(145deg,#f7fbef,#fff8eb 54%,#f2f7ef)}.landing-morocco-map:before{content:"";position:absolute;inset:1rem;background-image:linear-gradient(color-mix(in srgb,var(--landing-green-dark) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--landing-green-dark) 8%,transparent) 1px,transparent 1px);background-size:3.75rem 3.75rem;opacity:.34;z-index:0}.landing-map-svg{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 24px 46px color-mix(in srgb,var(--landing-green-dark) 12%,transparent))}.landing-map-svg path{fill:color-mix(in srgb,var(--landing-green) 17%,var(--surface-raised));stroke:color-mix(in srgb,var(--landing-green-dark) 20%,transparent);stroke-width:.28;vector-effect:non-scaling-stroke}.landing-city-marker{position:absolute;z-index:3;left:var(--city-x);top:var(--city-y);display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .55rem;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--surface-raised) 82%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 92%,transparent);box-shadow:0 12px 28px color-mix(in srgb,var(--landing-green-dark) 12%,transparent);backdrop-filter:blur(10px);font-size:.72rem;font-weight:850;line-height:1;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease}.landing-city-marker:focus-visible,.landing-city-marker:hover{transform:translate(-50%,-50%) translateY(-3px);box-shadow:0 16px 34px color-mix(in srgb,var(--landing-green-dark) 17%,transparent);outline:none}.landing-city-marker--active{color:var(--landing-green-dark)}.landing-city-marker--waiting{color:var(--landing-red)}.landing-city-bulb,.landing-status-dot{position:relative;display:inline-block;width:.7rem;height:.7rem;flex:0 0 auto;border-radius:999px}.landing-city-marker--active .landing-city-bulb,.landing-status-dot--active{background:var(--landing-green);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--landing-green) 14%,transparent),0 0 18px color-mix(in srgb,var(--landing-green) 58%,transparent)}.landing-city-marker--waiting .landing-city-bulb,.landing-status-dot--waiting{background:var(--landing-red);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--landing-red) 13%,transparent),0 0 14px color-mix(in srgb,var(--landing-red) 28%,transparent)}.landing-city-marker--active .landing-city-bulb:after,.landing-status-dot--active:after{content:"";position:absolute;inset:-.45rem;border:1px solid color-mix(in srgb,var(--landing-green) 42%,transparent);border-radius:999px;animation:landing-status-pulse 1.7s ease-out infinite}.landing-status-legend{display:flex;flex-wrap:wrap;gap:1rem 1.35rem;margin:1rem 0;color:var(--landing-muted);font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.landing-status-legend span{display:inline-flex;align-items:center;gap:.45rem}.landing-city-list{list-style:none;display:grid;gap:.55rem;margin:0;padding:0}.landing-city-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.8rem .9rem;border:1px solid color-mix(in srgb,var(--landing-green-dark) 8%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-raised) 84%,transparent)}.landing-city-list div{display:flex;min-width:0;flex-direction:column;gap:.2rem}.landing-city-list strong{font-size:.9rem}.landing-city-list div span{color:var(--landing-muted);font-size:.78rem;line-height:1.35}.landing-city-list em{font-style:normal;color:var(--landing-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}@keyframes landing-mobile-float{0%,to{transform:rotate(1.2deg) translateY(0)}50%{transform:rotate(.2deg) translateY(-.875rem)}}@keyframes landing-note-float{0%,to{transform:translateY(0)}50%{transform:translateY(-.5625rem)}}@keyframes landing-hero-rise{0%{opacity:0;transform:translateY(2.1875rem) scale(.97)}to{opacity:1;transform:none}}@keyframes landing-status-pulse{0%{opacity:.8;transform:scale(.72)}80%,to{opacity:0;transform:scale(1.65)}}@supports (animation-timeline:view()){.landing-phone-stage img{animation:landing-scroll-product linear both;animation-timeline:view();animation-range:entry 5% exit 95%}.landing-scene-image>img{animation:landing-scene-pan linear both;animation-timeline:view();animation-range:entry 0 exit 100%}@keyframes landing-scroll-product{0%{transform:scale(.9) translateY(2.1875rem) rotate(-1deg)}50%{transform:scale(1) translateY(0) rotate(0)}to{transform:scale(.94) translateY(-1.75rem) rotate(1deg)}}@keyframes landing-scene-pan{0%{transform:scale(1.08) translateY(-2%)}to{transform:scale(1.08) translateY(2%)}}}@media (max-width:61.25rem){.landing-hero{grid-template-columns:1fr;padding-top:5rem}.landing-hero-copy{max-width:47.5rem}.landing-hero-visual{margin-top:1.875rem}.landing-section-heading,.landing-trust-strip{align-items:flex-start;flex-direction:column;gap:1.5rem}.landing-story-grid{grid-template-columns:1fr}.landing-sticky-product{position:relative;top:auto}.landing-story-steps article{min-height:20rem}.landing-commerce-scene{grid-template-columns:1fr}.landing-scene-image{min-height:38.75rem}.landing-city-status,.landing-faq{grid-template-columns:1fr}.landing-city-status{padding:6.5rem 5vw}.landing-city-copy{max-width:48rem}.landing-status-board{max-width:50rem}.landing-morocco-map{min-height:31rem}}@media (max-width:40rem){.landing-hero{min-height:auto;padding:4.5rem 6vw 4.375rem}.landing-hero h1{font-size:clamp(3.125rem,15vw,4.375rem)}.landing-hero-lead{font-size:1.0625rem}.landing-actions{align-items:flex-start;flex-direction:column;gap:1.375rem}.landing-hero-visual>img{border-radius:1rem}.landing-floating-note{display:none}.landing-trust-strip{padding:1.75rem 6vw}.landing-trust-strip div{gap:.9375rem;flex-wrap:wrap}.landing-faq,.landing-product-story{padding:5.625rem 6vw}.landing-phone-stage{border-radius:1.375rem;padding:4%}.landing-commerce-scene{min-height:auto}.landing-scene-image{min-height:30rem}.landing-scene-copy{padding:5.625rem 6vw}.landing-scene-copy li{grid-template-columns:1fr;gap:.4375rem}.landing-manifesto{padding:6.25rem 6vw}.landing-city-status{padding:5.625rem 6vw}.landing-city-copy h2{font-size:clamp(2.625rem,13vw,4rem)}.landing-status-summary{grid-template-columns:auto 1fr;align-items:flex-start}.landing-status-summary small{grid-column:2}.landing-status-board{padding:.85rem;border-radius:var(--radius-md)}.landing-morocco-map{min-height:27rem}.landing-city-marker{padding:.42rem}.landing-city-marker-name{position:absolute;top:1.35rem;left:50%;max-width:6rem;padding:.22rem .38rem;transform:translateX(-50%);border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 96%,transparent);box-shadow:0 8px 20px color-mix(in srgb,var(--landing-green-dark) 12%,transparent);font-size:.62rem;line-height:1.1;text-align:center;opacity:0;pointer-events:none;white-space:normal}}@media (max-width:40rem){.landing-city-marker--active .landing-city-marker-name,.landing-city-marker:focus-visible .landing-city-marker-name,.landing-city-marker:hover .landing-city-marker-name{opacity:1}.landing-status-legend{font-size:.68rem}.landing-city-list li{grid-template-columns:auto 1fr;align-items:flex-start}.landing-city-list em{grid-column:2;justify-self:start}.landing-city-list div span{font-size:.76rem}}@media (prefers-reduced-motion:reduce){.deriba-landing{scroll-behavior:auto}.deriba-landing *,.deriba-landing :after,.deriba-landing :before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}