@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/plus-jakarta-sans-400.woff2") format("woff2")}@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/plus-jakarta-sans-600.woff2") format("woff2")}@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/plus-jakarta-sans-800.woff2") format("woff2")}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px}:root{--text-xs:clamp(0.75rem, 0.8rem, 0.875rem);--text-sm:clamp(0.875rem, 0.9rem, 1rem);--text-base:clamp(1rem, 1rem + 0.15vw, 1.125rem);--text-lg:clamp(1.125rem, 1.125rem + 0.3vw, 1.5rem);--text-xl:clamp(1.5rem, 1.5rem + 0.5vw, 2.25rem);--text-2xl:clamp(2rem, 2rem + 1vw, 3.25rem);--text-hero:clamp(2.5rem, 2.5rem + 2vw, 4.5rem);--lh-body:1.65;--lh-head:1.2;--font-body:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-headings:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}:root{--color-bg:#0B1428;--color-surface:#152944;--color-surface-2:#1F3859;--color-border:#2C4768;--color-text:#F1F5F9;--color-text-muted:#94B5D4;--color-text-faint:#5A7BA0;--color-text-inv:#0B1428;--color-muted:#94B5D4;--color-accent:#38BDF8;--color-accent-h:#7DD3FC;--color-accent-ink:#0B1428;--color-secondary:#2C4768;--color-secondary-h:#FB923C;--color-gradient-end:#7DD3FC}:root{--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:16px;--radius-full:9999px;--transition:180ms cubic-bezier(0.16, 1, 0.3, 1);--transition-slow:400ms cubic-bezier(0.16, 1, 0.3, 1);--content-wide:1200px;--content-narrow:720px}:root{--header-height:124px;--header-height-tablet:100px;--header-height-mobile:84px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--lh-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-headings);line-height:var(--lh-head);margin:0 0 var(--space-4);font-weight:700}p{margin:0 0 var(--space-4);max-width:72ch}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-accent-h)}body.archetype-immersive{background:var(--color-bg)}body.archetype-immersive .hero-title{letter-spacing:-0.03em;font-size:clamp(3.25rem, 3rem + 2.6vw, 5.85rem)}.ambiance-body{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:0.45;background:radial-gradient(60% 50% at 15% 20%,color-mix(in srgb, var(--color-accent) 45%, transparent),transparent 70%),radial-gradient(55% 45% at 85% 30%,color-mix(in srgb, var(--color-secondary) 35%, transparent),transparent 70%),radial-gradient(70% 60% at 50% 95%,color-mix(in srgb, var(--color-gradient-end) 35%, transparent),transparent 75%);filter:blur(60px) saturate(120%);animation:ambiance-drift 42s ease-in-out infinite alternate}@keyframes ambiance-drift{0%{background-position:0% 0%,100% 0%,50% 100%}50%{background-position:5% 3%,95% 5%,48% 97%}100%{background-position:0% 0%,100% 0%,50% 100%}}.deco-grain{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22200%22%20height%3D%22200%22%3E%3Cfilter%20id%3D%22n%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%220.9%22%20numOctaves%3D%222%22%20stitchTiles%3D%22stitch%22/%3E%3CfeColorMatrix%20values%3D%220%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200.6%200%22/%3E%3C/filter%3E%3Crect%20width%3D%22200%22%20height%3D%22200%22%20filter%3D%22url(%23n)%22/%3E%3C/svg%3E');background-size:200px 200px;opacity:0.04;mix-blend-mode:overlay}.visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:0;z-index:100;padding:var(--space-3) var(--space-5);background:var(--color-accent);color:var(--color-accent-ink);font-weight:600;border-radius:0 0 var(--radius-md) 0}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.scroll-progress{position:fixed;top:0;left:0;width:0%;height:3px;z-index:60;background:linear-gradient(90deg, var(--color-accent) 0%, var(--color-secondary) 50%, var(--color-gradient-end) 100%);transition:width 80ms linear;pointer-events:none}.container{width:100%;padding-left:16px;padding-right:16px;margin-inline:auto}@media (min-width: 768px){.container{padding-left:24px;padding-right:24px}}@media (min-width: 1024px){.container{max-width:960px;padding-left:0;padding-right:0}}@media (min-width: 1280px){.container{max-width:var(--content-wide)}}@media (min-width: 1920px){.container{max-width:1440px}}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb, var(--color-bg) 90%, transparent);border-bottom:1px solid transparent;height:var(--header-height-mobile);display:flex;align-items:center;transition:background var(--transition),box-shadow var(--transition),border-color var(--transition),backdrop-filter var(--transition)}@media (min-width: 768px){.site-header{height:var(--header-height-tablet)}}@media (min-width: 1024px){.site-header{height:var(--header-height)}}.site-header.scrolled{background:color-mix(in srgb, var(--color-bg) 78%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom-color:var(--color-border);box-shadow:0 8px 32px rgba(0, 0, 0, 0.4)}.site-header .container{display:flex;align-items:center;gap:var(--space-5);height:100%}.site-logo{flex:0 0 auto;padding-left:8px}.site-logo img{display:block;height:40px;width:auto}@media (min-width: 1024px){.site-logo img{height:56px}}.site-nav{margin-left:auto}.site-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:var(--space-5)}.site-nav a{color:var(--color-text);font-weight:500;padding:var(--space-2) 0;font-size:var(--text-sm)}.site-nav a:hover{color:var(--color-accent)}.site-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px;text-decoration-color:var(--color-accent)}.lang-switch{margin-left:16px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text);font-weight:600;font-size:var(--text-sm);transition:all var(--transition)}.lang-switch:hover{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.menu-toggle{display:none;margin-left:auto;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:22px;cursor:pointer;padding:var(--space-2) var(--space-3)}@media (max-width: 1023px){.site-nav{display:none}.menu-toggle{display:inline-block}.site-header .container{gap:var(--space-3)}}.site-nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-5)}.site-nav.is-open ul{flex-direction:column;gap:var(--space-4)}.hero{position:relative;width:100%;height:var(--hero-height);min-height:560px;overflow:hidden;background:var(--color-bg);display:flex;align-items:center;justify-content:center;text-align:center}@media (max-width: 767px){.hero{height:var(--hero-height-mobile);min-height:480px}}.hero.hero--small{height:var(--header-height-mobile);min-height:320px;text-align:left}@media (min-width: 768px){.hero.hero--small{min-height:360px}}.hero-mesh{position:absolute;inset:0;background:radial-gradient(45% 40% at 20% 25%,color-mix(in srgb, var(--color-accent) 55%, transparent),transparent 70%),radial-gradient(40% 35% at 80% 20%,color-mix(in srgb, var(--color-secondary) 45%, transparent),transparent 70%),radial-gradient(50% 45% at 50% 85%,color-mix(in srgb, var(--color-gradient-end) 45%, transparent),transparent 75%),linear-gradient(180deg, rgba(11, 17, 32, 0.2) 0%, rgba(11, 17, 32, 0.7) 100%);filter:blur(30px) saturate(125%);opacity:0.9;pointer-events:none;animation:hero-mesh-drift 38s ease-in-out infinite alternate}@keyframes hero-mesh-drift{0%{transform:scale(1.02) translate(0, 0)}50%{transform:scale(1.06) translate(1.5%, 0.8%)}100%{transform:scale(1.02) translate(0, 0)}}.deco-blob{position:absolute;pointer-events:none;opacity:0.9;mix-blend-mode:screen}.deco-blob--0{top:-8%;left:-6%;width:38%;height:46%}.deco-blob--1{top:40%;right:-10%;width:40%;height:50%}.deco-blob--2{bottom:-10%;left:30%;width:42%;height:44%}.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(800px 400px at 80% -10%, rgba(26, 175, 160, 0.14), transparent 60%),radial-gradient(700px 500px at -10% 100%, rgba(236, 72, 153, 0.10), transparent 65%);pointer-events:none}.hero-dotgrid{position:absolute;inset:0;background-image:radial-gradient(var(--color-border) 1px, transparent 1px);background-size:24px 24px;opacity:0.20;pointer-events:none;mask-image:radial-gradient(60% 60% at 50% 40%, #000 40%, transparent 100%);-webkit-mask-image:radial-gradient(60% 60% at 50% 40%, #000 40%, transparent 100%)}.hero-inner{position:relative;z-index:2;width:100%;max-width:var(--content-wide);margin:0 auto;padding:var(--space-7) var(--space-5);display:flex;flex-direction:column;gap:var(--space-5);align-items:center}.hero.hero--small .hero-inner{align-items:flex-start;gap:var(--space-4)}.hero-label{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-accent);padding:6px 14px;border:1px solid color-mix(in srgb, var(--color-accent) 40%, transparent);border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-accent) 12%, transparent)}.hero-title{font-size:var(--text-hero);font-weight:700;max-width:22ch;margin:0;color:var(--color-text);text-shadow:0 4px 32px rgba(0, 0, 0, 0.55);line-height:1.02}.hero.hero--small .hero-title{font-size:var(--text-2xl);letter-spacing:-0.01em;text-shadow:none}.hero-sub{font-size:var(--text-lg);font-weight:400;color:var(--color-text-muted);max-width:52ch;margin:0}.hero-ctas{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-3);justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;font-size:var(--text-base);font-weight:600;border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;transition:all var(--transition);text-decoration:none}.btn-primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.btn-primary:hover{background:var(--color-accent-h);border-color:var(--color-accent-h);color:var(--color-accent-ink);transform:translateY(-1px);box-shadow:0 12px 40px color-mix(in srgb, var(--color-accent) 45%, transparent)}.btn-outline{background:transparent;color:var(--color-accent);border-color:var(--color-accent)}.btn-outline:hover{background:color-mix(in srgb, var(--color-accent) 15%, transparent);color:var(--color-accent)}.btn-ghost{background:transparent;color:var(--color-text);border:1px solid color-mix(in srgb, var(--color-text) 55%, transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn-ghost:hover{background:color-mix(in srgb, var(--color-text) 10%, transparent);border-color:var(--color-text);color:var(--color-text)}.hero-scroll-cue{position:absolute;bottom:var(--space-5);left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:0.1em;text-transform:uppercase;opacity:0.85;animation:hero-cue-fade 2.4s ease-in-out infinite;z-index:2}.hero-scroll-cue svg{display:block}@keyframes hero-cue-fade{0%,100%{opacity:0.4;transform:translateX(-50%) translateY(0)}50%{opacity:1;transform:translateX(-50%) translateY(4px)}}.scrolly{padding:var(--space-9) 0}.scrolly-section{position:relative;display:grid;grid-template-columns:1fr;gap:var(--space-6);align-items:start;padding:var(--space-8) 0;border-top:1px solid color-mix(in srgb, var(--color-border) 60%, transparent)}.scrolly-section:first-child{border-top:0}@media (min-width: 900px){.scrolly-section{grid-template-columns:1fr 1.2fr;min-height:100vh;gap:var(--space-8);padding:var(--space-9) 0}.scrolly-section--reverse .scrolly-text{order:2}.scrolly-section--reverse .scrolly-media{order:1}.scrolly-text{position:sticky;top:calc(var(--header-height) + var(--space-6));align-self:start}}.scrolly-label{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-4)}.scrolly-title{font-size:var(--text-2xl);font-weight:700;color:var(--color-text);margin:0 0 var(--space-4);max-width:22ch}.scrolly-para{font-size:var(--text-base);color:var(--color-text-muted);max-width:52ch}.scrolly-media img{width:100%;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius-lg);box-shadow:0 30px 60px rgba(0, 0, 0, 0.5)}.gallery-strip{padding:var(--space-8) 0;overflow:hidden}.gallery-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(2, 1fr)}@media (min-width: 1024px){.gallery-grid{grid-template-columns:repeat(4, 1fr);gap:var(--space-3)}}.gallery-grid img{width:100%;height:42vh;min-height:240px;max-height:560px;object-fit:cover;border-radius:var(--radius-md);box-shadow:0 20px 40px rgba(0, 0, 0, 0.45)}@media (min-width: 1024px){.gallery-grid img{height:56vh;min-height:320px;max-height:640px}}.quote-moment{padding:var(--space-9) var(--space-5);min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative}.quote-moment__inner{max-width:40em;margin:0 auto}.quote-moment__quote{font-size:var(--text-2xl);font-weight:500;font-style:italic;color:var(--color-text);line-height:1.35;margin:0 0 var(--space-5)}.quote-moment__attr{font-size:var(--text-sm);color:var(--color-text-muted);letter-spacing:0.08em;text-transform:uppercase;margin:0}.home-body{padding:var(--space-8) 0 var(--space-9)}.home-body h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:var(--space-7) 0 var(--space-3);max-width:28ch}.home-body p{font-size:var(--text-base);color:var(--color-text-muted);max-width:72ch}.content{padding:var(--space-8) 0}@media (min-width: 1024px){.content{padding:var(--space-9) 0}}.content h1{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-5)}.content h2{font-size:var(--text-lg);font-weight:700;color:var(--color-text);margin:var(--space-6) 0 var(--space-3);max-width:32ch}.content-image{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:var(--space-5);border-radius:var(--radius-lg);border:0;box-shadow:0 20px 40px rgba(0, 0, 0, 0.4)}.content p{font-size:var(--text-base);max-width:72ch;color:var(--color-text-muted)}.layout-zigzag{padding:0}.layout-zigzag .zigzag-wrap{padding:var(--space-9) 0 var(--space-8)}.zigzag-row{display:grid;grid-template-columns:1fr;gap:var(--space-6);align-items:center;padding:var(--space-7) 0;border-top:1px solid color-mix(in srgb, var(--color-border) 70%, transparent)}.zigzag-row:first-of-type{border-top:0}@media (min-width: 768px){.zigzag-row{grid-template-columns:1.05fr 1fr;gap:var(--space-8)}.zigzag-row--reverse .zigzag-text{order:2}.zigzag-row--reverse .zigzag-visual{order:1}}.zigzag-num{font-size:var(--text-lg);font-weight:700;color:var(--color-text-faint);letter-spacing:0.1em;margin-bottom:var(--space-3)}.zigzag-text h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:0 0 var(--space-4);max-width:28ch}.zigzag-text p{font-size:var(--text-base);color:var(--color-text-muted);max-width:52ch}.zigzag-visual img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:var(--radius-lg);box-shadow:0 20px 40px rgba(0, 0, 0, 0.45)}.layout-timeline{padding:0}.layout-timeline .timeline-wrap{padding:var(--space-9) 0 var(--space-8)}.timeline-rail{list-style:none;padding:0;margin:0;position:relative}.timeline-rail::before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:var(--color-border)}@media (min-width: 768px){.timeline-rail::before{left:15px}}.timeline-milestone{position:relative;padding-left:48px;padding-bottom:var(--space-7)}@media (min-width: 768px){.timeline-milestone{padding-left:60px}}.timeline-milestone:last-child{padding-bottom:0}.timeline-badge{position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-ink);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;letter-spacing:0.02em;box-shadow:0 0 0 4px var(--color-bg)}@media (min-width: 768px){.timeline-badge{width:32px;height:32px;font-size:13px}}.timeline-date{font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:var(--space-2)}.timeline-milestone h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:0 0 var(--space-3);max-width:32ch}.timeline-milestone p{font-size:var(--text-base);color:var(--color-text-muted);max-width:56ch}.layout-feature-grid{padding:0}.layout-feature-grid .feature-wrap{padding:var(--space-9) 0 var(--space-8)}.feature-grid{display:grid;grid-template-columns:1fr;gap:var(--space-5)}@media (min-width: 768px){.feature-grid{grid-template-columns:repeat(2, 1fr)}}@media (min-width: 1024px){.feature-grid{grid-template-columns:repeat(3, 1fr)}}.feature-card{padding:var(--space-6);background:var(--color-surface);border-radius:var(--radius-lg);border:0;box-shadow:0 20px 50px rgba(0, 0, 0, 0.25);transition:transform var(--transition),box-shadow var(--transition);display:flex;flex-direction:column}.feature-card:hover{transform:translateY(-3px);box-shadow:0 30px 60px rgba(0, 0, 0, 0.35)}.feature-card__picto{color:var(--color-accent);margin-bottom:var(--space-4)}.feature-card h2{font-size:var(--text-lg);font-weight:700;color:var(--color-text);margin:0 0 var(--space-3);max-width:28ch}.feature-card p{font-size:var(--text-base);color:var(--color-text-muted);margin:0;max-width:42ch}.layout-long-form{padding:0}.layout-long-form .long-form-wrap{padding:var(--space-9) 0 var(--space-8);display:grid;grid-template-columns:1fr;gap:var(--space-7)}@media (min-width: 1024px){.layout-long-form .long-form-wrap{grid-template-columns:minmax(0, 65ch) 1fr;gap:var(--space-8);align-items:start}}.long-form-prose{max-width:65ch}.long-form-prose h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:var(--space-7) 0 var(--space-3);max-width:36ch}.long-form-prose h2:first-of-type{margin-top:0}.long-form-prose p{font-size:var(--text-base);color:var(--color-text-muted);max-width:65ch;margin:0 0 var(--space-4)}.long-form-prose p:first-of-type::first-letter{font-size:3.5em;font-weight:800;color:var(--color-accent);float:left;line-height:0.9;padding-right:8px;padding-top:4px}.long-form-aside{position:static;padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 20px 40px rgba(0, 0, 0, 0.25)}@media (min-width: 1024px){.long-form-aside{position:sticky;top:calc(var(--header-height) + var(--space-5))}}.long-form-aside h3{font-size:var(--text-sm);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-text);margin:0 0 var(--space-3)}.long-form-aside ol{list-style:decimal;padding-left:1.3em;margin:0 0 var(--space-5);color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.8}.long-form-aside ol a{color:var(--color-text-muted)}.long-form-aside ol a:hover{color:var(--color-accent)}.long-form-aside .aside-cta{display:block;padding:var(--space-4);background:color-mix(in srgb, var(--color-accent) 12%, transparent);border-radius:var(--radius-md);color:var(--color-text);font-weight:600;text-align:center}.long-form-aside .aside-cta:hover{background:color-mix(in srgb, var(--color-accent) 22%, transparent)}.cta-strip{padding:var(--space-8) 0;text-align:center}.cta-strip__title{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:0 0 var(--space-4);max-width:32ch;margin-inline:auto}.cta-strip__sub{font-size:var(--text-base);color:var(--color-text-muted);max-width:48ch;margin:0 auto var(--space-5)}.cta-strip__hallmark{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--space-4);color:var(--color-accent)}.contact-form{display:grid;gap:var(--space-4);max-width:640px;margin-bottom:var(--space-7)}.contact-form label{font-weight:600;font-size:var(--text-sm);display:block;margin-bottom:var(--space-2)}.contact-form input,.contact-form textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.contact-form textarea{min-height:180px;resize:vertical}.contact-form button{justify-self:start;padding:var(--space-3) var(--space-6);background:var(--color-accent);color:var(--color-accent-ink);border:0;border-radius:var(--radius-full);font-weight:600;cursor:pointer;font-size:var(--text-base);transition:all var(--transition)}.contact-form button:hover{background:var(--color-accent-h)}.maps-embed{aspect-ratio:16/9;width:100%;margin-bottom:var(--space-5);background:var(--color-surface-2);border:1px dashed var(--color-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:var(--text-sm)}.site-footer{background:color-mix(in srgb, var(--color-surface) 85%, transparent);border-top:1px solid var(--color-border);padding:var(--space-7) 0 var(--space-5);color:var(--color-text-muted);font-size:var(--text-sm);position:relative;z-index:1}.footer-reduced{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}@media (min-width: 768px){.footer-reduced{align-items:center;text-align:center}}.footer-reduced img{height:42px;width:auto;margin-bottom:var(--space-2)}.footer-reduced .footer-tagline{color:var(--color-text-muted);max-width:42ch;font-size:var(--text-sm);margin:0}.footer-bottom{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid color-mix(in srgb, var(--color-border) 60%, transparent);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.back-to-top{position:fixed;right:var(--space-5);bottom:var(--space-5);width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-accent-ink);border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity var(--transition),transform var(--transition);z-index:55;box-shadow:0 10px 30px rgba(0, 0, 0, 0.4)}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:var(--color-accent-h)}.fade-up{opacity:0;transform:translateY(20px);transition:opacity var(--transition-slow),transform var(--transition-slow);will-change:opacity,transform}.fade-up.is-visible{opacity:1;transform:none}.animated-divider{display:block;width:100%;height:4px;max-width:var(--content-wide);margin:0 auto;padding:0 var(--space-5)}.animated-divider__line{stroke-dasharray:1200;stroke-dashoffset:1200}.animated-divider.is-visible .animated-divider__line{animation:deco-draw 1.4s ease-out forwards}@keyframes deco-draw{to{stroke-dashoffset:0}}.section-label{display:inline-block;font-size:var(--text-sm);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-3)}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important}.fade-up{opacity:1;transform:none}.hero-scroll-cue{animation:none;opacity:0.8}.ambiance-body,.hero-mesh{animation-play-state:paused}.animated-divider__line{stroke-dashoffset:0 !important;animation:none !important}}.footer-reach{padding:var(--space-6) 0;border-top:1px solid var(--color-border);margin-top:var(--space-6)}.footer-reach__heading{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0 0 var(--space-4)}.footer-reach__list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.footer-reach__list li{display:flex;align-items:baseline;gap:var(--space-3);color:var(--color-text)}.footer-reach__label{font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em;min-width:70px}.footer-reach__link{color:var(--color-text);font-weight:600}.footer-reach__link:hover{color:var(--color-accent)}.contact-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin:0 0 var(--space-7)}.contact-card>h2{margin:0 0 var(--space-5);font-size:var(--text-xl);font-weight:800;color:var(--color-text);letter-spacing:-.01em}.contact-card__list{margin:0;display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.contact-card__row{display:grid;grid-template-columns:120px 1fr;align-items:baseline;gap:var(--space-3);margin:0}.contact-card__row dt{margin:0;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-faint)}.contact-card__row dd{margin:0;color:var(--color-text);font-weight:500}.contact-card__row dd a{color:var(--color-accent);font-weight:600}.contact-card__row dd a:hover{color:var(--color-accent-h)}@media (max-width:600px){.contact-card__row{grid-template-columns:1fr}}
/* ---------- v2.3.0 Paint isolation ---------- */
.cv-auto{content-visibility:auto;contain-intrinsic-size:1px 800px}

/* ============================================================
   7Claude — v2.4.0 Marketing / dark override block
   Applied as the LAST CSS layer; cascades over the immersive base.
   Scope: body.archetype-marketing (set by build_6claude on every page)
============================================================ */

body.archetype-marketing{
  --color-bg:#0B1428; --color-surface:#152944; --color-surface-2:#1F3859;
  --color-border:#2C4768; --color-text:#F1F5F9; --color-text-muted:#94B5D4;
  --color-text-faint:#5A7BA0; --color-text-inv:#0B1428;
  --color-accent:#38BDF8; --color-accent-h:#7DD3FC; --color-accent-ink:#0B1428;
  --color-accent-soft:rgba(56,189,248,.12); --color-accent-ring:rgba(56,189,248,.35);
  --color-secondary:#2C4768; --color-secondary-h:#FB923C;
  --color-gradient-end:#7DD3FC;
  --font-headings:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  background:var(--color-bg); color:var(--color-text);
}

body.archetype-marketing h1, body.archetype-marketing h2, body.archetype-marketing h3,
body.archetype-marketing h4, body.archetype-marketing .hero-title{
  font-family:var(--font-headings); font-weight:800; letter-spacing:-0.02em;
  line-height:1.08; color:var(--color-text);
}

/* --- Buttons ------------------------------------------------------------ */
body.archetype-marketing .btn, body.archetype-marketing a.btn,
body.archetype-marketing .button{
  display:inline-flex; align-items:center; gap:var(--space-2);
  padding:var(--space-3) var(--space-5); font-family:var(--font-body);
  font-weight:700; font-size:var(--text-sm); line-height:1;
  letter-spacing:0.02em; border:var(--border-w) solid transparent;
  border-radius:var(--radius-full); background:var(--color-accent);
  color:var(--color-accent-ink); text-decoration:none;
  transition:background var(--transition), transform var(--transition), box-shadow var(--transition);
}
body.archetype-marketing .btn:hover{ background:var(--color-accent-h); transform:translateY(-1px); box-shadow:0 8px 24px rgba(56,189,248,.35); }
body.archetype-marketing .btn-ghost, body.archetype-marketing a.btn-ghost{
  background:transparent; color:var(--color-text);
  border-color:var(--color-border);
}
body.archetype-marketing .btn-ghost:hover{ border-color:var(--color-accent); color:var(--color-accent); background:var(--color-accent-soft); }

/* --- Link colour on dark ----------------------------------------------- */
body.archetype-marketing a{ color:var(--color-accent); }
body.archetype-marketing a:hover{ color:var(--color-accent-h); }

/* --- Header ------------------------------------------------------------ */
body.archetype-marketing .site-header{
  background:rgba(10,10,12,.85);
  backdrop-filter:saturate(140%) blur(12px);
  -webkit-backdrop-filter:saturate(140%) blur(12px);
  border-bottom:var(--border-w) solid var(--color-border);
}
body.archetype-marketing .site-header.scrolled{ background:rgba(10,10,12,.95); }
body.archetype-marketing .site-nav a{ color:var(--color-text); font-weight:600; text-transform:none; letter-spacing:0; }
body.archetype-marketing .site-nav a:hover{ color:var(--color-accent); }
body.archetype-marketing .site-nav a[aria-current=page]{ color:var(--color-accent); }
body.archetype-marketing .lang-switch{
  color:var(--color-text); border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-full); padding:var(--space-2) var(--space-4);
  font-weight:700; letter-spacing:0.04em; text-transform:none; background:transparent;
}
body.archetype-marketing .lang-switch:hover{ background:var(--color-surface); color:var(--color-accent); }

/* --- Hero: gradient glow backdrop + chip label + bright accent ------- */
body.archetype-marketing .hero{ position:relative; padding:var(--space-9) 0 var(--space-9); background:var(--color-bg); overflow:hidden; }
body.archetype-marketing .hero--small{ padding:var(--space-8) 0 var(--space-7); }
body.archetype-marketing .hero-glow{ position:absolute; inset:-20% -10% auto auto; width:70vw; height:70vw; max-width:960px; max-height:960px; background:radial-gradient(circle at 50% 50%, rgba(56,189,248,.35), transparent 60%); filter:blur(40px); pointer-events:none; z-index:0; }
body.archetype-marketing .hero-glow--left{ inset:auto auto -30% -20%; width:80vw; height:70vw; background:radial-gradient(circle at 50% 50%, rgba(196,181,253,.22), transparent 65%); }
body.archetype-marketing .hero-inner{ position:relative; z-index:2; }
body.archetype-marketing .hero-label{
  display:inline-flex; align-items:center; gap:var(--space-2);
  padding:var(--space-2) var(--space-4); border:var(--border-w) solid var(--color-accent-ring);
  background:var(--color-accent-soft); color:var(--color-accent);
  border-radius:var(--radius-full); font-size:var(--text-sm); font-weight:700;
  letter-spacing:0.06em; text-transform:uppercase;
}
body.archetype-marketing .hero-label .dot{ width:6px; height:6px; border-radius:9999px; background:var(--color-accent); box-shadow:0 0 12px var(--color-accent); }
body.archetype-marketing .hero-title{
  font-size:clamp(2.75rem, 2.5rem + 3.5vw, 5.5rem);
  font-weight:800; letter-spacing:-0.025em; line-height:1.04;
  color:var(--color-text); margin:0 0 var(--space-5);
}
body.archetype-marketing .hero-title .accent{ background:linear-gradient(120deg, var(--color-accent) 0%, var(--color-gradient-end) 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
body.archetype-marketing .hero-sub{ color:var(--color-text-muted); font-size:var(--text-lg); max-width:660px; margin:0 0 var(--space-6); line-height:1.55; }
body.archetype-marketing .hero-trust{ display:flex; gap:var(--space-5); color:var(--color-text-faint); font-size:var(--text-sm); flex-wrap:wrap; align-items:center; }
body.archetype-marketing .hero-trust::before{ content:""; width:24px; height:1px; background:var(--color-border); }

/* --- Stats band --------------------------------------------------------- */
body.archetype-marketing .stats-band{ padding:var(--space-9) 0; border-top:var(--border-w) solid var(--color-border); border-bottom:var(--border-w) solid var(--color-border); background:var(--color-surface); }
body.archetype-marketing .stats-band__grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-5); }
body.archetype-marketing .stats-band__cell{ padding:var(--space-6); border:var(--border-w) solid var(--color-border); border-radius:var(--radius-lg); background:var(--color-surface-2); }
body.archetype-marketing .stat-num{ font-family:var(--font-headings); font-size:clamp(2.25rem,1.75rem + 2vw,3.5rem); font-weight:800; line-height:1; color:var(--color-text); margin:0 0 var(--space-2); letter-spacing:-0.02em; background:linear-gradient(120deg, var(--color-accent) 0%, var(--color-text) 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
body.archetype-marketing .stat-label{ font-size:var(--text-sm); font-weight:600; color:var(--color-text-muted); letter-spacing:0.02em; }
@media (max-width:880px){ body.archetype-marketing .stats-band__grid{ grid-template-columns:repeat(2, 1fr); } }
@media (max-width:520px){ body.archetype-marketing .stats-band__grid{ grid-template-columns:1fr; } }

/* --- Social-proof logos row -------------------------------------------- */
body.archetype-marketing .social-proof{ padding:var(--space-7) 0; background:var(--color-bg); }
body.archetype-marketing .social-proof__inner{ max-width:var(--content-wide); margin:0 auto; padding:0 var(--space-5); }
body.archetype-marketing .social-proof__label{ display:block; text-align:center; color:var(--color-text-faint); font-size:var(--text-sm); font-weight:600; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:var(--space-6); }
body.archetype-marketing .social-proof__row{ display:flex; flex-wrap:wrap; gap:var(--space-7); justify-content:center; align-items:center; }
body.archetype-marketing .social-proof__logo{ font-family:var(--font-headings); font-weight:800; font-size:var(--text-lg); color:var(--color-text-muted); letter-spacing:-0.02em; opacity:.85; transition:opacity var(--transition), color var(--transition); }
body.archetype-marketing .social-proof__logo:hover{ opacity:1; color:var(--color-text); }
body.archetype-marketing .social-proof__logo .sp-mark{ display:inline-block; width:18px; height:18px; margin-right:var(--space-2); vertical-align:-3px; border-radius:4px; background:var(--color-border); position:relative; }
body.archetype-marketing .social-proof__logo .sp-mark.dot{ border-radius:9999px; background:var(--color-accent); box-shadow:0 0 12px rgba(167,139,250,.5); }
body.archetype-marketing .social-proof__logo .sp-mark.ring{ background:transparent; border:2px solid var(--color-accent); }
body.archetype-marketing .social-proof__logo .sp-mark.bar{ border-radius:2px; background:linear-gradient(135deg, var(--color-accent), var(--color-gradient-end)); }

/* --- Services alternating rows ----------------------------------------- */
body.archetype-marketing .services-alt{ padding:var(--space-9) 0; background:var(--color-bg); }
body.archetype-marketing .services-alt__head{ max-width:820px; margin:0 auto var(--space-8); padding:0 var(--space-5); text-align:center; }
body.archetype-marketing .services-alt__eyebrow{ display:inline-block; font-size:var(--text-sm); font-weight:700; color:var(--color-accent); letter-spacing:0.08em; text-transform:uppercase; margin-bottom:var(--space-3); }
body.archetype-marketing .services-alt__head h2{ font-size:clamp(2rem, 1.75rem + 1.25vw, 3rem); font-weight:800; margin:0 0 var(--space-4); letter-spacing:-0.02em; }
body.archetype-marketing .services-alt__head p{ color:var(--color-text-muted); font-size:var(--text-lg); margin:0; line-height:1.6; }
body.archetype-marketing .services-alt__inner{ max-width:var(--content-wide); margin:0 auto; padding:0 var(--space-5); }
body.archetype-marketing .services-alt__row{ display:grid; grid-template-columns:1fr 1fr; gap:var(--space-8); align-items:center; padding:var(--space-7) 0; border-top:var(--border-w) solid var(--color-border); }
body.archetype-marketing .services-alt__row:last-child{ border-bottom:var(--border-w) solid var(--color-border); }
body.archetype-marketing .services-alt__row.reverse .services-alt__text{ order:2; }
body.archetype-marketing .services-alt__row.reverse .services-alt__visual{ order:1; }
body.archetype-marketing .services-alt__picto{ display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:var(--radius-md); background:var(--color-accent-soft); color:var(--color-accent); border:var(--border-w) solid var(--color-accent-ring); margin-bottom:var(--space-4); }
body.archetype-marketing .services-alt__picto svg{ width:26px; height:26px; }
body.archetype-marketing .services-alt__title{ font-size:clamp(1.5rem, 1.25rem + 0.75vw, 2rem); font-weight:800; margin:0 0 var(--space-3); letter-spacing:-0.01em; color:var(--color-text); }
body.archetype-marketing .services-alt__body{ color:var(--color-text-muted); font-size:var(--text-base); line-height:1.65; margin:0 0 var(--space-4); }
body.archetype-marketing .services-alt__bullets{ list-style:none; padding:0; margin:0; display:grid; gap:var(--space-2); }
body.archetype-marketing .services-alt__bullets li{ padding-left:var(--space-5); position:relative; color:var(--color-text); font-size:var(--text-sm); }
body.archetype-marketing .services-alt__bullets li::before{ content:""; position:absolute; left:0; top:0.55em; width:10px; height:10px; border-radius:9999px; background:var(--color-accent); box-shadow:0 0 12px rgba(167,139,250,.5); }
body.archetype-marketing .services-alt__visual{ aspect-ratio:1/1; max-width:420px; margin:0 auto; border-radius:var(--radius-xl); background:linear-gradient(135deg, var(--color-surface) 0%, var(--color-surface-2) 100%); border:var(--border-w) solid var(--color-border); position:relative; overflow:hidden; }
body.archetype-marketing .services-alt__visual::after{ content:""; position:absolute; inset:20% 15% auto auto; width:55%; height:55%; background:radial-gradient(circle at 50% 50%, var(--color-accent-soft), transparent 70%); }
body.archetype-marketing .services-alt__visual .v-shape{ position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); font-family:var(--font-headings); font-size:clamp(3.5rem, 3rem + 2vw, 5rem); font-weight:800; color:var(--color-accent); opacity:.7; letter-spacing:-0.04em; }
@media (max-width:720px){ body.archetype-marketing .services-alt__row{ grid-template-columns:1fr; gap:var(--space-6); } body.archetype-marketing .services-alt__row.reverse .services-alt__text, body.archetype-marketing .services-alt__row.reverse .services-alt__visual{ order:initial; } }

/* --- Testimonials trio -------------------------------------------------- */
body.archetype-marketing .testimonials{ padding:var(--space-9) 0; background:var(--color-surface); border-top:var(--border-w) solid var(--color-border); border-bottom:var(--border-w) solid var(--color-border); }
body.archetype-marketing .testimonials__inner{ max-width:var(--content-wide); margin:0 auto; padding:0 var(--space-5); }
body.archetype-marketing .testimonials__head{ max-width:720px; margin:0 auto var(--space-7); text-align:center; }
body.archetype-marketing .testimonials__eyebrow{ display:inline-block; font-size:var(--text-sm); font-weight:700; color:var(--color-accent); letter-spacing:0.08em; text-transform:uppercase; margin-bottom:var(--space-3); }
body.archetype-marketing .testimonials__head h2{ font-size:clamp(1.75rem, 1.5rem + 1vw, 2.5rem); margin:0; font-weight:800; letter-spacing:-0.02em; }
body.archetype-marketing .testimonials__grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-5); }
body.archetype-marketing .testimonial{ padding:var(--space-6); background:var(--color-surface-2); border:var(--border-w) solid var(--color-border); border-radius:var(--radius-lg); display:flex; flex-direction:column; gap:var(--space-4); }
body.archetype-marketing .testimonial__mark{ color:var(--color-accent); font-size:var(--text-2xl); line-height:1; font-family:var(--font-headings); font-weight:800; }
body.archetype-marketing .testimonial__body{ margin:0; color:var(--color-text); font-size:var(--text-base); line-height:1.6; }
body.archetype-marketing .testimonial__foot{ display:flex; align-items:center; gap:var(--space-3); margin-top:auto; padding-top:var(--space-3); border-top:var(--border-w) solid var(--color-border); }
body.archetype-marketing .testimonial__avatar{ width:40px; height:40px; border-radius:9999px; background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-gradient-end) 100%); display:inline-flex; align-items:center; justify-content:center; color:var(--color-accent-ink); font-weight:800; font-family:var(--font-headings); font-size:var(--text-base); flex:0 0 auto; }
body.archetype-marketing .testimonial__who{ display:flex; flex-direction:column; gap:2px; }
body.archetype-marketing .testimonial__name{ color:var(--color-text); font-weight:700; font-size:var(--text-sm); }
body.archetype-marketing .testimonial__role{ color:var(--color-text-muted); font-size:var(--text-xs); }
@media (max-width:880px){ body.archetype-marketing .testimonials__grid{ grid-template-columns:1fr; } }

/* --- FAQ accordion ------------------------------------------------------ */
body.archetype-marketing .faq{ padding:var(--space-9) 0; background:var(--color-bg); }
body.archetype-marketing .faq__inner{ max-width:820px; margin:0 auto; padding:0 var(--space-5); }
body.archetype-marketing .faq__head{ text-align:center; margin-bottom:var(--space-6); }
body.archetype-marketing .faq__eyebrow{ display:inline-block; font-size:var(--text-sm); font-weight:700; color:var(--color-accent); letter-spacing:0.08em; text-transform:uppercase; margin-bottom:var(--space-3); }
body.archetype-marketing .faq__head h2{ font-size:clamp(1.75rem, 1.5rem + 1vw, 2.5rem); margin:0; font-weight:800; letter-spacing:-0.02em; }
body.archetype-marketing .faq__item{ border-bottom:var(--border-w) solid var(--color-border); }
body.archetype-marketing .faq__item:first-child{ border-top:var(--border-w) solid var(--color-border); }
body.archetype-marketing .faq__summary{ list-style:none; cursor:pointer; padding:var(--space-5) 0; display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); font-weight:700; color:var(--color-text); font-size:var(--text-lg); line-height:1.3; }
body.archetype-marketing .faq__summary::-webkit-details-marker{ display:none; }
body.archetype-marketing .faq__summary::after{ content:"+"; color:var(--color-accent); font-weight:700; font-size:1.5rem; line-height:1; flex:0 0 auto; transition:transform var(--transition); }
body.archetype-marketing .faq__item[open] .faq__summary::after{ content:"–"; }
body.archetype-marketing .faq__item[open] .faq__summary{ color:var(--color-accent); }
body.archetype-marketing .faq__body{ padding:0 0 var(--space-5); color:var(--color-text-muted); line-height:1.65; font-size:var(--text-base); }
body.archetype-marketing .faq__body p{ margin:0 0 var(--space-3); }
body.archetype-marketing .faq__body p:last-child{ margin-bottom:0; }

/* --- CTA band ----------------------------------------------------------- */
body.archetype-marketing .cta-band{ padding:var(--space-9) 0; background:linear-gradient(135deg, #1A2D4D 0%, #0F1F33 100%); border-top:var(--border-w) solid var(--color-border); border-bottom:var(--border-w) solid var(--color-border); position:relative; overflow:hidden; }
body.archetype-marketing .cta-band::before{ content:""; position:absolute; inset:-50% -20% auto auto; width:60vw; height:60vw; background:radial-gradient(circle at 50% 50%, rgba(56,189,248,.35), transparent 65%); filter:blur(40px); pointer-events:none; }
body.archetype-marketing .cta-band__inner{ max-width:var(--content-wide); margin:0 auto; padding:0 var(--space-5); display:flex; align-items:center; justify-content:space-between; gap:var(--space-6); flex-wrap:wrap; position:relative; z-index:2; }
body.archetype-marketing .cta-band__text{ flex:1 1 420px; }
body.archetype-marketing .cta-band h2{ font-size:clamp(1.75rem, 1.5rem + 1.5vw, 3rem); margin:0 0 var(--space-3); color:#FFFFFF; font-weight:800; letter-spacing:-0.02em; }
body.archetype-marketing .cta-band p{ color:rgba(255,255,255,.75); font-size:var(--text-lg); margin:0; line-height:1.55; }
body.archetype-marketing .cta-band .btn{ background:var(--color-accent); color:var(--color-accent-ink); border-color:var(--color-accent); }
body.archetype-marketing .cta-band .btn:hover{ background:var(--color-accent-h); border-color:var(--color-accent-h); }

/* --- Footer (4-column) -------------------------------------------------- */
body.archetype-marketing .site-footer{ background:var(--color-bg); border-top:var(--border-w) solid var(--color-border); padding:var(--space-9) 0 var(--space-5); }
body.archetype-marketing .site-footer .container{ display:block; }
body.archetype-marketing .footer-reach{ display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:var(--space-6); padding-bottom:var(--space-7); margin-bottom:var(--space-5); border-bottom:var(--border-w) solid var(--color-border); }
body.archetype-marketing .footer-col h4{ font-size:var(--text-sm); font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--color-text-muted); margin:0 0 var(--space-4); }
body.archetype-marketing .footer-col__brand{ font-family:var(--font-headings); font-size:var(--text-xl); font-weight:800; letter-spacing:-0.02em; color:var(--color-text); margin:0 0 var(--space-3); }
body.archetype-marketing .footer-col__tagline{ color:var(--color-text-muted); font-size:var(--text-sm); line-height:1.55; margin:0; max-width:280px; }
body.archetype-marketing .footer-col ul{ list-style:none; margin:0; padding:0; display:grid; gap:var(--space-2); }
body.archetype-marketing .footer-col a{ color:var(--color-text); font-size:var(--text-sm); font-weight:500; }
body.archetype-marketing .footer-col a:hover{ color:var(--color-accent); }
body.archetype-marketing .footer-reach__label{ display:block; font-size:var(--text-xs); font-weight:700; color:var(--color-text-faint); letter-spacing:0.08em; text-transform:uppercase; margin-bottom:var(--space-2); }
body.archetype-marketing .footer-reach__value{ color:var(--color-text); font-weight:500; font-size:var(--text-sm); }
body.archetype-marketing .footer-bottom{ display:flex; align-items:center; justify-content:space-between; gap:var(--space-5); font-size:var(--text-sm); color:var(--color-text-faint); padding-top:var(--space-4); }
@media (max-width:880px){ body.archetype-marketing .footer-reach{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ body.archetype-marketing .footer-reach{ grid-template-columns:1fr; } body.archetype-marketing .footer-bottom{ flex-direction:column; align-items:flex-start; gap:var(--space-3); } }

/* --- Inner layouts: dark + accent refinement --------------------------- */
body.archetype-marketing .layout-zigzag .zigzag-row, body.archetype-marketing .layout-feature-grid .feature-grid__item, body.archetype-marketing .layout-timeline .milestone, body.archetype-marketing .layout-long-form .lf-aside{
  background:var(--color-surface); border:var(--border-w) solid var(--color-border); border-radius:var(--radius-lg); box-shadow:var(--shadow-sm);
}
body.archetype-marketing .layout-feature-grid .feature-grid__item{ padding:var(--space-6); }
body.archetype-marketing .layout-feature-grid .feature-grid__item .fg-chip{ display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:var(--radius-md); background:var(--color-accent-soft); color:var(--color-accent); border:var(--border-w) solid var(--color-accent-ring); margin-bottom:var(--space-4); font-family:var(--font-headings); font-weight:800; font-size:var(--text-sm); letter-spacing:0.02em; }
body.archetype-marketing .layout-timeline .milestone{ padding:var(--space-5) var(--space-6); border-left:3px solid var(--color-accent); }
body.archetype-marketing .layout-timeline .milestone .ms-chip{ display:inline-block; padding:2px var(--space-3); border-radius:var(--radius-full); background:var(--color-accent-soft); color:var(--color-accent); font-size:var(--text-xs); font-weight:700; letter-spacing:0.06em; text-transform:uppercase; margin-bottom:var(--space-2); }
body.archetype-marketing .layout-long-form .lf-aside{ padding:var(--space-5); }
body.archetype-marketing .layout-long-form .drop-cap::first-letter{ color:var(--color-accent); font-family:var(--font-headings); font-size:5rem; float:left; line-height:0.8; margin:0.1em 0.15em 0 0; font-weight:800; }
body.archetype-marketing .layout-zigzag .zigzag-row{ padding:var(--space-6); margin-bottom:var(--space-5); }
body.archetype-marketing h2{ font-size:clamp(1.75rem, 1.5rem + 1vw, 2.5rem); margin:0 0 var(--space-5); }
body.archetype-marketing h3{ font-size:clamp(1.25rem, 1.125rem + 0.5vw, 1.5rem); margin:0 0 var(--space-3); }

/* --- Contact card + form ------------------------------------------------ */
body.archetype-marketing .contact-card{ padding:var(--space-6); background:var(--color-surface); border:var(--border-w) solid var(--color-border); border-radius:var(--radius-lg); margin-bottom:var(--space-7); }
body.archetype-marketing .contact-card h2{ font-size:clamp(1.5rem, 1.25rem + 0.75vw, 2rem); font-weight:800; margin:0 0 var(--space-4); padding-bottom:var(--space-3); border-bottom:var(--border-w) solid var(--color-border); }
body.archetype-marketing .contact-card dl{ margin:0; display:grid; gap:var(--space-3); grid-template-columns:120px 1fr; }
body.archetype-marketing .contact-card dt{ color:var(--color-text-muted); font-size:var(--text-sm); font-weight:700; letter-spacing:0.06em; text-transform:uppercase; margin:0; }
body.archetype-marketing .contact-card dd{ margin:0; color:var(--color-text); font-weight:500; }
body.archetype-marketing .contact-card a{ color:var(--color-accent); }

body.archetype-marketing .contact-form{ background:var(--color-surface); border:var(--border-w) solid var(--color-border); border-radius:var(--radius-lg); padding:var(--space-6); margin-bottom:var(--space-6); }
body.archetype-marketing .contact-form__row{ display:grid; gap:var(--space-2); margin-bottom:var(--space-4); }
body.archetype-marketing .contact-form__row.contact-form__row--2{ grid-template-columns:1fr 1fr; gap:var(--space-4); }
body.archetype-marketing .contact-form label{ color:var(--color-text); font-weight:600; font-size:var(--text-sm); letter-spacing:0.01em; }
body.archetype-marketing .contact-form input, body.archetype-marketing .contact-form textarea{ background:var(--color-surface-2); color:var(--color-text); border:var(--border-w) solid var(--color-border); border-radius:var(--radius-md); padding:var(--space-3) var(--space-4); font-family:var(--font-body); font-size:var(--text-base); line-height:1.4; transition:border-color var(--transition), box-shadow var(--transition); width:100%; }
body.archetype-marketing .contact-form input:focus, body.archetype-marketing .contact-form textarea:focus{ outline:0; border-color:var(--color-accent); box-shadow:0 0 0 4px var(--color-accent-ring); }
body.archetype-marketing .contact-form textarea{ resize:vertical; min-height:160px; }
body.archetype-marketing .contact-form__honey{ position:absolute; left:-9999px; top:-9999px; width:1px; height:1px; opacity:0; pointer-events:none; }
body.archetype-marketing .contact-form__submit{ margin-top:var(--space-2); }
body.archetype-marketing .contact-form__legal{ color:var(--color-text-faint); font-size:var(--text-xs); margin-top:var(--space-3); margin-bottom:0; line-height:1.5; }
body.archetype-marketing .form-success{ padding:var(--space-5) var(--space-6); background:rgba(16,185,129,.12); border:var(--border-w) solid rgba(52,211,153,.5); border-radius:var(--radius-md); color:#A7F3D0; font-weight:600; margin-bottom:var(--space-6); display:flex; align-items:center; gap:var(--space-3); }
body.archetype-marketing .form-success::before{ content:"✓"; font-size:var(--text-xl); color:#34D399; font-weight:800; line-height:1; }
body.archetype-marketing .form-error{ padding:var(--space-4) var(--space-5); background:rgba(239,68,68,.12); border:var(--border-w) solid rgba(248,113,113,.5); border-radius:var(--radius-md); color:#FCA5A5; font-weight:500; margin-bottom:var(--space-4); }
body.archetype-marketing .form-error__field{ color:#F87171; font-size:var(--text-xs); font-weight:600; margin-top:var(--space-1); }
@media (max-width:620px){ body.archetype-marketing .contact-form__row.contact-form__row--2{ grid-template-columns:1fr; } body.archetype-marketing .contact-card dl{ grid-template-columns:1fr; gap:var(--space-1); } body.archetype-marketing .contact-card dt{ margin-top:var(--space-3); } }

/* v2.5.0 contact-card grid fix */
body.archetype-marketing .contact-card .contact-card__list{display:flex !important;flex-direction:column;gap:var(--space-3);grid-template-columns:none !important;margin:0;}
body.archetype-marketing .contact-card .contact-card__row{display:grid;grid-template-columns:120px 1fr;gap:var(--space-4);align-items:baseline;}
body.archetype-marketing .contact-card .contact-card__row dt{margin:0;}
body.archetype-marketing .contact-card .contact-card__row dd{margin:0;}
@media (max-width:620px){body.archetype-marketing .contact-card .contact-card__row{grid-template-columns:1fr;gap:var(--space-1);}body.archetype-marketing .contact-card .contact-card__row dt{margin-top:var(--space-2);}}

/* IA101 — variable cuivre dédiée pour les accents secondaires (highlights pédagogiques)
   Distincte de l'accent principal bleu glacier. Pour : badges concept-clé, pulls quote, soulignement éditorial. */
:root {
  --color-cuivre: #EA580C;
  --color-cuivre-h: #FB923C;
  --color-cuivre-soft: rgba(234, 88, 12, .12);
  --color-cuivre-ring: rgba(234, 88, 12, .35);
}


/* ============================================================================
   IA101 LEXIQUE — composants additifs (v0.1.0 MVP)
   Au-dessus du gabarit 7Claude (palette V2 fleuve+cuivre déjà appliquée).
   ============================================================================ */

/* --- Recherche live (home + sections) --- */
.glossary-search{
  max-width:640px;margin:var(--space-7) auto var(--space-6);position:relative;
}
.glossary-search__input{
  width:100%;padding:var(--space-4) var(--space-5);
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-md);
  color:var(--color-text);font-size:var(--text-base);
  transition:border var(--transition);
}
.glossary-search__input:focus{
  outline:none;border-color:var(--color-accent);
  box-shadow:0 0 0 3px var(--color-accent-soft);
}
.glossary-search__results{
  position:absolute;left:0;right:0;top:100%;margin-top:var(--space-2);
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-md);
  max-height:480px;overflow-y:auto;
  display:none;z-index:30;
}
.glossary-search__results.is-open{display:block}
.glossary-search__hit{
  display:block;padding:var(--space-3) var(--space-5);
  border-bottom:var(--border-w) solid var(--color-border);
  color:var(--color-text);text-decoration:none;
}
.glossary-search__hit:last-child{border-bottom:0}
.glossary-search__hit:hover,.glossary-search__hit:focus{
  background:var(--color-accent-soft);outline:none;
}
.glossary-search__hit-term{font-weight:600;color:var(--color-text);font-size:var(--text-base)}
.glossary-search__hit-section{color:var(--color-cuivre);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:0.06em;margin-left:var(--space-3)}
.glossary-search__hit-snippet{display:block;color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-1);line-height:1.4}
.glossary-search__empty{padding:var(--space-4) var(--space-5);color:var(--color-text-muted);font-style:italic}

/* --- Grille de sections (home) --- */
.section-grid{
  display:grid;gap:var(--space-5);
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  margin:var(--space-7) 0;
}
.section-card{
  display:block;padding:var(--space-6);
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-left:3px solid var(--color-accent);
  border-radius:var(--radius-md);
  text-decoration:none;color:inherit;
  transition:border-color var(--transition), transform var(--transition);
}
.section-card:hover{
  border-color:var(--color-accent);
  transform:translateY(-2px);
}
.section-card__id{
  display:inline-block;font-size:var(--text-xs);font-weight:800;
  color:var(--color-cuivre);letter-spacing:0.08em;text-transform:uppercase;
  margin-bottom:var(--space-2);
}
.section-card__title{
  font-size:var(--text-lg);font-weight:700;color:var(--color-text);
  margin:0 0 var(--space-3);line-height:1.3;
}
.section-card__count{
  font-size:var(--text-sm);color:var(--color-text-muted);
  margin:0;
}

/* --- Grille de termes (page de section) --- */
.term-grid{
  display:grid;gap:var(--space-4);
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  margin:var(--space-6) 0;
}
.term-card{
  display:block;padding:var(--space-5) var(--space-6);
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-md);
  text-decoration:none;color:inherit;
  transition:border-color var(--transition), background var(--transition);
}
.term-card:hover{
  border-color:var(--color-accent);
  background:var(--color-surface-2);
}
.term-card--placeholder{
  opacity:0.5;cursor:default;pointer-events:none;
}
.term-card--placeholder::after{
  content:"Fiche à venir";display:inline-block;margin-top:var(--space-3);
  font-size:var(--text-xs);color:var(--color-text-faint);font-style:italic;
}
.term-card__head{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap}
.term-card__title{font-size:var(--text-base);font-weight:700;color:var(--color-text);margin:0}
.term-card__sigle{font-size:var(--text-xs);font-weight:600;color:var(--color-cuivre);background:var(--color-cuivre-soft);padding:2px var(--space-2);border-radius:var(--radius-sm);letter-spacing:0.04em}
.term-card__snippet{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.5;margin:0}

/* --- Breadcrumb --- */
.breadcrumb{
  font-size:var(--text-sm);color:var(--color-text-muted);
  margin:var(--space-5) 0 var(--space-3);
}
.breadcrumb a{color:var(--color-text-muted);text-decoration:none}
.breadcrumb a:hover{color:var(--color-accent)}
.breadcrumb__sep{margin:0 var(--space-2);color:var(--color-text-faint)}

/* --- Page de fiche (term-page) --- */
.term-page{max-width:780px;margin:0 auto;padding:var(--space-6) var(--space-5)}
.term-page__title{
  font-size:clamp(1.75rem,1.5rem + 1.2vw,2.5rem);
  font-weight:800;color:var(--color-text);
  margin:var(--space-4) 0 var(--space-3);letter-spacing:-0.02em;line-height:1.15;
}
.term-page__sigle{
  display:inline-block;margin-left:var(--space-3);
  font-size:0.6em;font-weight:600;
  background:var(--color-cuivre-soft);color:var(--color-cuivre);
  padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);
  letter-spacing:0.04em;vertical-align:middle;
}
.term-page__equiv{
  font-size:var(--text-base);color:var(--color-text-muted);
  margin:0 0 var(--space-6);font-style:italic;
}
.term-page__equiv-label{font-weight:600;font-style:normal;margin-right:var(--space-2);color:var(--color-text-faint);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:0.06em}
.term-page__definition{
  font-size:var(--text-lg);color:var(--color-text);
  line-height:1.65;margin:0 0 var(--space-7);
}
.term-page__block{
  margin:var(--space-6) 0;padding:var(--space-5) var(--space-6);
  background:var(--color-surface);border-left:3px solid var(--color-accent);
  border-radius:var(--radius-sm);
}
.term-page__block-label{
  display:block;font-size:var(--text-xs);font-weight:800;
  color:var(--color-accent);letter-spacing:0.08em;text-transform:uppercase;
  margin-bottom:var(--space-2);
}
.term-page__block-text{font-size:var(--text-base);color:var(--color-text);line-height:1.6;margin:0}
.term-page__block--note{border-left-color:var(--color-cuivre)}
.term-page__block--note .term-page__block-label{color:var(--color-cuivre)}
.term-page__source{
  font-size:var(--text-sm);color:var(--color-text-muted);
  margin:var(--space-7) 0 0;padding-top:var(--space-4);
  border-top:var(--border-w) solid var(--color-border);
}
.term-page__source-label{font-weight:700;color:var(--color-text-faint);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:0.06em;margin-right:var(--space-2)}
.term-page__related{margin:var(--space-7) 0}
.term-page__related-title{font-size:var(--text-sm);font-weight:700;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:0.06em;margin:0 0 var(--space-3)}
.term-page__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.term-page__chip{
  display:inline-block;padding:var(--space-2) var(--space-4);
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-full);
  color:var(--color-text);text-decoration:none;font-size:var(--text-sm);font-weight:500;
  transition:border-color var(--transition), background var(--transition);
}
.term-page__chip:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}
.term-page__chip--placeholder{opacity:0.4;pointer-events:none;font-style:italic}


/* ============================================================================
   IA101 LEXIQUE v0.2.0 — recherche header + page Pourquoi + page Commentaires
   ============================================================================ */

/* --- Recherche compacte dans le header --- */
.header-search{
  position:relative;flex:1;max-width:360px;margin:0 var(--space-4);
}
.header-search__input{
  width:100%;padding:var(--space-2) var(--space-4);
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-full);
  color:var(--color-text);font-size:var(--text-sm);
  transition:border var(--transition);
}
.header-search__input:focus{
  outline:none;border-color:var(--color-accent);
  box-shadow:0 0 0 2px var(--color-accent-soft);
}
@media (max-width: 800px){
  .header-search{display:none}
}

/* --- Page Pourquoi --- */
.page-content{max-width:780px;margin:0 auto;padding:var(--space-7) var(--space-5)}
.page-content h2{
  font-size:clamp(1.5rem,1.25rem + 0.75vw,2rem);
  font-weight:700;color:var(--color-text);
  margin:var(--space-7) 0 var(--space-4);letter-spacing:-0.01em;
}
.page-content h2:first-child{margin-top:0}
.page-content p{font-size:var(--text-base);color:var(--color-text);line-height:1.7;margin:0 0 var(--space-4)}
.page-content em{color:var(--color-text-muted);font-style:italic}
.page-content strong{color:var(--color-text);font-weight:700}
.page-content ul,.page-content ol{padding-left:var(--space-6);margin:var(--space-4) 0}
.page-content li{margin-bottom:var(--space-2);line-height:1.7;color:var(--color-text)}
.page-content table{
  width:100%;border-collapse:collapse;margin:var(--space-5) 0;
  background:var(--color-surface);border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-md);overflow:hidden;
}
.page-content th,.page-content td{
  padding:var(--space-3) var(--space-5);text-align:left;
  border-bottom:var(--border-w) solid var(--color-border);font-size:var(--text-sm);
}
.page-content th{background:var(--color-surface-2);color:var(--color-cuivre);font-weight:700;text-transform:uppercase;letter-spacing:0.04em;font-size:var(--text-xs)}
.page-content tr:last-child td{border-bottom:0}
.page-content td:first-child{font-weight:600;color:var(--color-text)}

.sections-relations{
  background:var(--color-surface);
  border-left:3px solid var(--color-cuivre);
  padding:var(--space-6);
  border-radius:var(--radius-md);
  margin:var(--space-6) 0;
}

/* --- Page Commentaires (formulaire) --- */
.commentaires-grid{
  display:grid;gap:var(--space-7);
  grid-template-columns:1.4fr 1fr;
  margin:var(--space-6) 0;
}
@media (max-width: 800px){
  .commentaires-grid{grid-template-columns:1fr}
}
.commentaires-form{
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-md);
  padding:var(--space-6);
}
.commentaires-form h2{margin:0 0 var(--space-5);font-size:var(--text-lg);font-weight:700;color:var(--color-text)}
.commentaires-form .form-row{display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr;margin-bottom:var(--space-4)}
@media (max-width: 600px){.commentaires-form .form-row{grid-template-columns:1fr}}
.commentaires-form .form-group{margin-bottom:var(--space-4)}
.commentaires-form label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--color-text);margin-bottom:var(--space-2)}
.commentaires-form .req{color:var(--color-cuivre);font-weight:700}
.commentaires-form input,.commentaires-form select,.commentaires-form textarea{
  width:100%;padding:var(--space-3) var(--space-4);
  background:var(--color-bg);border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--text-base);
  font-family:inherit;transition:border var(--transition);
}
.commentaires-form input:focus,.commentaires-form select:focus,.commentaires-form textarea:focus{
  outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft);
}
.commentaires-form textarea{min-height:140px;resize:vertical}
.commentaires-form .hp-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.commentaires-form .btn-submit{
  display:inline-block;padding:var(--space-3) var(--space-6);
  background:var(--color-accent);color:var(--color-accent-ink);
  border:0;border-radius:var(--radius-md);font-weight:700;font-size:var(--text-base);
  cursor:pointer;transition:background var(--transition);
}
.commentaires-form .btn-submit:hover{background:var(--color-accent-h)}
.commentaires-form #form-success,.commentaires-form #form-error{
  margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);
  font-weight:600;display:none;
}
.commentaires-form #form-success{background:rgba(56,189,248,.12);color:var(--color-accent);border:var(--border-w) solid var(--color-accent)}
.commentaires-form #form-error{background:rgba(234,88,12,.12);color:var(--color-cuivre);border:var(--border-w) solid var(--color-cuivre)}
.commentaires-form #form-success.is-shown,.commentaires-form #form-error.is-shown{display:block}

.commentaires-info{
  background:var(--color-surface);
  border:var(--border-w) solid var(--color-border);
  border-radius:var(--radius-md);padding:var(--space-6);
}
.commentaires-info h2{margin:0 0 var(--space-3);font-size:var(--text-lg);font-weight:700;color:var(--color-text)}
.commentaires-info p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6;margin:0 0 var(--space-5)}
.commentaires-info__item{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);align-items:flex-start}
.commentaires-info__item-icon{flex-shrink:0;width:32px;height:32px;background:var(--color-cuivre-soft);color:var(--color-cuivre);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--text-sm)}
.commentaires-info__item-text strong{display:block;color:var(--color-text);font-size:var(--text-sm);margin-bottom:2px}
.commentaires-info__item-text span{display:block;color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.5}
.commentaires-info__notice{margin-top:var(--space-5);padding-top:var(--space-4);border-top:var(--border-w) solid var(--color-border);font-size:var(--text-xs);color:var(--color-text-faint);font-style:italic}

/* v0.2.3 — alignement à gauche du hero home (option B retenue 2026-04-29) */
.hero{text-align:left;justify-content:flex-start}
.hero .hero-inner{align-items:flex-start}
.hero .glossary-search{margin-left:0;margin-right:0}

/* v0.2.4 — logo carré IA101 */
/* v0.2.7 — agrandi dramatiquement (header 56→88, footer 48→96) */
/* v0.2.8 — encore un peu plus (header mobile 56→64, desktop 88→96 ; footer inchangé) */
.site-logo img{display:block;height:64px;width:64px;border-radius:var(--radius-sm)}
@media (min-width: 1024px){.site-logo img{height:96px;width:96px}}
.footer-col img{display:block;height:96px;width:96px;border-radius:var(--radius-sm)}
