/* Generated by AIWF Framework. */
:root {
  --ink: #0B233A;
  --ink-soft: #203A52;
  --accent: #26A378;
  --accent-dark: #187E5D;
  --accent-soft: #DFF4EC;
  --paper: #FFFFFF;
  --surface: #F8FAFC;
  --surface-alt: #F1F6F8;
  --line: #DCE6EC;
  --muted: #66798B;
  --info-soft: #EAF3F8;
  --warning-soft: #FFF4DE;
  --font-sans: var(--font-primary);
  --fs-display: clamp(2.65rem,4.4vw,4.25rem);
  --fs-h2: clamp(1.75rem,2.5vw,2.5rem);
  --fs-h3: clamp(1.18rem,1.35vw,1.45rem);
  --fs-body: clamp(.98rem,.15vw + .95rem,1.05rem);
  --s1: .375rem;
  --s2: .625rem;
  --s3: .875rem;
  --s4: 1.25rem;
  --s5: 1.75rem;
  --s6: 2.5rem;
  --s7: 3.5rem;
  --s8: 5rem;
  --s9: 7rem;
  --r-sm: 10px;
  --r-md: 16px;
  --r-lg: 24px;
  --r-xl: 34px;
  --r-pill: 999px;
  --shadow-card: 0 18px 55px rgba(11,35,58,.08);
  --shadow-float: 0 24px 70px rgba(11,35,58,.14);
  --container: 1180px;
  --gutter: clamp(20px,4vw,48px);
  --reading: 760px;
  --header: 76px;
  --radius: 16px;
  --shadow: 0 18px 55px rgba(11,35,58,.08);
  --font-primary: var(--aiwf-font-primary, Manrope, "Avenir Next", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  --font-secondary: var(--aiwf-font-secondary, "Fira Code", ui-monospace, SFMono-Regular, Consolas, monospace);
  --fs-h4: clamp(1rem,.35vw + .95rem,1.125rem);
  --fs-lead: clamp(1.05rem,.3vw + 1rem,1.2rem);
  --fs-small: .875rem;
  --fs-meta: .75rem;
  --fs-label: .6875rem;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;
  --brand-sky: #8DC9D7;
  --brand-ocean: #345F73;
  --brand-foam: #EEF8F5;
  --brand-mist: #E9F1F5;
  --shadow-soft: 0 14px 44px rgba(11,35,58,.07);
  --shadow-deep: 0 34px 90px rgba(11,35,58,.18);
  --ease-brand: cubic-bezier(.2,.75,.2,1);
  --motion-fast: 220ms;
  --motion-medium: 520ms;
  --motion-slow: 9s;
}

/* component: axiome-foundation */
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit}p{margin:0 0 1rem}.container{width:min(var(--container),calc(100% - 2*var(--gutter)));margin-inline:auto}.site-header{border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:5}.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:8px;font-weight:800;line-height:1}.brand small{display:block;font-size:9px;color:var(--accent);letter-spacing:.12em;margin-top:4px}.brand-mark{display:grid;place-items:center;width:24px;height:24px;border:2px solid var(--ink);clip-path:polygon(50% 0,100% 100%,0 100%);font-size:10px}.site-header nav{display:flex;gap:22px;font-size:13px}.site-header nav a{text-decoration:none}.breadcrumb{font-size:12px;color:var(--muted);padding-block:14px}.hero{overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch;min-height:430px}.hero-copy{padding:52px 36px 38px 0}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.15em;font-weight:800;margin-bottom:12px}.hero h1{font-size:clamp(44px,5vw,72px);line-height:1.02;letter-spacing:-.045em;margin:0 0 14px}.lead{font-size:19px;font-weight:700}.accent{color:var(--accent)}.hero-media{min-height:430px;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%,12% 66%,0 35%);background:linear-gradient(135deg,#d9edf1,#78b8c8 50%,#142c40);display:grid;place-items:center;color:#fff;font-weight:700;text-align:center;padding:40px}.hero-media.missing span{background:rgba(20,44,64,.72);padding:10px 14px;border-radius:8px}.quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--line);margin-top:28px;padding-top:18px}.quickfacts span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.quickfacts strong{font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.actions{display:flex;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:7px;text-decoration:none;font-weight:750;font-size:13px}.button.primary{background:var(--ink);color:#fff}.button.secondary{border:1px solid var(--line);background:#fff}.button.light{border:1px solid rgba(255,255,255,.55);color:#fff}.summary-wrap{position:relative;margin-top:-28px;z-index:2}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.summary-card{padding:26px 22px;min-height:190px;border-right:1px solid var(--line)}.summary-card:last-child{border-right:0}.summary-card .icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;font-size:10px;margin-bottom:24px}.summary-card h3{font-size:15px;margin:0 0 10px}.summary-card p{font-size:12px;color:#415564}.section{padding:70px 0}.surface{background:var(--surface)}.split{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}.section h2{font-size:32px;line-height:1.1;letter-spacing:-.035em;margin:0 0 18px}.quote-card{background:var(--surface);border:1px solid #eef2f4;border-radius:14px;padding:28px}.quote-card blockquote{margin:0;font-weight:700;font-size:16px;line-height:1.5;border-left:2px solid var(--accent);padding-left:18px}.quote-card hr{border:0;border-top:1px solid var(--line);margin:24px 0}.two-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #e8edf0;border-radius:var(--radius);padding:26px}.panel h3{margin:0 0 18px;font-size:17px}.definition-list{margin:0}.definition-row{display:grid;grid-template-columns:1fr 1.2fr;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.definition-row:last-child{border-bottom:0}.definition-row dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.definition-row dd{margin:0;font-size:13px;font-weight:650}.panel ul,.details-body ul{padding-left:18px}.panel li,.details-body li{margin:.5rem 0}.content-split{grid-template-columns:1.35fr .65fr}.accordion details{border:1px solid var(--line);border-radius:9px;background:#fff;margin-bottom:10px;overflow:hidden}.accordion summary{cursor:pointer;padding:16px 18px;font-weight:750;font-size:14px;list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:'+';float:right}.accordion details[open] summary:after{content:'-'} .details-body{border-top:1px solid var(--line);padding:18px;font-size:14px}.details-body h4{margin:18px 0 8px}.sticky{position:sticky;top:20px}.center{text-align:center;max-width:720px;margin:0 auto 30px}.center p{color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;text-align:center;min-height:115px;display:flex;flex-direction:column;justify-content:center}.metric strong{font-size:30px;line-height:1;color:var(--ink)}.metric span{margin-top:10px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.metric-empty{grid-column:1/-1}.practical-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.practical-grid .panel{font-size:12px}.big{font-size:20px!important;font-weight:800;color:var(--ink)}.cta{margin-top:38px;border-radius:14px;padding:32px;background:linear-gradient(90deg,#0c2b43,#5b7181);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{margin-bottom:7px}.downloads{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.downloads li{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--line);background:#fff;padding:10px 12px;border-radius:6px;font-size:12px}.downloads a{text-decoration:none}.downloads span{color:var(--muted);font-size:10px}footer{border-top:1px solid var(--line);padding:26px 0;background:#fff}.footer-inner{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.launcher{padding:70px 0}.launcher h1{font-size:48px;line-height:1.05}.launcher-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}.launcher-grid a{text-decoration:none}.launcher-grid strong,.launcher-grid span{display:block}.launcher-grid span{color:var(--muted);margin-top:8px}
@media(max-width:1024px){:root{--gutter:24px}.site-header nav{display:none}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-right:0}.hero-media{min-height:340px;clip-path:polygon(0 10%,100% 0,100% 100%,0 100%)}.summary-wrap{margin-top:-18px}.summary-grid{grid-template-columns:1fr 1fr}.summary-card:nth-child(2){border-right:0}.split,.content-split{grid-template-columns:1fr}.sticky{position:static}.practical-grid{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr 1fr}}
@media(max-width:720px){:root{--gutter:18px}.header-inner{height:62px}.hero-copy{padding-top:34px}.hero h1{font-size:40px}.quickfacts{grid-template-columns:1fr}.actions{flex-direction:column;align-items:stretch}.hero-media{min-height:260px}.summary-grid,.two-cards,.practical-grid,.metrics,.launcher-grid{grid-template-columns:1fr}.summary-card{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.summary-card:last-child{border-bottom:0}.section{padding:50px 0}.section h2{font-size:28px}.split{gap:28px}.definition-row{grid-template-columns:1fr}.downloads{grid-template-columns:1fr}.cta{align-items:flex-start;flex-direction:column}.footer-inner{flex-direction:column}.launcher h1{font-size:38px}}

.hero-media img{width:100%;height:100%;object-fit:cover;display:block}.hero-media.has-image{padding:0}.aiwf-runtime{min-height:40vh}

/* Axiome Webdesign Pack v0.2 - unfolded editorial flow */
body{font-family:var(--font-sans);font-size:var(--fs-body)}
.section{padding:var(--s8) 0}.section-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:30px}.section-kicker{font-size:.7rem;line-height:1.1;text-transform:uppercase;letter-spacing:.12em;font-weight:850;color:var(--accent-dark);margin-bottom:10px}.section-sub{max-width:620px;color:var(--muted);font-size:.86rem}.bullet-list{padding-left:19px}.bullet-list li{margin:8px 0;color:var(--ink-soft)}
.summary-link{display:inline-block;margin-top:12px;color:var(--accent-dark);font-size:.72rem;font-weight:800;text-decoration:none}.summary-link:hover{text-decoration:underline}
.preflight-section{background:linear-gradient(180deg,#fff,var(--surface) 100%)}.preflight-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px}.preflight-card{position:relative;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;background:#fff;box-shadow:0 12px 40px rgba(11,35,58,.035)}.preflight-card h3{margin:2px 0 14px;font-size:1.08rem}.preflight-card p,.preflight-card li{font-size:.84rem;color:var(--ink-soft)}.preflight-no{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);font-size:.69rem;font-weight:900;margin-bottom:12px}.preflight-note{margin-top:16px;padding:12px 14px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--r-sm) var(--r-sm) 0}.org-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}.org-item{padding:18px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.org-item:nth-child(3n){border-right:0}.org-item:nth-last-child(-n+3){border-bottom:0}.org-item span{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:850;margin-bottom:7px}.org-item strong{display:block;font-size:.79rem;color:var(--ink-soft);line-height:1.48}
.learning-flow{background:#fff}.flow-shell{position:relative}.flow-intro{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:start;margin-bottom:32px}.sticky-note{position:sticky;top:22px}.flow-nav{padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-card)}.flow-nav>strong{display:block;margin:2px 8px 10px;font-size:.69rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.flow-nav ol{list-style:none;padding:0;margin:0;display:grid;gap:5px}.flow-nav a{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:10px 9px;border-radius:10px;text-decoration:none;font-size:.82rem;font-weight:760;color:var(--ink-soft)}.flow-nav a:hover,.flow-nav a:focus{background:var(--accent-soft);outline:none}.flow-nav em{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-style:normal;background:var(--surface-alt);font-size:.72rem;color:var(--accent-dark)}.flow-lead{padding:12px 0 18px;max-width:780px}.flow-lead h3{font-size:var(--fs-h3);margin:0 0 12px}.flow-lead p{color:var(--ink-soft);max-width:720px}.flow-banner{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.flow-banner span{padding:8px 12px;border-radius:var(--r-pill);background:var(--accent-soft);font-size:.72rem;font-weight:800;color:var(--accent-dark)}
.flow-chapters{display:grid;gap:28px}.chapter{position:relative;border:1px solid var(--line);border-radius:var(--r-xl);background:#fff;overflow:hidden;box-shadow:0 12px 42px rgba(11,35,58,.05);scroll-margin-top:30px}.chapter-head{display:grid;grid-template-columns:96px 1fr;gap:18px;padding:34px 38px 22px;align-items:start}.chapter-no{font-size:3.5rem;font-weight:850;letter-spacing:-.08em;line-height:.85;color:var(--accent)}.chapter-title small{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:820;margin-bottom:7px}.chapter-title h3{font-size:var(--fs-h3);margin:0}.chapter-title p{margin:10px 0 0;color:var(--muted);max-width:760px}.chapter-body{padding:0 38px 38px;margin-left:114px}.chapter:before{content:"";position:absolute;left:84px;top:95px;bottom:36px;width:1px;background:linear-gradient(var(--accent),transparent)}
.objective-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.objective{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:.86rem;font-weight:650;line-height:1.45;color:var(--ink-soft)}.objective:before{content:"→";color:var(--accent);font-weight:900;margin-right:9px}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.skill-card{padding:22px;border:1px solid var(--line);border-radius:var(--r-md);background:linear-gradient(180deg,#fff,var(--surface));min-height:100%}.skill-card h4{font-size:.92rem;margin:0 0 14px}.skill-card ul{padding-left:18px;margin:0}.skill-card li{font-size:.78rem;color:var(--ink-soft);margin:8px 0}.skill-tag{display:inline-block;font-size:.64rem;letter-spacing:.09em;text-transform:uppercase;font-weight:850;color:var(--accent-dark);margin-bottom:10px}
.timeline{position:relative;display:grid;gap:0;counter-reset:aiwf-step}.timeline:before{content:"";position:absolute;left:19px;top:16px;bottom:18px;width:2px;background:var(--line)}.step{display:grid;grid-template-columns:42px 1fr;gap:16px;position:relative;padding:0 0 18px;counter-increment:aiwf-step}.step:last-child{padding-bottom:0}.step-marker{width:40px;height:40px;border-radius:50%;background:#fff;border:2px solid var(--accent);display:grid;place-items:center;font-size:.72rem;font-weight:900;color:var(--accent-dark);z-index:1}.step-marker:before{content:counter(aiwf-step,decimal-leading-zero)}.step-card{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:.84rem;color:var(--ink-soft)}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.method-card{padding:24px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.method-card h4{margin:0 0 12px}.method-card ul{padding:0;list-style:none;margin:0}.method-card li{position:relative;padding-left:22px;margin:9px 0;color:var(--ink-soft);font-size:.82rem}.method-card li:before{content:"+";position:absolute;left:0;color:var(--accent);font-weight:900}
.special-stack{display:grid;gap:14px}.special{border-left:4px solid var(--accent);background:linear-gradient(90deg,var(--accent-soft),#fff 68%);padding:24px 26px;border-radius:0 var(--r-lg) var(--r-lg) 0}.special h4{margin:0 0 8px}.special p{color:var(--ink-soft);font-size:.85rem}.special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.special-item{padding:16px;border:1px solid rgba(38,163,120,.18);background:rgba(255,255,255,.78);border-radius:var(--r-md);font-size:.78rem;color:var(--ink-soft)}.special-item strong{display:block;color:var(--ink);margin-bottom:5px}.eval-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.eval-card{padding:22px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff}.eval-card .index{color:var(--accent);font-weight:900;font-size:.72rem;letter-spacing:.1em}.eval-card h4{margin:8px 0 10px}.eval-card p,.eval-card li{font-size:.78rem;color:var(--ink-soft)}.eval-card ul{padding-left:18px}
.source-sections{background:var(--surface)}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.source-card{padding:24px;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:0 10px 34px rgba(11,35,58,.04);break-inside:avoid}.source-card h3{font-size:1rem;margin:6px 0 14px}.source-card p,.source-card li,.source-card dd{font-size:.8rem;color:var(--ink-soft)}.source-facts .definition-row{grid-template-columns:minmax(110px,.7fr) 1.3fr}
@media(max-width:980px){.preflight-grid,.flow-intro{grid-template-columns:1fr}.sticky-note{position:static}.flow-nav ol{grid-template-columns:repeat(2,minmax(0,1fr))}.org-strip{grid-template-columns:repeat(2,1fr)}.org-item:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}.org-item:nth-child(even){border-left:1px solid var(--line)}.org-item:nth-last-child(-n+2){border-bottom:0}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eval-grid{grid-template-columns:1fr}.source-grid{grid-template-columns:1fr}.section{padding:var(--s7) 0}}
@media(max-width:680px){.section-head{display:block}.section-sub{margin-top:10px}.flow-nav ol{grid-template-columns:1fr 1fr}.chapter-head{grid-template-columns:64px 1fr;padding:26px 22px 18px}.chapter-no{font-size:2.6rem}.chapter-body{margin-left:0;padding:0 22px 26px}.chapter:before{display:none}.objective-grid,.skill-grid,.method-grid,.special-grid,.eval-grid,.source-grid,.org-strip{grid-template-columns:1fr}.org-item:nth-child(n){border-left:0;border-right:0;border-bottom:1px solid var(--line)}.org-item:last-child{border-bottom:0}.flow-nav{padding:12px}.flow-nav a{grid-template-columns:28px 1fr;font-size:.75rem;padding:8px 6px}.flow-nav em{width:26px;height:26px}.section{padding:var(--s7) 0}}

/* === Axiome 0.4.0 - adaptive editorial refinement ======================= */
/* The public template stays content-first, but no card is forced into a
   fixed fraction when siblings are missing. These rules intentionally use
   flexbox for variable-length groups. */
.adaptive-row{display:flex!important;flex-wrap:wrap;align-items:stretch;gap:18px}
.adaptive-row>*{flex:1 1 300px;min-width:0}

/* Section rhythm and personality */
.section-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--accent-dark)}
.section-kicker:before{content:"";width:9px;height:9px;border-radius:3px;background:var(--accent);transform:rotate(45deg);box-shadow:0 0 0 5px var(--accent-soft)}
.section-head{position:relative}.section-head:after{content:"";position:absolute;right:0;bottom:-16px;width:72px;height:2px;background:linear-gradient(90deg,var(--accent),transparent)}
.panel,.preflight-card,.source-card,.skill-card,.method-card,.eval-card{position:relative;overflow:hidden}
.panel:after,.preflight-card:after,.source-card:after,.skill-card:after,.method-card:after,.eval-card:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;right:-55px;bottom:-60px;background:radial-gradient(circle,var(--accent-soft) 0 38%,transparent 40%);opacity:.75;pointer-events:none}
.panel-symbol,.card-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--accent-soft);color:var(--accent-dark);font-size:.72rem;font-weight:900;margin-bottom:18px;box-shadow:inset 0 0 0 1px rgba(38,163,120,.12)}

/* Summary cards: adaptive instead of a rigid 4-column grid */
.summary-grid{display:flex;flex-wrap:wrap;gap:0}
.summary-card{flex:1 1 230px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.summary-card:last-child{border-right:0}
.summary-card .icon{background:var(--accent-soft);border:0;color:var(--accent-dark);font-weight:900}
.summary-link{color:var(--accent-dark);font-weight:800;text-decoration:none}

/* Preflight: one surviving panel becomes full-width naturally */
.preflight-section{background:linear-gradient(180deg,#fff 0%,var(--surface) 72%,var(--surface-alt) 100%)}
.preflight-grid{display:flex;flex-wrap:wrap;gap:18px}
.preflight-grid>.preflight-card{flex:1 1 430px}
.preflight-no{font-size:.68rem;width:34px;height:34px;position:static;color:var(--accent-dark);background:var(--accent-soft);margin-bottom:14px}
.preflight-card h3{padding-right:0}
.org-strip{display:flex;flex-wrap:wrap;overflow:hidden}
.org-item{flex:1 1 240px;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;min-height:0}
.org-item:last-child{border-right:0!important}

/* Details: 1 card = full width, 2 cards = balanced */
.two-cards{display:flex;flex-wrap:wrap;gap:18px}
.two-cards>.panel{flex:1 1 420px}
.details-section{background:linear-gradient(180deg,var(--surface),#fff)}
.detail-credential{border-top:3px solid var(--accent)}
.detail-outcomes{border-top:3px solid var(--ink)}
.detail-validation{border-top:3px solid var(--accent-dark)}

/* Full-width anchor navigation */
.flow-heading{margin-bottom:24px}
.flow-nav-wide{position:sticky;top:10px;z-index:4;width:100%;display:flex;align-items:center;gap:18px;padding:12px 14px;margin:0 0 32px;border:1px solid rgba(38,163,120,.22);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-radius:var(--r-lg);box-shadow:0 12px 34px rgba(11,35,58,.07)}
.flow-nav-wide>strong{flex:0 0 auto;margin:0;padding:0 8px;color:var(--accent-dark)}
.flow-nav-wide ol{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:7px;margin:0}
.flow-nav-wide li{display:flex;flex:0 1 auto}
.flow-nav-wide a{display:flex;grid-template-columns:none;gap:8px;padding:8px 11px;border-radius:var(--r-pill);white-space:nowrap;background:var(--surface)}
.flow-nav-wide a:hover,.flow-nav-wide a:focus{background:var(--accent-soft);box-shadow:inset 0 0 0 1px rgba(38,163,120,.18)}
.flow-nav-wide em{width:24px;height:24px;background:#fff;border:1px solid var(--line);font-size:.64rem}

/* Chapters: lighter, more editorial, no explanatory template copy */
.flow-chapters{gap:34px}
.chapter{border:0;box-shadow:0 16px 48px rgba(11,35,58,.075);isolation:isolate}
.chapter:after{content:"";position:absolute;right:-70px;top:-76px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle at center,rgba(38,163,120,.12),rgba(38,163,120,0) 67%);z-index:-1;pointer-events:none}
.chapter-head{border-bottom:1px solid rgba(220,230,236,.72)}
.chapter-title small{color:var(--accent-dark)}
.chapter-title h3{max-width:800px}
.chapter-body{padding-top:24px}

/* Variable groups use flexbox; orphan items can occupy all available width */
.objective-grid,.skill-grid,.method-grid,.eval-grid,.special-grid,.source-grid,.practical-grid,.metrics{display:flex;flex-wrap:wrap;align-items:stretch;gap:14px}
.objective{flex:1 1 320px}
.skill-card{flex:1 1 300px}
.method-card{flex:1 1 380px}
.eval-card{flex:1 1 300px}
.special-item{flex:1 1 300px}
.source-card{flex:1 1 420px}
.practical-grid>.panel{flex:1 1 250px}
.metrics>.metric{flex:1 1 190px}
.metric-empty{flex-basis:100%!important}

.objective{background:linear-gradient(135deg,var(--surface),#fff);border-color:rgba(38,163,120,.16)}
.skill-card{border-top:3px solid var(--accent)}
.skill-tag{background:var(--accent-soft);padding:5px 8px;border-radius:var(--r-pill)}
.method-card{background:linear-gradient(160deg,#fff 0%,var(--surface-alt) 100%)}
.eval-card{border-top:3px solid var(--ink)}
.eval-card .index{display:inline-flex;padding:5px 8px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-dark)}

/* Timeline */
.timeline:before{background:linear-gradient(var(--accent),var(--line) 65%,transparent)}
.step-card{background:#fff;box-shadow:0 6px 16px rgba(11,35,58,.035)}
.step-marker{box-shadow:0 0 0 6px var(--accent-soft)}

/* Complementary/source sections: no raw technical kind labels */
.source-sections{background:linear-gradient(180deg,var(--surface) 0%,var(--surface-alt) 100%)}
.source-card{border:0;border-left:3px solid var(--accent);box-shadow:0 10px 34px rgba(11,35,58,.055)}
.source-mark{display:block;width:42px;height:5px;border-radius:5px;background:linear-gradient(90deg,var(--accent),var(--accent-soft));margin-bottom:14px}
.source-card h3{font-size:1.05rem}
.source-facts .definition-row{display:flex;flex-wrap:wrap;gap:8px 24px}
.source-facts dt{flex:0 1 180px}.source-facts dd{flex:1 1 260px}

/* Practical cards */
.practical-section{background:#fff}
.practical-card{border:1px solid var(--line);box-shadow:0 8px 28px rgba(11,35,58,.04)}
.practical-card:nth-child(2n) .panel-symbol{background:var(--surface-alt);color:var(--ink)}
.practical-card p,.practical-card li{color:var(--ink-soft)}

/* Metrics: compact proof strip with more visual character */
.metrics-section{background:linear-gradient(135deg,var(--surface-alt),var(--surface))}
.metric{position:relative;border:0;box-shadow:0 10px 28px rgba(11,35,58,.045);min-height:130px}
.metric-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);position:absolute;left:16px;top:16px;box-shadow:0 0 0 5px var(--accent-soft)}

/* CTA accent without taking over the page */
.cta{position:relative;overflow:hidden;background:linear-gradient(105deg,var(--ink) 0%,#183d58 66%,#597583 100%)}
.cta:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-80px;top:-120px;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 34px rgba(255,255,255,.045),0 0 0 68px rgba(38,163,120,.06);pointer-events:none}
.cta>*{position:relative;z-index:1}

@media(max-width:980px){
  .flow-nav-wide{position:relative;top:auto;align-items:flex-start}
  .flow-nav-wide ol{gap:6px}
  .chapter-body{margin-left:82px}
  .adaptive-row>*{flex-basis:340px}
}
@media(max-width:680px){
  .flow-nav-wide{display:block;padding:12px;margin-bottom:24px;overflow:hidden}
  .flow-nav-wide>strong{display:block;margin:0 0 9px 3px}
  .flow-nav-wide ol{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
  .flow-nav-wide li{flex:0 0 auto}
  .flow-nav-wide a{font-size:.76rem}
  .chapter-head{grid-template-columns:54px 1fr}
  .chapter-body{margin-left:0}
  .adaptive-row>*{flex-basis:100%}
  .org-item{flex-basis:100%;border-right:0!important}
  .source-card,.method-card,.skill-card,.eval-card,.practical-grid>.panel,.objective{flex-basis:100%}
  .summary-card{flex-basis:100%;border-right:0}
  .section-head:after{display:none}
}

/* Additional adaptive groups */
.quickfacts{display:flex;flex-wrap:wrap;gap:12px}
.quickfacts>div{flex:1 1 180px;min-width:0}
.split{display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start}
.split>*{flex:1 1 420px;min-width:0}
.presentation-copy{flex:1.25 1 540px}
.quote-card{flex:.75 1 320px}
.downloads{display:flex;flex-wrap:wrap;gap:8px}
.downloads li{flex:1 1 280px}
@media(max-width:680px){.split{gap:28px}.quickfacts>div,.downloads li{flex-basis:100%}}

/* === Axiome 0.5.0 - editorial media slots ============================== */
.prestation-image-break{padding:18px 0 58px}
.prestation-image-frame{margin:0;position:relative;overflow:hidden;border-radius:calc(var(--r-lg) + 4px);background:linear-gradient(135deg,var(--surface-alt),#dcebf0);box-shadow:0 18px 55px rgba(11,35,58,.08);isolation:isolate}
.prestation-image-frame:before{content:"";position:absolute;inset:auto -70px -110px auto;width:260px;height:260px;border:1px solid rgba(38,163,120,.18);border-radius:50%;box-shadow:0 0 0 38px rgba(38,163,120,.045),0 0 0 76px rgba(11,35,58,.025);z-index:0;pointer-events:none}
.prestation-image-frame img{display:block;width:100%;height:100%;object-fit:cover;position:relative;z-index:1}
.prestation-image-break--wide .prestation-image-frame{aspect-ratio:16/6;min-height:280px}
.prestation-image-break--editorial .prestation-image-frame{aspect-ratio:16/7;min-height:300px}
.prestation-image-break--banner .prestation-image-frame{aspect-ratio:16/5;min-height:240px}
.prestation-image-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px;z-index:1;color:var(--ink-soft);background:linear-gradient(135deg,rgba(255,255,255,.68),rgba(223,244,236,.58));border:1px dashed rgba(38,163,120,.38)}
.prestation-image-placeholder:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.72);border-radius:calc(var(--r-lg) - 2px);pointer-events:none}
.prestation-image-placeholder-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:14px;border-radius:16px;background:#fff;color:var(--accent-dark);font-size:20px;box-shadow:0 8px 25px rgba(11,35,58,.08)}
.prestation-image-placeholder strong{font-size:1rem;color:var(--ink);position:relative}.prestation-image-placeholder small{display:block;max-width:460px;margin-top:6px;color:var(--muted);font-size:.76rem;position:relative}
@media(max-width:720px){.prestation-image-break{padding:10px 0 42px}.prestation-image-break--wide .prestation-image-frame,.prestation-image-break--editorial .prestation-image-frame,.prestation-image-break--banner .prestation-image-frame{aspect-ratio:4/3;min-height:220px}.prestation-image-placeholder{padding:24px}}


/* === Axiome 0.6.0 - controlled editorial media layouts ================= */
.prestation-media-layout{position:relative;min-height:280px;border-radius:calc(var(--r-lg) + 4px);isolation:isolate}
.prestation-media-track{display:flex;flex-wrap:wrap;gap:18px;align-items:stretch}
.prestation-media-item{position:relative;margin:0;overflow:hidden;border-radius:calc(var(--r-lg) + 2px);background:linear-gradient(135deg,var(--surface-alt),#dcebf0);box-shadow:0 18px 55px rgba(11,35,58,.10);min-height:260px;flex:1 1 100%}
.prestation-media-item:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.prestation-media-item img{display:block;width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .35s ease}
.prestation-media-item:hover img{transform:scale(1.015)}
.prestation-media-layout>.prestation-image-placeholder{position:relative;min-height:280px;border-radius:calc(var(--r-lg) + 4px);overflow:hidden}

/* Default / one-up. Also acts as a safe fallback for legacy records with no layout value yet. */
.prestation-media-layout .prestation-media-track>.prestation-media-item:nth-child(n+2){display:none}

/* Two equal columns */
.prestation-media-layout--duo-equal .prestation-media-track>.prestation-media-item{display:block;flex:1 1 calc(50% - 9px);min-width:280px;aspect-ratio:4/3}
.prestation-media-layout--duo-equal .prestation-media-track>.prestation-media-item:nth-child(n+3){display:none}
.prestation-media-layout--duo-equal .prestation-media-track>.prestation-media-item:only-child{flex-basis:100%;aspect-ratio:16/7}

/* Three flexible columns */
.prestation-media-layout--triptych .prestation-media-track>.prestation-media-item{display:block;flex:1 1 calc(33.333% - 12px);min-width:230px;aspect-ratio:4/5}
.prestation-media-layout--triptych .prestation-media-track>.prestation-media-item:nth-child(n+4){display:none}
.prestation-media-layout--triptych .prestation-media-track>.prestation-media-item:only-child{flex-basis:100%;aspect-ratio:16/7}

/* Editorial feature - one large frame plus two stacked frames */
.prestation-media-layout--feature-left .prestation-media-track,.prestation-media-layout--feature-right .prestation-media-track{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,.9fr);grid-template-rows:1fr 1fr;gap:18px;min-height:540px}
.prestation-media-layout--feature-left .prestation-media-item,.prestation-media-layout--feature-right .prestation-media-item{display:block;min-height:0;aspect-ratio:auto}
.prestation-media-layout--feature-left .prestation-media-item:first-child{grid-column:1;grid-row:1/3}
.prestation-media-layout--feature-left .prestation-media-item:nth-child(2){grid-column:2;grid-row:1}
.prestation-media-layout--feature-left .prestation-media-item:nth-child(3){grid-column:2;grid-row:2}
.prestation-media-layout--feature-right .prestation-media-item:first-child{grid-column:2;grid-row:1/3}
.prestation-media-layout--feature-right .prestation-media-item:nth-child(2){grid-column:1;grid-row:1}
.prestation-media-layout--feature-right .prestation-media-item:nth-child(3){grid-column:1;grid-row:2}
.prestation-media-layout--feature-left .prestation-media-item:nth-child(n+4),.prestation-media-layout--feature-right .prestation-media-item:nth-child(n+4){display:none}
.prestation-media-layout--feature-left .prestation-media-item:only-child,.prestation-media-layout--feature-right .prestation-media-item:only-child{grid-column:1/-1;grid-row:1/3}
.prestation-media-layout--feature-left .prestation-media-item:first-child:nth-last-child(2){grid-row:1/3}.prestation-media-layout--feature-left .prestation-media-item:nth-child(2):last-child{grid-row:1/3}
.prestation-media-layout--feature-right .prestation-media-item:first-child:nth-last-child(2){grid-row:1/3}.prestation-media-layout--feature-right .prestation-media-item:nth-child(2):last-child{grid-row:1/3}

/* Deliberate staggered pair */
.prestation-media-layout--staggered-left,.prestation-media-layout--staggered-right{padding-bottom:70px}
.prestation-media-layout--staggered-left .prestation-media-track,.prestation-media-layout--staggered-right .prestation-media-track{display:block;position:relative;min-height:500px}
.prestation-media-layout--staggered-left .prestation-media-item,.prestation-media-layout--staggered-right .prestation-media-item{display:block;position:absolute;width:61%;height:410px;min-height:0}
.prestation-media-layout--staggered-left .prestation-media-item:nth-child(n+3),.prestation-media-layout--staggered-right .prestation-media-item:nth-child(n+3){display:none}
.prestation-media-layout--staggered-left .prestation-media-item:first-child{left:0;top:0}.prestation-media-layout--staggered-left .prestation-media-item:nth-child(2){right:0;top:90px}
.prestation-media-layout--staggered-right .prestation-media-item:first-child{right:0;top:0}.prestation-media-layout--staggered-right .prestation-media-item:nth-child(2){left:0;top:90px}
.prestation-media-layout--staggered-left .prestation-media-item:only-child,.prestation-media-layout--staggered-right .prestation-media-item:only-child{position:relative;left:auto;right:auto;top:auto;width:100%;height:auto;min-height:320px;aspect-ratio:16/7}

/* Four-image editorial collage. Fewer images degrade gracefully. */
.prestation-media-layout--collage-four .prestation-media-track{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.85fr);grid-template-rows:repeat(3,170px);gap:14px}
.prestation-media-layout--collage-four .prestation-media-item{display:block;min-height:0;aspect-ratio:auto}
.prestation-media-layout--collage-four .prestation-media-item:first-child{grid-column:1;grid-row:1/4}
.prestation-media-layout--collage-four .prestation-media-item:nth-child(2){grid-column:2;grid-row:1}.prestation-media-layout--collage-four .prestation-media-item:nth-child(3){grid-column:2;grid-row:2}.prestation-media-layout--collage-four .prestation-media-item:nth-child(4){grid-column:2;grid-row:3}
.prestation-media-layout--collage-four .prestation-media-item:only-child{grid-column:1/-1;grid-row:1/4}
.prestation-media-layout--collage-four .prestation-media-item:first-child:nth-last-child(2){grid-column:1;grid-row:1/4}.prestation-media-layout--collage-four .prestation-media-item:nth-child(2):last-child{grid-column:2;grid-row:1/4}
.prestation-media-layout--collage-four .prestation-media-item:first-child:nth-last-child(3){grid-row:1/4}.prestation-media-layout--collage-four .prestation-media-item:nth-child(2):nth-last-child(2){grid-row:1/3}.prestation-media-layout--collage-four .prestation-media-item:nth-child(3):last-child{grid-row:3}

/* Placement variants preserve rhythm but no longer dictate image count. */
.prestation-image-break--wide .prestation-media-layout{min-height:280px}.prestation-image-break--editorial .prestation-media-layout{min-height:300px}.prestation-image-break--banner .prestation-media-layout{min-height:240px}

@media(max-width:900px){
  .prestation-media-layout--feature-left .prestation-media-track,.prestation-media-layout--feature-right .prestation-media-track{grid-template-columns:1.35fr 1fr;min-height:460px}
  .prestation-media-layout--staggered-left .prestation-media-track,.prestation-media-layout--staggered-right .prestation-media-track{min-height:420px}
  .prestation-media-layout--staggered-left .prestation-media-item,.prestation-media-layout--staggered-right .prestation-media-item{height:340px}
}
@media(max-width:720px){
  .prestation-media-layout{min-height:220px}
  .prestation-media-layout .prestation-media-track,.prestation-media-layout--duo-equal .prestation-media-track,.prestation-media-layout--triptych .prestation-media-track{gap:10px}
  .prestation-media-layout--duo-equal .prestation-media-track>.prestation-media-item,.prestation-media-layout--triptych .prestation-media-track>.prestation-media-item{min-width:0;flex-basis:100%;aspect-ratio:4/3}
  .prestation-media-layout--feature-left .prestation-media-track,.prestation-media-layout--feature-right .prestation-media-track,.prestation-media-layout--collage-four .prestation-media-track{display:flex;min-height:0;gap:10px}
  .prestation-media-layout--feature-left .prestation-media-item,.prestation-media-layout--feature-right .prestation-media-item,.prestation-media-layout--collage-four .prestation-media-item{display:block;position:relative;flex:1 1 100%;min-height:220px;aspect-ratio:4/3;grid-column:auto;grid-row:auto}
  .prestation-media-layout--staggered-left,.prestation-media-layout--staggered-right{padding-bottom:0}
  .prestation-media-layout--staggered-left .prestation-media-track,.prestation-media-layout--staggered-right .prestation-media-track{display:flex;min-height:0;gap:10px}
  .prestation-media-layout--staggered-left .prestation-media-item,.prestation-media-layout--staggered-right .prestation-media-item{display:block;position:relative!important;left:auto!important;right:auto!important;top:auto!important;width:100%;height:auto;min-height:220px;aspect-ratio:4/3}
}
/* Explicitly reveal the frames used by each preset after the default one-up rule above. */
.prestation-media-layout--duo-equal .prestation-media-track>.prestation-media-item:nth-child(-n+2){display:block}
.prestation-media-layout--triptych .prestation-media-track>.prestation-media-item:nth-child(-n+3){display:block}
.prestation-media-layout--feature-left .prestation-media-track>.prestation-media-item:nth-child(-n+3),.prestation-media-layout--feature-right .prestation-media-track>.prestation-media-item:nth-child(-n+3){display:block}
.prestation-media-layout--staggered-left .prestation-media-track>.prestation-media-item:nth-child(-n+2),.prestation-media-layout--staggered-right .prestation-media-track>.prestation-media-item:nth-child(-n+2){display:block}
.prestation-media-layout--collage-four .prestation-media-track>.prestation-media-item:nth-child(-n+4){display:block}


/* 0.7.0 - Institutional pages */
.page-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#fbfdfd)}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:stretch;min-height:520px}
.page-hero-copy{padding:80px 58px 64px 0;display:flex;flex-direction:column;justify-content:center}
.page-kicker{margin:0 0 12px;text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:850;color:var(--accent-dark)}
.page-hero h1,.longform-title{font-size:var(--fs-display);line-height:.98;letter-spacing:-.05em;margin:0 0 24px}
.page-lead{max-width:760px;font-size:clamp(1.05rem,.6vw + .95rem,1.28rem);color:var(--ink-soft)}
.page-lead p:last-child,.section-intro p:last-child,.page-prose p:last-child,.longform-intro p:last-child{margin-bottom:0}
.page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.page-hero-media{position:relative;min-height:520px;clip-path:polygon(17% 0,100% 0,100% 100%,0 100%,10% 70%,0 38%);overflow:hidden;background:linear-gradient(135deg,#e8f6f1 0%,#b8ded8 45%,#0b3348 100%)}
.page-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.page-hero--compact .page-hero-grid{min-height:390px}.page-hero--compact .page-hero-media{min-height:390px}.page-hero--dark{background:var(--ink);color:#fff}.page-hero--dark .page-lead{color:#dce6ec}
.page-visual-placeholder{position:absolute;inset:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed rgba(11,35,58,.18);border-radius:var(--r-xl);color:var(--ink-soft);background:rgba(255,255,255,.28)}
.page-visual-placeholder span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--accent);box-shadow:var(--shadow-card);font-size:20px;margin-bottom:16px}.page-visual-placeholder strong{font-size:15px}.page-visual-placeholder small{margin-top:4px;color:var(--muted)}
.section-intro{max-width:780px;color:var(--ink-soft);margin:-4px 0 30px}.page-card-section--surface{background:var(--surface)}.page-card-section--accent{background:var(--accent-soft)}
.page-card-flex,.team-flex,.page-metrics-flex,.direct-contact-flex{display:flex;flex-wrap:wrap;gap:18px}
.page-info-card{position:relative;flex:1 1 280px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;box-shadow:0 12px 34px rgba(11,35,58,.045)}
.page-info-card h3{font-size:clamp(1.25rem,1.2vw + 1rem,1.7rem);line-height:1.12;margin:24px 0 14px}.page-info-card p{color:var(--ink-soft)}
.page-card-index{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--accent-soft);color:var(--accent-dark);font-weight:900;font-size:12px}
.text-link{display:inline-flex;margin-top:18px;color:var(--accent-dark);font-weight:800;text-decoration:none}.text-link:hover{text-decoration:underline}
.page-rich-section--surface{background:var(--surface)}.page-rich-section--accent-soft{background:linear-gradient(135deg,var(--accent-soft),#f8fcfa)}
.page-rich-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:64px;align-items:start}.page-rich-grid h2{font-size:var(--fs-h2);line-height:1.04;letter-spacing:-.045em;margin:0 0 22px}.page-prose{font-size:var(--fs-body);color:var(--ink-soft)}.page-prose h3{color:var(--ink)}
.page-aside,.quality-cert,.longform-aside{position:relative;border:1px solid var(--line);background:#fff;border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow-card)}.page-aside-mark,.quality-badge,.longform-aside>span:first-child{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);font-weight:900;margin-bottom:22px}.page-aside h3,.quality-cert h3,.longform-aside h3{font-size:1.25rem;margin:0 0 12px}
.page-image-break{padding:20px 0 72px}.page-media-layout{position:relative;min-height:300px}.page-media-track{display:flex;flex-wrap:wrap;gap:18px}.page-media-item{position:relative;display:none;flex:1 1 100%;overflow:hidden;border-radius:calc(var(--r-lg) + 4px);min-height:320px;background:var(--surface-alt);box-shadow:var(--shadow-card)}.page-media-item img{display:block;width:100%;height:100%;object-fit:cover}.page-media-layout .page-media-track>.page-media-item:first-child{display:block}.page-image-placeholder{min-height:300px;border:1px dashed #bfd2da;border-radius:var(--r-xl);background:linear-gradient(135deg,#f1f8f6,#e3f2ee);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--ink-soft)}.page-image-placeholder-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--accent);box-shadow:var(--shadow-card);font-size:18px;margin-bottom:14px}.page-image-placeholder small{margin-top:4px;color:var(--muted)}
.page-media-layout--duo-equal .page-media-item:nth-child(-n+2){display:block;flex-basis:calc(50% - 9px)}.page-media-layout--triptych .page-media-item:nth-child(-n+3){display:block;flex-basis:calc(33.333% - 12px);min-height:360px}.page-media-layout--feature-left .page-media-track,.page-media-layout--feature-right .page-media-track,.page-media-layout--collage-four .page-media-track{display:grid;grid-template-columns:1.45fr .8fr;grid-template-rows:repeat(2,240px);gap:16px}.page-media-layout--feature-left .page-media-item:nth-child(-n+3),.page-media-layout--feature-right .page-media-item:nth-child(-n+3),.page-media-layout--collage-four .page-media-item:nth-child(-n+4){display:block;min-height:0}.page-media-layout--feature-left .page-media-item:first-child{grid-row:1/3}.page-media-layout--feature-right .page-media-item:first-child{grid-column:2;grid-row:1/3}.page-media-layout--feature-right .page-media-item:nth-child(2),.page-media-layout--feature-right .page-media-item:nth-child(3){grid-column:1}.page-media-layout--collage-four .page-media-track{grid-template-rows:repeat(3,160px)}.page-media-layout--collage-four .page-media-item:first-child{grid-row:1/4}.page-media-layout--collage-four .page-media-item:nth-child(2){grid-column:2;grid-row:1}.page-media-layout--collage-four .page-media-item:nth-child(3){grid-column:2;grid-row:2}.page-media-layout--collage-four .page-media-item:nth-child(4){grid-column:2;grid-row:3}.page-media-layout--staggered-left,.page-media-layout--staggered-right{padding-bottom:62px}.page-media-layout--staggered-left .page-media-track,.page-media-layout--staggered-right .page-media-track{position:relative;display:block;min-height:470px}.page-media-layout--staggered-left .page-media-item:nth-child(-n+2),.page-media-layout--staggered-right .page-media-item:nth-child(-n+2){display:block;position:absolute;width:61%;height:390px;min-height:0}.page-media-layout--staggered-left .page-media-item:first-child{left:0;top:0}.page-media-layout--staggered-left .page-media-item:nth-child(2){right:0;top:78px}.page-media-layout--staggered-right .page-media-item:first-child{right:0;top:0}.page-media-layout--staggered-right .page-media-item:nth-child(2){left:0;top:78px}.page-media-layout .page-media-item:only-child{width:100%;position:relative;inset:auto;min-height:320px}
.team-card{flex:1 1 420px;display:grid;grid-template-columns:160px 1fr;gap:26px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}.team-card img,.team-avatar-placeholder{width:160px;height:190px;border-radius:var(--r-md);object-fit:cover;background:linear-gradient(145deg,var(--accent-soft),#c2ddd9);display:grid;place-items:center;color:var(--accent-dark);font-size:34px;font-weight:900}.team-card h3{font-size:1.5rem;margin:4px 0}.team-role{font-weight:800;color:var(--accent-dark)}.team-extra{display:flex;gap:18px;align-items:flex-start;margin-top:22px;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;background:#fff}.team-extra>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);font-size:22px}.team-extra h3{margin:0 0 8px}
.quality-list ul{padding-left:0;list-style:none}.quality-list li{position:relative;padding:10px 0 10px 28px;border-bottom:1px solid var(--line)}.quality-list li:before{content:'✓';position:absolute;left:0;color:var(--accent);font-weight:900}.quality-cert .button{margin-top:16px}.page-metrics-flex{margin-top:40px}.page-metric{flex:1 1 220px;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;background:var(--surface);display:flex;flex-direction:column}.page-metric strong{font-size:2rem}.page-metric span{font-weight:800}.page-metric small{color:var(--muted);margin-top:8px}.metrics-note{margin-top:20px;color:var(--muted)}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:32px}.catalog-card{text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;min-height:250px;display:flex;flex-direction:column;box-shadow:0 12px 36px rgba(11,35,58,.04);transition:.2s ease}.catalog-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card)}.catalog-card h3{font-size:1.35rem;line-height:1.15;margin:14px 0}.catalog-card p{color:var(--ink-soft)}.catalog-domain{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-dark);font-weight:850}.catalog-card .text-link{margin-top:auto;padding-top:20px}
.contact-form-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px;align-items:start}.contact-form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:32px;box-shadow:var(--shadow-card)}.aiwf-contact-form{display:grid;gap:18px}.aiwf-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.aiwf-contact-field{display:grid;gap:8px;font-weight:750;font-size:13px}.aiwf-contact-field input,.aiwf-contact-field select,.aiwf-contact-field textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px 14px;font:inherit;color:var(--ink)}.aiwf-contact-field textarea{resize:vertical}.aiwf-contact-check{display:flex;align-items:flex-start;gap:10px;font-size:13px}.aiwf-contact-help,.aiwf-contact-privacy{font-size:12px;color:var(--muted)}.aiwf-contact-honeypot{position:absolute!important;left:-9999px!important}.aiwf-contact-status{font-size:13px;font-weight:750;color:var(--accent-dark)}
.direct-contact-flex{margin-top:30px;align-items:stretch}.direct-contact-main,.direct-contact-item{flex:1 1 220px;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;background:#fff}.direct-contact-main{flex-basis:320px}.direct-contact-main strong,.direct-contact-main span{display:block}.direct-contact-main span{color:var(--muted);margin:6px 0}.direct-contact-item{text-decoration:none;display:flex;flex-direction:column;justify-content:center;gap:5px}.direct-contact-item>span{color:var(--accent);font-size:20px}.direct-contact-item small{color:var(--muted)}
.longform{background:linear-gradient(180deg,#fff,#fafcfd)}.longform-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:70px;align-items:start}.longform-grid>article{max-width:820px}.longform-title{font-size:clamp(2.6rem,5vw,4.4rem)}.longform-intro{font-size:1.15rem;color:var(--ink-soft);margin-bottom:38px}.longform-body h2{font-size:1.55rem;line-height:1.15;margin:42px 0 14px;padding-top:18px;border-top:1px solid var(--line)}.longform-body h3{font-size:1.05rem;margin:28px 0 8px}.longform-body p,.longform-body li{color:var(--ink-soft)}.longform-body ul{padding-left:20px}.longform-body a{color:var(--accent-dark);font-weight:750}.longform-aside{position:sticky;top:24px}.longform--sitemap .longform-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px}.longform--sitemap .longform-body h2{grid-column:1/-1;margin-top:20px}.longform--sitemap .longform-body ul,.longform--sitemap .longform-body p{margin-top:0}
.page-cta-wrap{padding-top:20px}.page-cta{position:relative;overflow:hidden;border-radius:var(--r-xl);padding:42px 48px;display:flex;align-items:center;justify-content:space-between;gap:40px}.page-cta:after{content:'';position:absolute;width:260px;height:260px;border-radius:50%;right:-70px;top:-130px;border:1px solid rgba(255,255,255,.18)}.page-cta--dark{background:linear-gradient(120deg,#0b233a,#274a61);color:#fff}.page-cta--accent{background:linear-gradient(120deg,var(--accent-dark),var(--accent));color:#fff}.page-cta h2{margin:0 0 8px;font-size:2rem}.page-cta .page-kicker{color:#bfe8d9}.page-cta .button{position:relative;z-index:1;flex:0 0 auto}
.site-footer{background:var(--ink);color:#fff;border:0;padding:54px 0}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:60px}.footer-brand{font-size:1.25rem}.site-footer p{color:#aab9c4;max-width:360px;margin-top:10px}.site-footer nav{display:flex;flex-direction:column;gap:8px}.site-footer nav strong{margin-bottom:8px;color:#b9e8d7}.site-footer nav a,.footer-contact a{color:#dbe4e9;text-decoration:none;font-size:13px}.site-footer nav a:hover,.footer-contact a:hover{text-decoration:underline}.footer-contact{display:flex;flex-direction:column;gap:5px;margin-top:20px}.site-header nav a{font-weight:650}.site-header nav a:hover{color:var(--accent-dark)}
@media(max-width:900px){.page-hero-grid{grid-template-columns:1fr;min-height:0}.page-hero-copy{padding:58px 0 36px}.page-hero-media{min-height:350px;clip-path:polygon(0 8%,100% 0,100% 100%,0 100%)}.page-rich-grid,.contact-form-layout,.longform-grid{grid-template-columns:1fr;gap:36px}.longform-aside{position:relative;top:auto}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.site-header nav{overflow-x:auto;white-space:nowrap;max-width:65vw;padding-bottom:4px}.page-media-layout--feature-left .page-media-track,.page-media-layout--feature-right .page-media-track,.page-media-layout--collage-four .page-media-track{grid-template-columns:1.25fr 1fr}.team-card{grid-template-columns:130px 1fr}.team-card img,.team-avatar-placeholder{width:130px;height:160px}}
@media(max-width:720px){.page-hero-copy{padding-top:42px}.page-hero h1,.longform-title{font-size:clamp(2.25rem,11vw,3.2rem)}.page-hero-media{min-height:270px}.page-card-flex,.team-flex,.direct-contact-flex{gap:12px}.page-info-card{flex-basis:100%;padding:24px}.page-rich-grid{gap:26px}.page-aside,.quality-cert,.longform-aside{padding:24px}.page-media-layout--feature-left .page-media-track,.page-media-layout--feature-right .page-media-track,.page-media-layout--collage-four .page-media-track,.page-media-layout--staggered-left .page-media-track,.page-media-layout--staggered-right .page-media-track{display:flex;min-height:0;gap:10px}.page-media-layout--feature-left .page-media-item,.page-media-layout--feature-right .page-media-item,.page-media-layout--collage-four .page-media-item,.page-media-layout--staggered-left .page-media-item,.page-media-layout--staggered-right .page-media-item{position:relative!important;display:block!important;inset:auto!important;width:100%!important;height:auto!important;min-height:220px;flex:1 1 100%;grid-column:auto!important;grid-row:auto!important}.page-media-layout--staggered-left,.page-media-layout--staggered-right{padding-bottom:0}.team-card{grid-template-columns:1fr}.team-card img,.team-avatar-placeholder{width:100%;height:260px}.aiwf-contact-row{grid-template-columns:1fr}.contact-form-card{padding:22px}.longform--sitemap .longform-body{display:block}.page-cta{padding:32px 26px;align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:first-child{grid-column:auto}.site-header nav{gap:16px;font-size:12px}.header-inner{gap:14px}.brand span:last-child{display:none}}


/* === Axiome 0.7.2 - WordPress semantic typography bridge ================ */
body,.aiwf-runtime{font-family:var(--font-primary,var(--font-sans));}
h1,h2,h3,h4,h5,h6,.brand,.button,.lead,.big{font-family:var(--font-primary,var(--font-sans));}
.eyebrow,.section-kicker,.breadcrumb,.quickfacts span,.definition-row dt,.chapter-no,.chapter-title small,.skill-tag,.eval-card .index,.summary-card .icon,.panel-symbol,.card-symbol,.source-mark,.aiwf-page-kicker,.aiwf-stat-label{font-family:var(--font-secondary,ui-monospace,monospace);}

/* === Axiome 0.7.3 - unified typography system ============================ */
/*
 * One typographic scale for institutional Pages and Prestation templates.
 * WordPress remains the font-family authority through the 0.7.2 bridge;
 * this layer only standardizes semantic roles, sizes, line-heights and weights.
 */
body,.aiwf-runtime{
  font-family:var(--font-primary,var(--font-sans));
  font-size:var(--fs-body);
  font-weight:var(--fw-regular);
  line-height:1.6;
}

h1,h2,h3,h4,h5,h6,.brand,.button,.lead,.page-lead,.big{
  font-family:var(--font-primary,var(--font-sans));
}
h1{font-weight:var(--fw-medium)}
h2,h3,h4,h5,h6{font-weight:var(--fw-semibold)}

/* Shared display scale */
.hero h1,.page-hero h1,.longform-title,.launcher h1{
  font-size:var(--fs-display);
  font-weight:var(--fw-medium);
  line-height:1;
  letter-spacing:-.045em;
}
.lead,.page-lead{
  font-size:var(--fs-lead);
  font-weight:var(--fw-semibold);
  line-height:1.45;
}

/* Shared section hierarchy */
.section h2,.page-rich-grid h2,.page-cta h2{
  font-size:var(--fs-h2);
  font-weight:var(--fw-semibold);
  line-height:1.08;
  letter-spacing:-.035em;
}
.flow-lead h3,.chapter-title h3,.page-info-card h3,.catalog-card h3,.team-card h3{
  font-size:var(--fs-h3);
  font-weight:var(--fw-semibold);
  line-height:1.18;
  letter-spacing:-.02em;
}
.summary-card h3,.panel h3,.preflight-card h3,.source-card h3,.page-aside h3,.quality-cert h3,.longform-aside h3,.team-extra h3,
.skill-card h4,.method-card h4,.special h4,.eval-card h4,.details-body h4{
  font-size:var(--fs-h4);
  font-weight:var(--fw-semibold);
  line-height:1.28;
  letter-spacing:-.01em;
}

/* Body copy: same readable floor in cards and editorial content */
.page-prose,.longform-body,.longform-intro,.section-intro{
  font-size:var(--fs-body);
  font-weight:var(--fw-regular);
  line-height:1.65;
}
.summary-card p,.panel p,.panel li,.preflight-card p,.preflight-card li,
.source-card p,.source-card li,.source-card dd,.skill-card li,.method-card li,
.eval-card p,.eval-card li,.special p,.special-item,.step-card,.objective,
.practical-grid .panel,.org-item strong,.page-info-card p,.catalog-card p,
.team-card p,.team-extra p,.page-aside p,.quality-cert p,.direct-contact-main,
.direct-contact-item,.aiwf-contact-field,.aiwf-contact-check{
  font-size:var(--fs-small);
  font-weight:var(--fw-regular);
  line-height:1.58;
}
.quickfacts strong,.definition-row dd,.accordion summary,.details-body,.flow-nav a,.flow-nav-wide a{
  font-size:var(--fs-small);
  font-weight:var(--fw-semibold);
  line-height:1.45;
}

/* One secondary-font role for all micro-labels, on Pages and Prestations */
.eyebrow,.section-kicker,.page-kicker,.breadcrumb,.quickfacts span,
.definition-row dt,.chapter-no,.chapter-title small,.skill-tag,.eval-card .index,
.summary-card .icon,.panel-symbol,.card-symbol,.source-mark,.aiwf-page-kicker,
.aiwf-stat-label,.catalog-domain,.preflight-no,.org-item span,.flow-nav>strong,
.flow-nav em,.flow-nav-wide>strong,.flow-nav-wide em,.step-marker,.page-card-index,
.page-metric small,.direct-contact-item small,.team-role{
  font-family:var(--font-secondary,var(--font-primary));
}
.eyebrow,.section-kicker,.page-kicker,.quickfacts span,.definition-row dt,
.chapter-title small,.skill-tag,.catalog-domain,.org-item span,.flow-nav>strong,
.flow-nav-wide>strong,.page-metric small{
  font-size:var(--fs-label);
  font-weight:var(--fw-bold);
  line-height:1.25;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.breadcrumb,.eval-card .index,.flow-nav em,.flow-nav-wide em,.step-marker,
.page-card-index,.summary-card .icon,.preflight-no,.direct-contact-item small,.team-role{
  font-size:var(--fs-meta);
  font-weight:var(--fw-bold);
}

/* Decorative numbering stays expressive, but no longer uses synthetic 850/900 weights. */
.chapter-no{
  font-size:clamp(2.8rem,4vw,3.35rem);
  font-weight:var(--fw-extrabold);
  line-height:.88;
  letter-spacing:-.07em;
}
.metric strong,.page-metric strong,.big{
  font-weight:var(--fw-bold);
}

/* Actions and utility links */
.button,.summary-link,.text-link,.catalog-card .text-link,.practical-card a{
  font-size:.8125rem;
  font-weight:var(--fw-bold);
  line-height:1.2;
}
.brand{font-weight:var(--fw-extrabold)}
.site-header nav,.site-footer nav a,.footer-contact a{font-size:.8125rem}
.site-header nav a,.site-footer nav strong{font-weight:var(--fw-semibold)}

/* Avoid unsupported/synthetic variable weights inherited from older prototypes. */
.flow-nav a,.objective,.definition-row dd,.accordion summary,.aiwf-contact-status{
  font-weight:var(--fw-semibold);
}
.summary-link,.flow-banner span,.skill-tag,.preflight-no,.eval-card .index,
.step-marker,.objective:before,.method-card li:before,.quality-list li:before{
  font-weight:var(--fw-bold);
}

@media(max-width:720px){
  .hero h1,.page-hero h1,.longform-title,.launcher h1{
    font-size:clamp(2.35rem,10vw,3.2rem);
    line-height:1.02;
  }
  .lead,.page-lead{font-size:1.05rem}
  .chapter-no{font-size:2.5rem}
}
.longform-body a,.page-metric span{font-weight:var(--fw-bold)}
.panel-symbol,.card-symbol,.page-aside-mark,.quality-badge,.longform-aside>span:first-child,.team-card img,.team-avatar-placeholder{font-weight:var(--fw-extrabold)}
.aiwf-contact-field>span{font-weight:var(--fw-semibold)}

/* ======================================================================
   Axiome 0.8.0 — "Axiome Current" institutional-page art direction
   Pages carry the brand expression; prestation templates remain calm.
   ====================================================================== */

/* Shared motion + page surface language */
@keyframes axiome-orbit{to{transform:rotate(360deg)}}
@keyframes axiome-drift{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(12px,-14px,0) rotate(4deg)}}
@keyframes axiome-pulse{0%,100%{opacity:.42;transform:scale(.98)}50%{opacity:.8;transform:scale(1.04)}}
@keyframes axiome-shimmer{0%{transform:translateX(-125%) rotate(18deg)}100%{transform:translateX(260%) rotate(18deg)}}
@keyframes axiome-reveal{from{opacity:0;transform:translateY(34px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes axiome-reveal-side{from{opacity:0;transform:translateX(40px) rotate(1.5deg)}to{opacity:1;transform:translateX(0) rotate(0)}}

/* Header becomes a light glass navigation layer on pages and prestations. */
.site-header{
  position:sticky;top:0;z-index:30;
  background:rgba(255,255,255,.86);
  border-bottom:1px solid rgba(220,230,236,.82);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  box-shadow:0 6px 26px rgba(11,35,58,.035);
}
.site-header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 4%,rgba(38,163,120,.55) 38%,rgba(141,201,215,.65) 64%,transparent 96%);opacity:.38}
.brand-mark{transition:transform var(--motion-medium) var(--ease-brand),background var(--motion-fast) ease,color var(--motion-fast) ease}
.brand:hover .brand-mark{transform:rotate(-8deg) translateY(-2px);background:var(--ink);color:#fff}
.site-header nav a{position:relative;padding:8px 0;transition:color var(--motion-fast) ease}
.site-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--brand-sky));transition:right var(--motion-medium) var(--ease-brand)}
.site-header nav a:hover:after,.site-header nav a:focus-visible:after{right:0}

/* Hero: the memorable brand moment. */
.page-hero{isolation:isolate;min-height:600px;background:
  radial-gradient(circle at 16% 15%,rgba(223,244,236,.88),transparent 26%),
  radial-gradient(circle at 78% 18%,rgba(141,201,215,.20),transparent 34%),
  linear-gradient(180deg,#fff 0%,#fbfdfd 66%,#fff 100%)}
.page-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(180deg,transparent,rgba(241,246,248,.72));z-index:-2;pointer-events:none}
.page-hero-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.page-hero-atmosphere:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(11,35,58,.11) 1px,transparent 1.2px);background-size:24px 24px;mask-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent 46%,rgba(0,0,0,.18));opacity:.23}
.page-hero-orbit{position:absolute;border:1px solid rgba(38,163,120,.16);border-radius:50%;animation:axiome-orbit var(--motion-slow) linear infinite}
.page-hero-orbit:before,.page-hero-orbit:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 8px rgba(38,163,120,.10)}
.page-hero-orbit--a{width:420px;height:420px;left:-255px;top:92px;animation-duration:22s}.page-hero-orbit--a:before{right:28px;top:78px}.page-hero-orbit--a:after{left:58px;bottom:40px;background:var(--brand-sky);box-shadow:0 0 0 8px rgba(141,201,215,.12)}
.page-hero-orbit--b{width:620px;height:620px;right:-310px;top:-250px;border-color:rgba(141,201,215,.22);animation-direction:reverse;animation-duration:30s}.page-hero-orbit--b:before{left:84px;bottom:92px;background:var(--brand-sky)}.page-hero-orbit--b:after{right:92px;top:100px}
.page-hero-current{position:absolute;width:520px;height:130px;left:8%;bottom:18px;border:1px solid rgba(38,163,120,.13);border-radius:50%;transform:rotate(-7deg);filter:blur(.1px)}
.page-hero-current:after{content:"";position:absolute;inset:18px -18px -18px 28px;border:1px solid rgba(141,201,215,.18);border-radius:50%}
.page-hero-grid{position:relative;z-index:2;min-height:600px;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:30px}
.page-hero-copy{position:relative;padding:92px 48px 84px 0;z-index:2}
.page-hero-copy:after{content:"";position:absolute;left:-24px;top:94px;width:4px;height:78px;border-radius:99px;background:linear-gradient(180deg,var(--accent),var(--brand-sky));box-shadow:0 0 30px rgba(38,163,120,.18)}
.page-kicker{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;position:relative}
.page-kicker:before{content:"";width:9px;height:9px;flex:0 0 auto;border-radius:3px;background:var(--accent);transform:rotate(45deg);box-shadow:0 0 0 5px rgba(38,163,120,.10)}
.page-hero h1{max-width:780px;text-wrap:balance;text-shadow:0 1px 0 rgba(255,255,255,.75)}
.page-lead{max-width:690px}
.page-actions{gap:10px}
.page-actions .button{min-height:48px;padding-inline:21px;border-radius:12px;transition:transform var(--motion-fast) var(--ease-brand),box-shadow var(--motion-fast) ease,border-color var(--motion-fast) ease}
.page-actions .button.primary{background:linear-gradient(135deg,var(--ink),#173e59);box-shadow:0 12px 30px rgba(11,35,58,.16)}
.page-actions .button.primary:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(11,35,58,.22)}
.page-actions .button.secondary{background:rgba(255,255,255,.72);backdrop-filter:blur(12px)}
.page-actions .button.secondary:hover{transform:translateY(-3px);border-color:rgba(38,163,120,.45);box-shadow:0 14px 30px rgba(11,35,58,.08)}
.page-hero-media{align-self:center;position:relative;min-height:500px;margin:40px 0 40px 10px;clip-path:polygon(12% 0,100% 0,100% 84%,88% 100%,0 100%,6% 66%,0 30%);background:linear-gradient(145deg,var(--brand-foam),var(--brand-sky) 48%,var(--brand-ocean));filter:drop-shadow(0 28px 50px rgba(11,35,58,.18));isolation:isolate}
.page-hero-media:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.25),transparent 24%,transparent 75%,rgba(11,35,58,.08));mix-blend-mode:soft-light}
.page-hero-media:after{content:"";position:absolute;z-index:3;top:-35%;left:-30%;width:28%;height:180%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:rotate(18deg);animation:axiome-shimmer 8s ease-in-out infinite;pointer-events:none}
.page-hero-media img{transition:transform 1.2s var(--ease-brand),filter .6s ease;transform:scale(1.01)}
.page-hero:hover .page-hero-media img{transform:scale(1.045);filter:saturate(1.04)}
.page-hero-media-ring{position:absolute;z-index:4;display:block;border:1px solid rgba(255,255,255,.42);border-radius:50%;pointer-events:none;mix-blend-mode:soft-light}
.page-hero-media-ring--a{width:240px;height:240px;right:-85px;top:38px;animation:axiome-pulse 7s ease-in-out infinite}.page-hero-media-ring--b{width:140px;height:140px;left:18%;bottom:-55px;animation:axiome-pulse 8.5s ease-in-out -2s infinite}
.page-visual-placeholder{background:linear-gradient(145deg,rgba(255,255,255,.52),rgba(238,248,245,.34));border-color:rgba(255,255,255,.52);backdrop-filter:blur(8px)}

/* Section rhythm: page sections feel layered rather than stacked rectangles. */
.page-card-section,.page-rich-section,.page-image-break,.page-cta-wrap,.contact-form-layout{position:relative;isolation:isolate}
.page-card-section--surface{overflow:hidden;background:
  radial-gradient(circle at 84% 12%,rgba(141,201,215,.15),transparent 28%),
  radial-gradient(circle at 8% 84%,rgba(38,163,120,.09),transparent 24%),
  linear-gradient(180deg,var(--surface) 0%,#fff 100%)}
.page-card-section--surface:before{content:"";position:absolute;right:-120px;top:70px;width:320px;height:320px;border:1px solid rgba(38,163,120,.10);border-radius:50%;box-shadow:0 0 0 38px rgba(38,163,120,.025),0 0 0 78px rgba(141,201,215,.028);pointer-events:none}
.page-card-flex{position:relative;gap:20px;margin-top:8px}
.page-info-card{overflow:hidden;border-color:rgba(220,230,236,.86);box-shadow:var(--shadow-soft);transition:transform var(--motion-medium) var(--ease-brand),box-shadow var(--motion-medium) var(--ease-brand),border-color var(--motion-fast) ease;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(248,250,252,.92))}
.page-info-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),var(--brand-sky),transparent 82%);transform:scaleX(.36);transform-origin:left;transition:transform var(--motion-medium) var(--ease-brand)}
.page-info-card:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-95px;bottom:-95px;background:radial-gradient(circle,rgba(38,163,120,.12),rgba(38,163,120,0) 68%);transition:transform var(--motion-slow) linear}
.page-info-card:nth-child(2){transform:translateY(14px)}
.page-info-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-float);border-color:rgba(38,163,120,.22)}
.page-info-card:nth-child(2):hover{transform:translateY(5px)}
.page-info-card:hover:before{transform:scaleX(1)}
.page-info-card:hover:after{transform:scale(1.35)}
.page-card-index{position:relative;border:1px solid rgba(38,163,120,.14);box-shadow:0 8px 24px rgba(38,163,120,.10)}
.page-info-card h3{text-wrap:balance}

/* Rich editorial blocks gain an offset editorial object / orbit. */
.page-rich-section{overflow:hidden}
.page-rich-section--plain{background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%)}
.page-rich-section--accent-soft{background:
  radial-gradient(circle at 76% 38%,rgba(141,201,215,.19),transparent 30%),
  linear-gradient(125deg,var(--accent-soft),#f8fcfa 48%,#eef5f7)}
.page-rich-ambient{position:absolute;right:-90px;top:50%;width:270px;height:270px;border-radius:50%;border:1px solid rgba(38,163,120,.10);transform:translateY(-50%);box-shadow:0 0 0 34px rgba(38,163,120,.025),0 0 0 72px rgba(141,201,215,.035);pointer-events:none}
.page-rich-main{position:relative;z-index:2}
.page-rich-main:before{content:"";position:absolute;width:68px;height:4px;left:0;top:-20px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--brand-sky))}
.page-aside{overflow:hidden;border-color:rgba(220,230,236,.84);background:linear-gradient(150deg,rgba(255,255,255,.96),rgba(241,246,248,.90));box-shadow:var(--shadow-float);transform:rotate(1.2deg);transition:transform var(--motion-medium) var(--ease-brand),box-shadow var(--motion-medium) ease}
.page-aside:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(11,35,58,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(11,35,58,.025) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(135deg,#000,transparent 64%);pointer-events:none}
.page-aside:hover{transform:rotate(0) translateY(-5px);box-shadow:var(--shadow-deep)}
.page-aside-mark{position:relative;z-index:2;box-shadow:0 10px 28px rgba(38,163,120,.14)}
.page-aside-orbit{position:absolute;width:150px;height:150px;border-radius:50%;right:-72px;bottom:-76px;border:1px solid rgba(38,163,120,.16);box-shadow:0 0 0 22px rgba(38,163,120,.035)}

/* Media blocks look deliberately art-directed even before photography is final. */
.page-image-break{overflow:hidden}
.page-image-break:before{content:"";position:absolute;left:6%;right:6%;top:48%;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);z-index:-1}
.page-media-layout{perspective:1200px}
.page-media-item{box-shadow:var(--shadow-float);border:1px solid rgba(255,255,255,.62);transition:transform .7s var(--ease-brand),box-shadow .7s var(--ease-brand),filter .7s ease}
.page-media-item:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(11,35,58,.04);pointer-events:none}
.page-media-item:hover{transform:translateY(-7px) rotateX(1.5deg);box-shadow:var(--shadow-deep);filter:saturate(1.04)}
.page-image-placeholder{position:relative;overflow:hidden;border-color:rgba(38,163,120,.30);background:
  radial-gradient(circle at 22% 28%,rgba(255,255,255,.8),transparent 25%),
  linear-gradient(135deg,#f3faf7,#e2f2ef 45%,#e4eef2)}
.page-image-placeholder:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.72);border-radius:calc(var(--r-xl) - 8px)}
.page-image-placeholder:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;bottom:-110px;border:1px solid rgba(38,163,120,.18);box-shadow:0 0 0 32px rgba(38,163,120,.035)}
.page-image-placeholder-icon{position:relative;z-index:2;animation:axiome-drift 7s ease-in-out infinite}

/* Catalog / team / quality / contact surfaces get stronger brand presence. */
.catalog-grid{gap:20px}
.catalog-card{position:relative;overflow:hidden;border-color:rgba(220,230,236,.86);background:linear-gradient(155deg,#fff 0%,#fbfcfd 100%);box-shadow:var(--shadow-soft);transition:transform var(--motion-medium) var(--ease-brand),box-shadow var(--motion-medium) ease,border-color var(--motion-fast) ease}
.catalog-card:before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-88px;top:-78px;background:radial-gradient(circle,rgba(141,201,215,.18),transparent 70%)}
.catalog-card:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),var(--brand-sky));transform:scaleX(0);transform-origin:left;transition:transform var(--motion-medium) var(--ease-brand)}
.catalog-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-float);border-color:rgba(38,163,120,.22)}
.catalog-card:hover:after{transform:scaleX(1)}
.catalog-domain{display:inline-flex;width:max-content;padding:6px 9px;border-radius:999px;background:var(--accent-soft);border:1px solid rgba(38,163,120,.12)}
.catalog-card .text-link{display:inline-flex;align-items:center;gap:7px;color:var(--accent-dark)}
.team-card{position:relative;overflow:hidden;border-color:rgba(220,230,236,.82);box-shadow:var(--shadow-soft);transition:transform var(--motion-medium) var(--ease-brand),box-shadow var(--motion-medium) ease}
.team-card:after{content:"";position:absolute;right:-110px;bottom:-120px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(38,163,120,.11),transparent 66%);pointer-events:none}
.team-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-float)}
.team-card img,.team-avatar-placeholder{position:relative;z-index:1;box-shadow:0 14px 36px rgba(11,35,58,.10);clip-path:polygon(0 0,100% 0,100% 88%,85% 100%,0 100%)}
.team-extra{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff,var(--brand-foam));box-shadow:var(--shadow-soft)}
.quality-cert{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 0%,var(--brand-foam) 100%);border-color:rgba(38,163,120,.18)}
.quality-cert:after{content:"Q";position:absolute;right:-18px;bottom:-46px;font:800 180px/.8 var(--font-secondary);color:rgba(38,163,120,.055);pointer-events:none}
.page-metric{box-shadow:var(--shadow-soft);background:linear-gradient(150deg,#fff,var(--surface));border-color:rgba(220,230,236,.84)}
.contact-form-card{position:relative;overflow:hidden;border-color:rgba(38,163,120,.16);box-shadow:var(--shadow-float);background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(248,250,252,.96))}
.contact-form-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--accent),var(--brand-sky),var(--ink))}
.contact-form-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-140px;bottom:-150px;border:1px solid rgba(38,163,120,.16);box-shadow:0 0 0 30px rgba(38,163,120,.025);pointer-events:none}
.aiwf-contact-field input,.aiwf-contact-field select,.aiwf-contact-field textarea{transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,transform var(--motion-fast) ease;background var(--motion-fast) ease}
.aiwf-contact-field input:focus,.aiwf-contact-field select:focus,.aiwf-contact-field textarea:focus{outline:0;border-color:rgba(38,163,120,.58);box-shadow:0 0 0 4px rgba(38,163,120,.10);background:#fff;transform:translateY(-1px)}
.direct-contact-item,.direct-contact-main{position:relative;overflow:hidden;box-shadow:var(--shadow-soft);transition:transform var(--motion-fast) var(--ease-brand),box-shadow var(--motion-fast) ease,border-color var(--motion-fast) ease}
.direct-contact-item:after,.direct-contact-main:after{content:"";position:absolute;right:-55px;bottom:-70px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(141,201,215,.18),transparent 68%)}
.direct-contact-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-float);border-color:rgba(38,163,120,.22)}

/* Long-form remains sober, but editorial rather than generic. */
.longform{position:relative;overflow:hidden;background:
  radial-gradient(circle at 92% 10%,rgba(141,201,215,.11),transparent 22%),
  linear-gradient(180deg,#fff,#fafcfd)}
.longform:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--accent),var(--brand-sky),transparent 84%)}
.longform-body h2{position:relative;padding-left:22px}
.longform-body h2:before{content:"";position:absolute;left:0;top:26px;width:8px;height:8px;border-radius:2px;background:var(--accent);transform:rotate(45deg);box-shadow:0 0 0 5px rgba(38,163,120,.09)}
.longform-aside{box-shadow:var(--shadow-soft);background:linear-gradient(145deg,#fff,var(--surface))}

/* CTA becomes a brand signature instead of a dark rectangle. */
.page-cta{min-height:220px;border:1px solid rgba(255,255,255,.10);box-shadow:var(--shadow-deep);isolation:isolate;background-size:160% 160%;animation:axiome-cta-aurora 13s ease-in-out infinite alternate}
@keyframes axiome-cta-aurora{0%{background-position:0% 50%}100%{background-position:100% 50%}}
.page-cta--dark{background-image:radial-gradient(circle at 80% 25%,rgba(141,201,215,.28),transparent 28%),linear-gradient(115deg,#0b233a 0%,#163e58 48%,#254d5f 72%,#0b233a 100%)}
.page-cta--accent{background-image:radial-gradient(circle at 80% 25%,rgba(255,255,255,.18),transparent 24%),linear-gradient(115deg,var(--accent-dark),var(--accent),#2e8f8f,var(--accent-dark))}
.page-cta:before{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(circle,rgba(255,255,255,.15) 1px,transparent 1.3px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent 30%,#000 100%);opacity:.28}
.page-cta-orbit{position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%;pointer-events:none;animation:axiome-orbit 24s linear infinite}
.page-cta-orbit--a{width:300px;height:300px;right:-70px;top:-140px}.page-cta-orbit--b{width:180px;height:180px;right:120px;bottom:-120px;animation-direction:reverse;animation-duration:18s}
.page-cta .button.light{min-height:48px;border-radius:12px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);transition:transform var(--motion-fast) var(--ease-brand),background var(--motion-fast) ease,border-color var(--motion-fast) ease}
.page-cta .button.light:hover{transform:translateY(-3px);background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.78)}

/* Footer becomes a closing visual scene. */
.site-footer{position:relative;overflow:hidden;background:
  radial-gradient(circle at 16% 0%,rgba(38,163,120,.20),transparent 30%),
  radial-gradient(circle at 82% 120%,rgba(141,201,215,.18),transparent 36%),
  linear-gradient(135deg,#081d31,#0b233a 60%,#102d43)}
.site-footer:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.13) 1px,transparent 1.3px);background-size:26px 26px;mask-image:linear-gradient(115deg,transparent 10%,#000 70%);opacity:.22}
.footer-grid{position:relative;z-index:1}
.footer-brand{display:inline-flex;align-items:center;gap:10px}.footer-brand:before{content:"";width:22px;height:22px;border:2px solid var(--accent);clip-path:polygon(50% 0,100% 100%,0 100%)}
.site-footer nav a{position:relative;width:max-content;max-width:100%}.site-footer nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:1px;background:var(--brand-sky);transition:right var(--motion-medium) var(--ease-brand)}.site-footer nav a:hover:after{right:0}

/* Progressive scroll reveal: modern browsers only; content is always visible otherwise. */
@supports (animation-timeline:view()){
  .page-card-section .page-info-card,
  .page-rich-section .page-rich-main,
  .page-rich-section .page-aside,
  .page-image-break .page-media-layout,
  .catalog-card,
  .team-card,
  .quality-cert,
  .page-metric,
  .contact-form-card,
  .direct-contact-item,
  .direct-contact-main,
  .page-cta{
    animation-name:axiome-reveal;
    animation-duration:1ms;
    animation-fill-mode:both;
    animation-timeline:view();
    animation-range:entry 8% cover 34%;
  }
  .page-rich-section .page-aside{animation-name:axiome-reveal-side}
  .page-info-card:nth-child(2),.catalog-card:nth-child(2n){animation-range:entry 12% cover 38%}
  .page-info-card:nth-child(3),.catalog-card:nth-child(3n){animation-range:entry 16% cover 42%}
}

@media(max-width:1024px){
  .page-hero{min-height:0}.page-hero-grid{grid-template-columns:1fr;gap:0;min-height:0}.page-hero-copy{padding:72px 0 42px}.page-hero-copy:after{left:-14px;top:74px;height:64px}.page-hero-media{margin:0 0 44px;min-height:380px;clip-path:polygon(0 9%,100% 0,100% 88%,92% 100%,0 100%)}
  .page-hero-orbit--b{right:-420px}.page-info-card:nth-child(2){transform:none}
}
@media(max-width:720px){
  .site-header{backdrop-filter:blur(14px) saturate(135%)}
  .page-hero-copy{padding:54px 0 32px}.page-hero-copy:after{display:none}.page-hero-current{display:none}.page-hero-orbit--a{left:-330px}.page-hero-media{min-height:285px;margin-bottom:30px;clip-path:polygon(0 7%,100% 0,100% 91%,90% 100%,0 100%)}
  .page-hero-media-ring--a{width:180px;height:180px}.page-info-card{padding:25px}.page-rich-ambient{opacity:.55}.page-aside{transform:none}.page-cta{min-height:0}.page-cta-orbit--a{right:-160px}.page-cta-orbit--b{display:none}
  .longform:before{width:3px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .page-hero-orbit,.page-hero-media:after,.page-hero-media-ring,.page-image-placeholder-icon,.page-cta,.page-cta-orbit{animation:none!important}
  .page-hero-media img,.page-actions .button,.page-info-card,.page-aside,.page-media-item,.catalog-card,.team-card,.direct-contact-item,.direct-contact-main,.page-cta .button.light,.site-header nav a:after,.site-footer nav a:after{transition:none!important}
  .page-info-card:nth-child(2){transform:none}
  @supports (animation-timeline:view()){
    .page-card-section .page-info-card,.page-rich-section .page-rich-main,.page-rich-section .page-aside,.page-image-break .page-media-layout,.catalog-card,.team-card,.quality-cert,.page-metric,.contact-form-card,.direct-contact-item,.direct-contact-main,.page-cta{animation:none!important;opacity:1!important;transform:none!important}
  }
}

/* ======================================================================
   Axiome 0.8.1 — homepage signature hero + standard header logo slot
   ====================================================================== */

/* Header branding is now a plain media slot. The artwork itself belongs to WP/AIWF, not CSS. */
.brand{min-width:0;max-width:250px;min-height:38px;display:flex;align-items:center}
.brand-logo{display:block;width:auto;height:auto;max-width:220px;max-height:42px;object-fit:contain;object-position:left center}
.brand-fallback{display:flex;align-items:baseline;gap:7px;white-space:nowrap;font-family:var(--font-primary);color:var(--ink)}
.brand-fallback strong{font-size:.92rem;font-weight:var(--fw-extrabold);letter-spacing:-.02em}
.brand-fallback small{display:inline;font:var(--fw-bold) var(--fs-label)/1 var(--font-secondary);letter-spacing:.11em;color:var(--accent-dark);margin:0;text-transform:uppercase}

/* Homepage-only hero: designed for the actual amount of editorial copy rather than a generic marketing hero. */
.home-hero-signature{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:690px;
  background:
    radial-gradient(circle at 8% 10%,rgba(223,244,236,.95),transparent 25%),
    radial-gradient(circle at 83% 18%,rgba(141,201,215,.24),transparent 32%),
    radial-gradient(circle at 66% 88%,rgba(52,95,115,.08),transparent 30%),
    linear-gradient(180deg,#fff 0%,#fbfdfd 64%,#f7fbfa 100%);
}
.home-hero-signature:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--line) 18%,rgba(38,163,120,.38) 52%,var(--line) 82%,transparent)}
.home-hero-atmosphere{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.home-hero-atmosphere:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(11,35,58,.10) 1px,transparent 1.2px);background-size:26px 26px;mask-image:linear-gradient(100deg,rgba(0,0,0,.45),transparent 40%,rgba(0,0,0,.16) 78%,transparent);opacity:.20}
.home-ghost-word{position:absolute;right:-.04em;bottom:-.23em;font:var(--fw-extrabold) clamp(9rem,19vw,20rem)/.76 var(--font-primary);letter-spacing:-.085em;color:rgba(11,35,58,.026);white-space:nowrap;user-select:none}
.home-current{position:absolute;border:1px solid rgba(38,163,120,.14);border-radius:50%;transform:rotate(-8deg)}
.home-current:after{content:"";position:absolute;inset:18px -26px -18px 34px;border:1px solid rgba(141,201,215,.20);border-radius:50%}
.home-current--a{width:560px;height:145px;left:-120px;bottom:18px}.home-current--b{width:420px;height:115px;right:-90px;top:78px;transform:rotate(15deg);border-color:rgba(141,201,215,.22)}
.home-orbit{position:absolute;border:1px solid rgba(38,163,120,.15);border-radius:50%;animation:axiome-orbit 26s linear infinite}
.home-orbit:before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 8px rgba(38,163,120,.09)}
.home-orbit--a{width:390px;height:390px;left:-245px;top:72px}.home-orbit--a:before{right:34px;top:70px}
.home-orbit--b{width:640px;height:640px;right:-360px;bottom:-350px;border-color:rgba(141,201,215,.20);animation-direction:reverse;animation-duration:34s}.home-orbit--b:before{left:72px;top:115px;background:var(--brand-sky);box-shadow:0 0 0 8px rgba(141,201,215,.11)}

.home-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(380px,.82fr);gap:clamp(34px,5vw,76px);align-items:center;min-height:690px}
.home-hero-copy{position:relative;padding:72px 0 62px;min-width:0}
.home-hero-copy:before{content:"";position:absolute;left:-24px;top:76px;width:4px;height:84px;border-radius:999px;background:linear-gradient(180deg,var(--accent),var(--brand-sky));box-shadow:0 0 26px rgba(38,163,120,.17)}
.home-hero-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px}
.home-hero-kicker:before{content:"";width:9px;height:9px;border-radius:3px;background:var(--accent);transform:rotate(45deg);box-shadow:0 0 0 6px rgba(38,163,120,.09)}
.home-hero-signature h1{max-width:760px;margin:0;font-size:clamp(3rem,5.25vw,5.15rem);font-weight:var(--fw-medium);line-height:.94;letter-spacing:-.058em;text-wrap:balance;color:var(--ink)}
.home-hero-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 28px;max-width:760px;margin-top:30px;color:var(--ink-soft)}
.home-hero-intro p{margin:0;font-size:clamp(.88rem,.14vw + .85rem,.96rem);line-height:1.55}
.home-hero-intro p:first-child{grid-column:1/-1;max-width:660px;font-size:var(--fs-lead);font-weight:var(--fw-semibold);line-height:1.46;color:var(--ink)}
.home-hero-intro p:nth-child(n+2){padding-top:14px;border-top:1px solid rgba(220,230,236,.92)}
.home-hero-actions{margin-top:26px}
.home-hero-actions .button{min-height:48px;padding-inline:22px;border-radius:12px;box-shadow:none;transition:transform var(--motion-fast) var(--ease-brand),box-shadow var(--motion-fast) ease,border-color var(--motion-fast) ease}
.home-hero-actions .button.primary{box-shadow:0 10px 26px rgba(11,35,58,.14)}
.home-hero-actions .button:hover{transform:translateY(-3px)}
.home-hero-actions .button.primary:hover{box-shadow:0 15px 34px rgba(11,35,58,.20)}
.home-hero-signal{display:flex;align-items:center;gap:7px;width:190px;height:18px;margin-top:30px;opacity:.64}
.home-hero-signal span{display:block;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.home-hero-signal span:nth-child(2){background:var(--brand-sky);opacity:.75}.home-hero-signal span:nth-child(3){background:var(--ink);opacity:.25}
.home-hero-signal i{display:block;flex:1;height:1px;background:linear-gradient(90deg,rgba(38,163,120,.5),transparent)}

.home-hero-stage{position:relative;min-height:570px;display:grid;place-items:center;perspective:1200px}
.home-stage-plane{position:absolute;display:block;pointer-events:none;clip-path:polygon(13% 0,100% 0,100% 80%,86% 100%,0 100%,7% 65%,0 30%)}
.home-stage-plane--back{width:92%;height:76%;right:-2%;top:7%;background:linear-gradient(145deg,rgba(141,201,215,.22),rgba(38,163,120,.09));transform:translate3d(24px,-14px,-40px) rotate(2deg);filter:blur(.1px);box-shadow:0 28px 70px rgba(11,35,58,.06)}
.home-stage-plane--mid{width:91%;height:75%;right:5%;top:15%;border:1px solid rgba(38,163,120,.20);background:rgba(255,255,255,.28);transform:translate3d(-18px,20px,-20px) rotate(-2.5deg);backdrop-filter:blur(3px)}
.home-hero-media{position:relative;z-index:3;width:min(94%,520px);height:470px;overflow:hidden;clip-path:polygon(11% 0,100% 0,100% 81%,87% 100%,0 100%,7% 66%,0 30%);background:linear-gradient(145deg,var(--brand-foam),var(--brand-sky) 50%,var(--brand-ocean));filter:drop-shadow(0 34px 58px rgba(11,35,58,.19));transform:translateZ(0)}
.home-hero-media:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.28),transparent 23%,transparent 70%,rgba(11,35,58,.10));mix-blend-mode:soft-light}
.home-hero-media:after{content:"";position:absolute;top:-35%;left:-40%;z-index:3;width:28%;height:180%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);transform:rotate(18deg);animation:axiome-shimmer 8.5s ease-in-out infinite;pointer-events:none}
.home-hero-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-brand),filter .55s ease;transform:scale(1.015)}
.home-hero-signature:hover .home-hero-media img{transform:scale(1.045);filter:saturate(1.035)}
.home-visual-placeholder{position:absolute;inset:28px;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed rgba(255,255,255,.62);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.54),rgba(238,248,245,.28));backdrop-filter:blur(8px);color:var(--ink-soft)}
.home-visual-placeholder:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-70px;top:-50px;border:1px solid rgba(255,255,255,.30);box-shadow:0 0 0 30px rgba(255,255,255,.035)}
.home-visual-placeholder span{display:grid;place-items:center;width:50px;height:50px;margin-bottom:14px;border-radius:50%;background:#fff;color:var(--accent);font-size:20px;box-shadow:0 10px 28px rgba(11,35,58,.10)}
.home-visual-placeholder strong{font-size:.94rem;font-weight:var(--fw-bold);color:var(--ink)}.home-visual-placeholder small{margin-top:5px;color:var(--muted)}
.home-stage-axis{position:absolute;z-index:5;right:0;bottom:68px;width:170px;height:1px;background:linear-gradient(90deg,var(--accent),transparent);transform:rotate(-12deg);transform-origin:right center;opacity:.7}
.home-stage-node{position:absolute;z-index:6;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 9px rgba(38,163,120,.10),0 9px 24px rgba(11,35,58,.10);animation:axiome-pulse 6.5s ease-in-out infinite}
.home-stage-node--a{right:2%;top:22%}.home-stage-node--b{left:4%;bottom:18%;width:8px;height:8px;background:var(--brand-sky);box-shadow:0 0 0 8px rgba(141,201,215,.11);animation-delay:-2.4s}

@media(max-width:1100px){
  .home-hero-signature{min-height:0}.home-hero-grid{grid-template-columns:1fr;gap:10px;min-height:0}.home-hero-copy{padding:66px 0 30px}.home-hero-copy:before{left:-14px;top:70px;height:70px}.home-hero-signature h1{max-width:850px;font-size:clamp(3rem,7vw,4.8rem)}.home-hero-intro{max-width:850px}.home-hero-stage{min-height:430px;margin-bottom:44px}.home-hero-media{width:min(88%,760px);height:400px}.home-stage-plane--back,.home-stage-plane--mid{width:min(88%,760px);right:auto;left:50%;transform:translateX(-48%) rotate(2deg)}.home-stage-plane--mid{transform:translateX(-54%) rotate(-2deg)}.home-ghost-word{font-size:26vw}
}
@media(max-width:720px){
  .brand{max-width:170px}.brand-logo{max-width:165px;max-height:34px}.brand-fallback small{display:none}
  .home-hero-copy{padding:48px 0 28px}.home-hero-copy:before{display:none}.home-hero-signature h1{font-size:clamp(2.7rem,13vw,3.8rem);line-height:.96}.home-hero-intro{grid-template-columns:1fr;gap:0;margin-top:24px}.home-hero-intro p:first-child{grid-column:auto;font-size:1.05rem}.home-hero-intro p:nth-child(n+2){padding-top:13px;margin-top:13px}.home-hero-actions{display:flex;flex-direction:column;align-items:stretch}.home-hero-signal{margin-top:22px}.home-hero-stage{min-height:310px;margin-bottom:30px}.home-hero-media{width:100%;height:300px;clip-path:polygon(0 7%,100% 0,100% 90%,90% 100%,0 100%)}.home-stage-plane{display:none}.home-stage-axis{display:none}.home-stage-node--a{right:5%;top:12%}.home-stage-node--b{left:5%;bottom:10%}.home-current--a{left:-320px}.home-current--b{right:-280px}.home-orbit--a{left:-330px}.home-orbit--b{display:none}.home-ghost-word{font-size:32vw;bottom:-.08em;right:-.05em}.home-visual-placeholder{inset:20px;border-radius:20px}
}
@media(prefers-reduced-motion:reduce){
  .home-orbit,.home-stage-node,.home-hero-media:after{animation:none!important}.home-hero-media img,.home-hero-actions .button{transition:none!important}
}
.brand-accessible-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Axiome 0.10 - VAE catalogue: four clear family signatures, no fixed-column orphan cards. */
.vae-catalogue{position:relative;overflow:hidden;background:linear-gradient(180deg,#f6f9fb,#fff)}
.vae-catalogue:before{content:"";position:absolute;right:-10%;top:0;width:50%;height:540px;pointer-events:none;background:radial-gradient(circle,rgba(26,161,123,.09),transparent 68%)}
.vae-catalogue-head{position:relative;display:flex;justify-content:space-between;gap:32px;align-items:start}
.vae-catalogue-head .section-intro{margin:0;max-width:780px}.vae-catalogue-head h2{margin:0 0 17px}
.vae-family-count{display:flex;align-items:center;gap:12px;flex:0 0 auto;padding:18px 22px;border:1px solid rgba(13,58,70,.12);border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(10,42,66,.06)}
.vae-family-count>span{font-size:2.8rem;font-weight:700;line-height:1;color:var(--accent-dark)}.vae-family-count small{font-size:.78rem;line-height:1.35;color:var(--ink-soft)}
.vae-family-nav{position:relative;display:flex;flex-wrap:wrap;gap:10px;margin:34px 0 44px;padding:10px;border:1px solid rgba(13,58,70,.1);border-radius:22px;background:#fff;box-shadow:0 16px 36px rgba(10,42,66,.045)}
.vae-family-nav-link{display:flex;align-items:center;gap:10px;flex:1 1 230px;min-width:0;padding:14px 15px;border-radius:15px;background:var(--surface);text-decoration:none;color:var(--ink);font-weight:650;transition:background .2s,transform .2s}
.vae-family-nav-link:hover,.vae-family-nav-link:focus-visible{background:var(--accent-soft);transform:translateY(-2px)}.vae-family-nav-link>span:nth-child(2){flex:1 1 auto;line-height:1.25}
.vae-family-nav-link>strong{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:50%;background:#fff;color:var(--ink);font-size:12px}
.vae-family-nav-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#fff;color:var(--accent-dark);font-size:1.45rem}
.vae-family-sections{display:grid;gap:40px}.vae-family-section{position:relative;scroll-margin-top:110px;padding:29px;border:1px solid var(--line);border-radius:25px;background:#fff;box-shadow:0 18px 42px rgba(10,42,66,.045)}
.vae-family-section:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-radius:25px 0 0 25px;background:var(--vae-accent,var(--accent))}
.vae-family-section[data-family="plongee-subaquatique"]{--vae-accent:var(--brand-ocean);--vae-accent-soft:var(--brand-mist)}
.vae-family-section[data-family="animation-asec"]{--vae-accent:var(--accent);--vae-accent-soft:var(--accent-soft)}
.vae-family-section[data-family="natation-aquatique"]{--vae-accent:var(--brand-sky);--vae-accent-soft:var(--info-soft)}
.vae-family-section[data-family="autres-apsa"]{--vae-accent:var(--ink-soft);--vae-accent-soft:var(--surface-alt)}
.vae-family-title{display:flex;gap:18px;align-items:center;margin-bottom:23px}.vae-family-icon{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border-radius:18px;background:var(--vae-accent-soft,#e7f5f1);color:var(--vae-accent,var(--accent));font-size:2rem}
.vae-family-title>div{flex:1 1 auto}.vae-family-title h3{margin:0 0 4px;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.1}.vae-family-kicker{font-size:10px;color:var(--vae-accent,var(--accent-dark));font-weight:700;letter-spacing:.12em;margin:0 0 7px}
.vae-family-description{margin:0;color:var(--ink-soft)}.vae-family-total{flex:0 0 auto;font-size:12px;padding:9px 12px;background:var(--vae-accent-soft,#e7f5f1);color:var(--ink);border-radius:30px;font-weight:700}
.vae-family-cards{display:flex;flex-wrap:wrap;gap:15px}.vae-cert-card{display:flex;gap:24px;flex:1 1 320px;min-width:0;justify-content:space-between;padding:23px;background:#fff;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:17px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.vae-cert-card:hover,.vae-cert-card:focus-visible{transform:translateY(-3px);border-color:var(--vae-accent,var(--accent));box-shadow:0 12px 28px rgba(10,42,66,.07)}
.vae-cert-body{flex:1 1 auto}.vae-cert-type{display:block;margin-bottom:12px;color:var(--vae-accent,var(--accent-dark));letter-spacing:.1em;font-size:10px;font-weight:700}.vae-cert-card h4{font-size:1.15rem;margin:0 0 10px;line-height:1.25}.vae-cert-card p{margin:0;color:var(--ink-soft);font-size:14px}
.vae-cert-arrow{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--vae-accent-soft,#e7f5f1);color:var(--vae-accent,var(--accent));font-size:18px}.vae-empty-family{padding:15px 0 4px;margin:0;color:var(--ink-soft);font-size:14px}
@media(max-width:780px){.vae-catalogue-head{display:block}.vae-family-count{display:none}.vae-family-nav{gap:8px;margin:24px 0 30px;padding:8px}.vae-family-nav-link{flex-basis:100%}.vae-family-section{padding:22px 18px;scroll-margin-top:65px}.vae-family-title{gap:12px;flex-wrap:wrap}.vae-family-icon{flex-basis:45px;width:45px;height:45px;font-size:1.5rem}.vae-family-total{margin-left:57px}.vae-family-cards{gap:10px}.vae-cert-card{flex-basis:100%;padding:18px}}
@media(prefers-reduced-motion:reduce){.vae-family-nav-link,.vae-cert-card{transition:none}.vae-family-nav-link:hover,.vae-cert-card:hover{transform:none}}

.vae-screen-reader-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}


