
:root{

--aj-white:#FFFFFF;
--aj-paper:#FEFEFE;      
--aj-navy-900:#012760;   
--aj-navy-800:#013975;   
--aj-ink-900:#021168;    
--aj-ink-800:#06097B;    
--aj-ink-700:#08098A;    
--aj-ink-600:#050EA6;    
--aj-ink-400:#4043B0;    
--aj-blue-500:#017AEF;   
--aj-blue-600:#006EE4;   
--aj-blue-700:#005BC4;   
--aj-sky-100:#EAF7FE;    
--aj-sky-200:#D5EEFD;    
--aj-sky-300:#C0E6FB;    
--aj-placeholder:#5D60BC;
--aj-danger-600:#B4232A; 
--aj-danger-100:#FDECEC; 


--text-display:var(--aj-navy-900);   
--text-heading:var(--aj-ink-800);    
--text-body:var(--aj-ink-700);       
--text-lead:var(--aj-ink-600);       
--text-muted:var(--aj-ink-400);      
--text-accent:var(--aj-blue-500);    
--text-link:var(--aj-blue-600);
--text-link-hover:var(--aj-blue-700);
--text-hand:var(--aj-ink-600);       
--text-on-dark:var(--aj-white);
--text-danger:var(--aj-danger-600);


--surface-page:var(--aj-white);
--surface-tint:var(--aj-sky-200);
--surface-tint-soft:var(--aj-sky-100);
--surface-dark:var(--aj-navy-800);
--surface-deep:var(--aj-navy-900);
--surface-brush:var(--aj-blue-600);


--border-soft:var(--aj-sky-300);
--border-tint:var(--aj-sky-200);
--border-strong:var(--aj-blue-500);
--border-on-dark:rgba(255,255,255,.55);
--stroke-hand:var(--aj-blue-500);    
--icon-stroke:var(--aj-ink-800);
--icon-bg:var(--aj-sky-200);
--action-primary:var(--aj-blue-600);
--action-primary-hover:var(--aj-blue-700);
--action-dark:var(--aj-navy-900);
--action-dark-hover:var(--aj-navy-800);
--focus-ring:var(--aj-blue-500);
}


:root{
--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--space-9:64px;--space-10:80px;--space-11:96px;--space-12:128px;

--container-max:1200px;      
--container-wide:1320px;     
--container-narrow:760px;    
--page-margin:clamp(20px,5vw,48px);
--grid-gap:clamp(20px,2.5vw,32px);
--grid-columns:12;  

--section-y:clamp(64px,9vw,128px);  
--section-y-sm:clamp(40px,6vw,80px); 
--stack-heading:clamp(16px,2vw,24px);  
--stack-block:clamp(32px,4vw,56px);  

--header-h:80px;--header-h-mobile:64px;
--tap-min:44px;
}


:root{
--font-sans:'Plus Jakarta Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
--font-hand:'Patrick Hand','Comic Neue','Segoe Print',cursive;

--fw-light:300; 
--fw-regular:400; 
--fw-medium:500; 
--fw-semibold:600; 
--fw-bold:700; 
--fw-black:800; 


--fs-display:clamp(2.75rem,1.5rem + 5.2vw,5.5rem);  
--fs-h1:clamp(2.375rem,1.55rem + 3.6vw,4.25rem);  
--fs-h2:clamp(2rem,1.45rem + 2.4vw,3.25rem);  
--fs-h3:clamp(1.375rem,1.2rem + .7vw,1.75rem);  
--fs-h4:clamp(1.1875rem,1.12rem + .3vw,1.375rem);  
--fs-lead:clamp(1.1875rem,1.05rem + .6vw,1.5rem);  
--fs-body-lg:1.25rem;  
--fs-body:1.125rem;  
--fs-sm:1rem;  
--fs-xs:.875rem;  
--fs-caps:clamp(.9375rem,.88rem + .25vw,1.125rem);  
--fs-hand-sm:1.25rem;  
--fs-hand:clamp(1.375rem,1.2rem + .8vw,1.875rem);  
--fs-hand-lg:clamp(1.75rem,1.4rem + 1.5vw,2.75rem);  

--lh-display:.98; 
--lh-heading:1.08; 
--lh-snug:1.25; 
--lh-body:1.6; 
--lh-hand:1.2; 

--tracking-display:-.04em;  
--tracking-heading:-.028em; 
--tracking-tight:-.012em; 
--tracking-body:0; 
--tracking-caps:.02em; 

--measure:64ch;  
}


:root{
--radius-xs:6px;      
--radius-sm:10px;
--radius-md:14px;     
--radius-lg:20px;     
--radius-xl:28px;     
--radius-pill:999px;  
--radius-circle:50%;  

--border-1:1px;--border-2:2px;--border-bar:10px; 

--shadow-none:none;
--shadow-pop:0 18px 40px -18px rgba(1,39,96,.28);  
--shadow-photo:0 24px 48px -28px rgba(1,39,96,.35);

--focus-width:3px; 
--focus-offset:3px; 
--focus-halo:0 0 0 4px var(--aj-sky-200);

--ease-out:cubic-bezier(.22,.8,.3,1); 
--dur-fast:120ms; 
--dur:180ms; 
--dur-slow:320ms; 

--z-header:50; 
--z-menu:60; 
}


*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{margin:0;font-family:var(--font-sans);font-weight:var(--fw-black);color:var(--text-display);text-wrap:balance}
p{margin:0;text-wrap:pretty}
img{max-width:100%;display:block}
a{color:var(--text-link);text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--aj-sky-300);transition:color var(--dur) var(--ease-out),text-decoration-color var(--dur) var(--ease-out)}
a:hover{color:var(--text-link-hover);text-decoration-color:currentColor}
:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset);border-radius:4px}
::selection{background:var(--aj-sky-200);color:var(--aj-navy-900)}

.aj-display{font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--tracking-display);font-weight:var(--fw-black);color:var(--text-display)}
.aj-h1{font-size:var(--fs-h1);line-height:var(--lh-display);letter-spacing:var(--tracking-display);font-weight:var(--fw-black);color:var(--text-display)}
.aj-h2{font-size:var(--fs-h2);line-height:var(--lh-heading);letter-spacing:var(--tracking-heading);font-weight:var(--fw-black);color:var(--text-display)}
.aj-h3{font-size:var(--fs-h3);line-height:var(--lh-snug);letter-spacing:var(--tracking-heading);font-weight:var(--fw-black);color:var(--text-heading)}
.aj-h4{font-size:var(--fs-h4);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);font-weight:var(--fw-bold);color:var(--text-heading)}
.aj-accent{color:var(--text-accent)}
.aj-subtitle{font-size:var(--fs-h4);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);font-weight:var(--fw-black);color:var(--text-display)}
.aj-lead{font-size:var(--fs-lead);line-height:1.45;color:var(--text-lead);font-weight:var(--fw-regular)}
.aj-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body)}
.aj-small{font-size:var(--fs-sm);line-height:1.5;color:var(--text-body)}
.aj-caption{font-size:var(--fs-xs);line-height:1.45;color:var(--text-muted)}
.aj-caps{font-size:var(--fs-caps);line-height:1.2;font-weight:var(--fw-black);letter-spacing:var(--tracking-caps);text-transform:uppercase}
.aj-hand{font-family:var(--font-hand);font-size:var(--fs-hand);line-height:var(--lh-hand);color:var(--text-hand);font-weight:400}

.aj-container{width:100%;max-width:calc(var(--container-max) + 2*var(--page-margin));margin-inline:auto;padding-inline:var(--page-margin)}
.aj-container--narrow{max-width:calc(var(--container-narrow) + 2*var(--page-margin))}
.aj-section{padding-block:var(--section-y)}
.aj-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gap)}
@media (min-width:640px){.aj-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media (min-width:1024px){.aj-grid{grid-template-columns:repeat(12,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}


.aj-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;min-height:var(--tap-min);padding:0 26px;border:2px solid transparent;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:1.0625rem;font-weight:var(--fw-bold);letter-spacing:-.005em;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.aj-btn:active{transform:translateY(1px)}
.aj-btn .aj-icon{flex:none;transition:transform var(--dur) var(--ease-out)}
.aj-btn:hover .aj-btn__icon-end{transform:translateX(3px)}
.aj-btn:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--radius-md)}
.aj-btn--sm{height:44px;padding:0 18px;font-size:.9375rem;border-radius:12px}
.aj-btn--lg{height:60px;padding:0 32px;font-size:1.125rem}
.aj-btn--block{display:flex;width:100%}
.aj-btn--primary{background:var(--action-primary);color:#fff}
.aj-btn--primary:hover{background:var(--action-primary-hover);color:#fff}
.aj-btn--navy{background:var(--action-dark);color:#fff}
.aj-btn--navy:hover{background:var(--action-dark-hover);color:#fff}
.aj-btn--outline{background:#fff;color:var(--aj-navy-900);border-color:var(--border-soft)}
.aj-btn--outline:hover{border-color:var(--border-strong);background:var(--surface-tint-soft);color:var(--aj-navy-900)}
.aj-btn--ghost{background:transparent;color:var(--text-link);padding-inline:14px}
.aj-btn--ghost:hover{background:var(--surface-tint-soft);color:var(--text-link-hover)}
.aj-btn--inverse{background:#fff;color:var(--aj-navy-900)}
.aj-btn--inverse:hover{background:var(--aj-sky-200);color:var(--aj-navy-900)}
.aj-btn[disabled],.aj-btn[aria-disabled="true"]{opacity:.45;pointer-events:none}

.aj-link{color:var(--text-link);font-weight:var(--fw-semibold);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:var(--aj-sky-300);transition:color var(--dur) var(--ease-out),text-decoration-color var(--dur) var(--ease-out)}
.aj-link:hover{color:var(--text-link-hover);text-decoration-color:currentColor}
.aj-link--arrow{display:inline-flex;align-items:center;gap:6px;font-weight:var(--fw-bold);text-decoration:none;min-height:var(--tap-min)}
.aj-link--arrow .aj-icon{transition:transform var(--dur) var(--ease-out)}
.aj-link--arrow:hover .aj-icon{transform:translateX(3px)}
.aj-link--quiet{color:inherit;font-weight:inherit}
.aj-link--on-dark{color:#fff;text-decoration-color:var(--aj-sky-300)}
.aj-link--on-dark:hover{color:#fff;text-decoration-color:#fff}

.aj-tag{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:5px 14px;border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:1.2;white-space:nowrap}
.aj-tag .aj-icon{flex:none}
.aj-tag--sky{background:var(--aj-sky-200);color:var(--aj-ink-800)}
.aj-tag--outline{background:#fff;border:2px solid var(--border-soft);color:var(--aj-ink-800)}
.aj-tag--dark{background:var(--aj-navy-800);color:#fff}


.aj-icon-circle{display:inline-grid;place-items:center;flex:none;width:72px;height:72px;border-radius:var(--radius-circle);background:var(--icon-bg);color:var(--icon-stroke)}
.aj-icon-circle svg{width:50%;height:50%}
.aj-icon-circle--sm{width:48px;height:48px}.aj-icon-circle--md{width:72px;height:72px}.aj-icon-circle--lg{width:96px;height:96px}.aj-icon-circle--xl{width:120px;height:120px}
.aj-icon-circle--white{background:#fff}
.aj-icon-circle--navy{background:var(--aj-navy-800);color:#fff}
.aj-icon-circle--blue{background:var(--aj-blue-600);color:#fff}
@media (max-width:639px){.aj-icon-circle--lg{width:72px;height:72px}.aj-icon-circle--xl{width:96px;height:96px}}

.aj-hand-note{display:inline-block;margin:0;font-family:var(--font-hand);font-weight:400;font-size:var(--fs-hand);line-height:var(--lh-hand);color:var(--text-hand);transform:rotate(var(--hand-rot,-5deg));transform-origin:left center;max-width:var(--hand-measure,22ch);text-wrap:balance}
.aj-hand-note--sm{font-size:var(--fs-hand-sm)}.aj-hand-note--lg{font-size:var(--fs-hand-lg)}
.aj-hand-note--center{text-align:center;transform-origin:center}
.aj-hand-note--blue{color:var(--aj-blue-600)}.aj-hand-note--navy{color:var(--aj-ink-800)}.aj-hand-note--white{color:#fff}
.aj-hand-note__stroke{display:block;width:72%;aspect-ratio:398/140;margin:-.05em 0 0 auto;background:url('/assets/hand/underline-1.png') center/100% 100% no-repeat}
.aj-hand-note__stroke--2{background-image:url('/assets/hand/underline-2.png');aspect-ratio:370/99;width:62%;margin-top:.1em}
.aj-hand-note--white .aj-hand-note__stroke{background-image:url('/assets/hand/underline-1-white.png')}
.aj-hand-note--white .aj-hand-note__stroke--2{background-image:url('/assets/hand/underline-2-white.png')}

.aj-underline{position:relative;display:inline-block;isolation:isolate}
.aj-underline::after{content:"";position:absolute;z-index:-1;left:-3%;right:-5%;bottom:-.2em;height:.42em;background:url('/assets/hand/underline-2.png') center/100% 100% no-repeat;pointer-events:none}
.aj-underline--s1::after{background-image:url('/assets/hand/underline-1.png');height:.38em;bottom:-.24em}
.aj-underline--white::after{background-image:url('/assets/hand/underline-2-white.png')}
.aj-underline--s1.aj-underline--white::after{background-image:url('/assets/hand/underline-1-white.png')}

.aj-brush{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;margin:0;padding:.5em 1.5em .72em;font-family:var(--font-hand);font-weight:400;font-size:var(--fs-hand-lg);line-height:1.1;color:#fff;text-align:center;text-wrap:balance}
.aj-brush::before{content:"";position:absolute;inset:0;z-index:-1;background:url('/assets/hand/brush.png') center/100% 100% no-repeat}
.aj-brush--md{font-size:var(--fs-hand)}
.aj-brush--inline{display:inline-flex}

.aj-hand-arrow{display:inline-block;flex:none;width:var(--arrow-w,96px);aspect-ratio:194/82;background:url('/assets/hand/arrow.png') center/contain no-repeat}
.aj-hand-arrow--blue{background-image:url('/assets/hand/arrow-blue.png')}.aj-hand-arrow--white{background-image:url('/assets/hand/arrow-white.png')}

.aj-checklist{list-style:none;margin:0;padding:0;display:grid;gap:.5em;font-family:var(--font-hand);font-weight:400;font-size:var(--fs-hand);line-height:1.15;color:var(--text-hand)}
.aj-checklist--sm{font-size:var(--fs-hand-sm)}
.aj-checklist--tilt{transform:rotate(-2.5deg);transform-origin:left top}
.aj-checklist__item{display:grid;grid-template-columns:1.15em minmax(0,1fr);column-gap:.6em;align-items:start}
.aj-checklist__mark{position:relative;width:1.15em;height:.95em;margin-top:.12em}
.aj-checklist__box{position:absolute;inset:0;background:url('/assets/hand/checkbox.png') center/100% 100% no-repeat}
.aj-checklist__check{position:absolute;left:.12em;top:-.3em;width:1.25em;height:1.25em;color:var(--aj-blue-500)}
.aj-checklist__item--done .aj-checklist__text{color:var(--aj-ink-800)}

.aj-signature{display:inline-flex;flex-direction:column;gap:3px;color:var(--aj-navy-900);text-decoration:none;font-family:var(--font-sans)}
.aj-signature__name{font-size:1.375rem;font-weight:var(--fw-black);letter-spacing:-.035em;line-height:1;white-space:nowrap}
.aj-signature__role{font-size:.8125rem;font-weight:var(--fw-semibold);color:var(--aj-ink-600);line-height:1.25}
.aj-signature--sm .aj-signature__name{font-size:1.125rem}.aj-signature--sm .aj-signature__role{font-size:.75rem}
.aj-signature--lg .aj-signature__name{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.25rem)}.aj-signature--lg .aj-signature__role{font-size:1.0625rem;font-weight:var(--fw-regular)}
.aj-signature--inverse,.aj-signature--inverse .aj-signature__role{color:#fff}
a.aj-signature:hover .aj-signature__name{color:var(--aj-blue-600)}
a.aj-signature--inverse:hover .aj-signature__name{color:var(--aj-sky-200)}


.aj-service{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:clamp(16px,2.6vw,36px);align-items:center}
.aj-service--stack{grid-template-columns:minmax(0,1fr);row-gap:20px;align-items:start}
.aj-service__title{margin:0;font-size:var(--fs-h3);line-height:var(--lh-snug);letter-spacing:var(--tracking-heading);font-weight:var(--fw-black);color:var(--text-heading)}
.aj-service__text{margin-top:6px;font-size:var(--fs-body);line-height:1.5;color:var(--text-body)}
@media (max-width:639px){.aj-service{align-items:start}}

.aj-card{display:flex;flex-direction:column;gap:16px;padding:clamp(22px,3vw,32px);border-radius:var(--radius-lg);background:#fff;border:2px solid var(--border-tint);color:var(--text-body);text-decoration:none;transition:border-color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}
.aj-card--tint{background:var(--surface-tint);border-color:transparent}
.aj-card--soft{background:var(--surface-tint-soft);border-color:transparent}
.aj-card--dark{background:var(--surface-dark);border-color:transparent;color:#fff}
.aj-card--interactive{cursor:pointer}
.aj-card--interactive:hover{border-color:var(--border-strong);color:var(--text-body)}
.aj-card--interactive.aj-card--tint:hover,.aj-card--interactive.aj-card--soft:hover{border-color:var(--border-strong)}
.aj-card__title{margin:0;font-size:var(--fs-h4);font-weight:var(--fw-black);letter-spacing:-.02em;line-height:1.25;color:var(--text-heading)}
.aj-card--dark .aj-card__title{color:#fff}
.aj-card__body{font-size:var(--fs-sm);line-height:1.55}
.aj-card__footer{margin-top:auto;padding-top:4px}

.aj-band{background:var(--surface-dark);color:#fff;container-type:inline-size}
.aj-band__list{list-style:none;margin:0 auto;max-width:calc(var(--container-max) + 2*var(--page-margin));padding:clamp(28px,4vw,44px) var(--page-margin);display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.aj-band__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:6px 16px;text-align:center;border-left:2px solid var(--border-on-dark)}
.aj-band__item:first-child{border-left:0}
.aj-band__item svg{width:clamp(40px,4.4vw,60px);height:auto}
.aj-band__label{font-size:var(--fs-caps);font-weight:var(--fw-black);letter-spacing:var(--tracking-caps);text-transform:uppercase;line-height:1.15}
@container (max-width:720px){.aj-band__list{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}.aj-band__item:nth-child(odd){border-left:0}}

.aj-callout{position:relative;container-type:inline-size;padding:clamp(24px,3.5vw,40px) clamp(24px,4vw,48px) clamp(24px,3.5vw,40px) calc(clamp(24px,4vw,48px) + var(--border-bar));background:var(--surface-tint);border-radius:var(--radius-lg);overflow:hidden}
.aj-callout::before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--border-bar);background:var(--aj-blue-500)}
.aj-callout--no-bar{padding-left:clamp(24px,4vw,48px)}.aj-callout--no-bar::before{display:none}
.aj-callout__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:center}
.aj-callout__title{margin:0;font-size:var(--fs-h3);font-weight:var(--fw-black);letter-spacing:-.025em;line-height:1.15;color:var(--aj-ink-800)}
.aj-callout__text{margin-top:8px;font-size:var(--fs-lead);line-height:1.4;color:var(--aj-ink-700)}
.aj-callout__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.aj-callout__aside{justify-self:end;padding-right:8px}
@container (max-width:640px){.aj-callout__grid{grid-template-columns:minmax(0,1fr)}.aj-callout__aside{justify-self:start}}

.aj-cta{position:relative;container-type:inline-size;padding:clamp(32px,6vw,72px);border-radius:var(--radius-xl)}
.aj-cta__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px 64px;align-items:center}
.aj-cta--tint{background:var(--surface-tint)}
.aj-cta--white{background:#fff;border:2px solid var(--border-tint)}
.aj-cta--dark{background:var(--surface-dark);color:#fff}
.aj-cta__title{margin:0;font-size:var(--fs-h2);font-weight:var(--fw-black);letter-spacing:var(--tracking-heading);line-height:1.04;color:var(--aj-navy-900)}
.aj-cta__accent{color:var(--aj-blue-500)}
.aj-cta__text{margin-top:18px;font-size:var(--fs-lead);line-height:1.45;color:var(--aj-ink-600);max-width:34ch}
.aj-cta--dark .aj-cta__title,.aj-cta--dark .aj-cta__text{color:#fff}
.aj-cta--dark .aj-cta__accent{color:var(--aj-sky-300)}
.aj-cta__side{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.aj-cta__note{display:flex;align-items:flex-end;gap:10px}
.aj-cta__actions{display:flex;flex-wrap:wrap;gap:12px}
@container (max-width:720px){.aj-cta__grid{grid-template-columns:minmax(0,1fr)}}

.aj-contact{display:grid;gap:18px;font-family:var(--font-sans)}
.aj-contact__role{margin-top:6px;font-size:var(--fs-sm);line-height:1.45;color:var(--aj-ink-600)}
.aj-contact__lines{display:grid;gap:6px}
.aj-contact__line{display:inline-flex;align-items:center;gap:14px;min-height:var(--tap-min);font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:var(--fw-medium);letter-spacing:-.01em;color:var(--aj-ink-700);text-decoration:none;width:max-content;max-width:100%}
.aj-contact__line .aj-icon{flex:none;color:var(--aj-blue-600)}
.aj-contact__line:hover{color:var(--aj-blue-600)}
.aj-contact__meta{font-size:var(--fs-xs);color:var(--text-muted)}
.aj-contact--inverse .aj-contact__role,.aj-contact--inverse .aj-contact__line,.aj-contact--inverse .aj-contact__meta{color:#fff}
.aj-contact--inverse .aj-contact__line .aj-icon{color:var(--aj-sky-300)}
.aj-contact--inverse .aj-contact__line:hover{color:var(--aj-sky-200)}

.aj-steps-wrap{container-type:inline-size}
.aj-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--steps-cols,4),minmax(0,1fr));gap:var(--grid-gap)}
.aj-step{display:flex;flex-direction:column;gap:14px}
.aj-step__head{display:flex;align-items:center;gap:14px}
.aj-step__line{flex:1;height:2px;border-radius:2px;background:var(--aj-sky-300)}
.aj-step:last-child .aj-step__line{visibility:hidden}
.aj-step__num{font-size:var(--fs-xs);font-weight:var(--fw-black);letter-spacing:.06em;text-transform:uppercase;color:var(--aj-blue-600)}
.aj-step__title{margin:0;font-size:var(--fs-h4);font-weight:var(--fw-black);letter-spacing:-.02em;line-height:1.25;color:var(--text-heading)}
.aj-step__text{font-size:var(--fs-sm);line-height:1.55;color:var(--text-body)}
@container (max-width:880px){.aj-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.aj-step__line{visibility:hidden}}
@container (max-width:520px){.aj-steps{grid-template-columns:minmax(0,1fr)}}


.aj-card--tint .aj-link,.aj-card--soft .aj-link,.aj-callout .aj-link,.aj-cta--tint .aj-link,.aj-card--tint .aj-btn--ghost,.aj-callout .aj-btn--ghost,.aj-cta--tint .aj-btn--ghost{color:var(--aj-blue-700)}
.aj-card--dark .aj-link,.aj-cta--dark .aj-link{color:#fff;text-decoration-color:var(--aj-sky-300)}


.aj-field{display:grid;gap:8px;align-content:start;font-family:var(--font-sans)}
.aj-field__label{font-size:.9375rem;font-weight:var(--fw-bold);line-height:1.3;color:var(--aj-navy-900)}
.aj-field__optional{margin-left:6px;font-weight:var(--fw-medium);color:var(--text-muted)}
.aj-field__hint{font-size:var(--fs-xs);line-height:1.4;color:var(--text-muted)}
.aj-field__error{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:1.4;color:var(--text-danger)}
.aj-input{display:block;width:100%;height:52px;padding:0 16px;border:2px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;font-family:var(--font-sans);font-size:1.0625rem;line-height:1.4;color:var(--aj-ink-800);appearance:none;-webkit-appearance:none;transition:border-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}
.aj-input::placeholder{color:var(--aj-placeholder);opacity:1}
.aj-input:hover{background:var(--aj-sky-100)}
.aj-input:focus{outline:none;background:#fff;border-color:var(--border-strong);box-shadow:var(--focus-halo)}
.aj-input[aria-invalid="true"]{border-color:var(--aj-danger-600)}
.aj-input[aria-invalid="true"]:focus{box-shadow:0 0 0 4px var(--aj-danger-100)}
.aj-input:disabled{background:var(--aj-sky-100);color:var(--text-muted);cursor:not-allowed}
textarea.aj-input{height:auto;min-height:150px;padding:14px 16px;line-height:1.55;resize:vertical}
.aj-select{position:relative}
.aj-select .aj-input{padding-right:48px;cursor:pointer}
.aj-select__chev{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--aj-ink-800)}

.aj-choice{position:relative;display:inline-flex;align-items:flex-start;gap:12px;min-height:var(--tap-min);padding-block:10px;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-sm);line-height:1.4;color:var(--aj-ink-700)}
.aj-choice input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.aj-choice__ctrl{flex:none;display:grid;place-items:center;width:24px;height:24px;margin-top:-1px;border:2px solid var(--border-soft);border-radius:var(--radius-xs);background:#fff;color:#fff;transition:background-color var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out)}
.aj-choice__ctrl svg{opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}
.aj-choice:hover .aj-choice__ctrl{border-color:var(--aj-blue-500)}
.aj-choice input:checked + .aj-choice__ctrl{background:var(--aj-blue-600);border-color:var(--aj-blue-600)}
.aj-choice input:checked + .aj-choice__ctrl svg{opacity:1}
.aj-choice input:focus-visible + .aj-choice__ctrl{outline:var(--focus-width) solid var(--focus-ring);outline-offset:2px}
.aj-choice--radio .aj-choice__ctrl{border-radius:50%}
.aj-choice--radio input:checked + .aj-choice__ctrl{background:#fff}
.aj-choice__dot{width:12px;height:12px;border-radius:50%;background:var(--aj-blue-600);transform:scale(0);transition:transform var(--dur) var(--ease-out)}
.aj-choice--radio input:checked + .aj-choice__ctrl .aj-choice__dot{transform:scale(1)}
.aj-choice__label{display:grid;gap:2px}
.aj-choice__desc{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}
.aj-choice--tile{display:flex;width:100%;padding:14px 16px;border:2px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;font-weight:var(--fw-semibold);color:var(--aj-ink-800);transition:border-color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}
.aj-choice--tile:hover{border-color:var(--aj-blue-500)}
.aj-choice--tile:has(input:checked){border-color:var(--aj-blue-500);background:var(--aj-sky-100)}
.aj-choice--disabled{opacity:.5;cursor:not-allowed}


.aj-header{position:sticky;top:0;z-index:var(--z-header);background:#fff;border-bottom:1px solid var(--aj-sky-200);font-family:var(--font-sans)}
.aj-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--header-h);max-width:calc(var(--container-max) + 2*var(--page-margin));margin:0 auto;padding:0 var(--page-margin)}
.aj-header__nav{display:flex;align-items:center;gap:clamp(18px,2.6vw,36px)}
.aj-header__actions{display:flex;align-items:center;gap:12px}
.aj-nav-link{display:inline-flex;align-items:center;min-height:var(--tap-min);font-size:1rem;font-weight:var(--fw-bold);letter-spacing:-.01em;color:var(--aj-navy-900);text-decoration:none;transition:color var(--dur) var(--ease-out)}
.aj-nav-link:hover{color:var(--aj-blue-600)}
.aj-nav-link__label{position:relative}
.aj-nav-link[aria-current="page"] .aj-nav-link__label::after{content:"";position:absolute;left:-8%;right:-8%;bottom:-.5em;height:.55em;background:url('/assets/hand/underline-1.png') center/100% 100% no-repeat}
.aj-header__toggle{display:none;place-items:center;width:44px;height:44px;padding:0;border:2px solid var(--border-soft);border-radius:12px;background:#fff;color:var(--aj-navy-900);cursor:pointer}
.aj-header__toggle:hover{border-color:var(--border-strong)}
.aj-header__panel{display:grid;gap:0;padding:8px var(--page-margin) 28px;border-top:1px solid var(--aj-sky-200);background:#fff;box-shadow:var(--shadow-pop)}
.aj-header__panel .aj-nav-link{min-height:60px;font-size:1.375rem;font-weight:var(--fw-black);letter-spacing:-.02em;border-bottom:1px solid var(--aj-sky-200)}
.aj-header__panel-actions{display:grid;gap:12px;margin-top:24px}
@media (max-width:1023px){.aj-header__inner{height:var(--header-h-mobile)}.aj-header__nav,.aj-header__cta{display:none}.aj-header__toggle{display:inline-grid}}
@media (min-width:1024px){.aj-header__panel{display:none}}

.aj-footer{background:var(--surface-dark);color:#fff;font-family:var(--font-sans)}
.aj-footer__inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:40px;max-width:calc(var(--container-max) + 2*var(--page-margin));margin:0 auto;padding:clamp(48px,6vw,80px) var(--page-margin) 28px}
.aj-footer__title{margin:0 0 14px;font-size:var(--fs-xs);font-weight:var(--fw-black);letter-spacing:.06em;text-transform:uppercase;color:var(--aj-sky-300)}
.aj-footer__links{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.aj-footer__links a{display:inline-flex;align-items:center;gap:8px;min-height:40px;color:#fff;text-decoration:none;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}
.aj-footer__links a:hover{text-decoration:underline;text-decoration-color:var(--aj-sky-300);text-underline-offset:4px;text-decoration-thickness:2px}
.aj-footer__about{margin-top:14px;max-width:34ch;font-size:var(--fs-sm);line-height:1.55;color:#fff}
.aj-footer__bottom{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:24px;border-top:1px solid var(--border-on-dark);font-size:var(--fs-xs);color:var(--aj-sky-200)}
@media (max-width:899px){.aj-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr))}.aj-footer__brand{grid-column:1/-1}}
@media (max-width:539px){.aj-footer__inner{grid-template-columns:minmax(0,1fr)}}

/* alexandrejuillot.fr — mise en page des pages du site.
   Compose uniquement les tokens (var(--*)) et classes du design system (aj-*).
   Aucune couleur, police, forme ou ombre nouvelle. Points de rupture du DS : <640 · 640–1023 · ≥1024. */

/* En-tête : 6 liens + CTA ne tiennent qu’à partir de 1240px → menu burger en dessous */
@media (min-width:1024px) and (max-width:1239px){.aj-header__nav,.aj-header__cta{display:none}.aj-header__toggle{display:inline-grid}.aj-header__inner{height:var(--header-h-mobile)}}
@media (min-width:1024px) and (max-width:1239px){.aj-header__panel{display:grid}}

.s-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Sections */
.s-section{padding-block:var(--section-y)}
.s-section--sm{padding-block:var(--section-y-sm)}
.s-section--tint{background:var(--aj-sky-100)}
.s-section--top0{padding-top:0}
.s-head{display:grid;gap:var(--stack-heading);margin-bottom:var(--stack-block);max-width:820px}
.s-head--row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 40px;max-width:none}
.s-head--row > :first-child{display:grid;gap:var(--stack-heading);max-width:820px}
.s-head--center{margin-inline:auto;text-align:center;justify-items:center}

/* Fil d’Ariane */
.s-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;margin:0 0 clamp(20px,3vw,36px);padding:0;list-style:none;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}
.s-crumbs li{display:inline-flex;align-items:center;gap:10px}
.s-crumbs a{display:inline-flex;align-items:center;min-height:32px;color:var(--aj-ink-600);text-decoration:none}
.s-crumbs a:hover{color:var(--aj-blue-600);text-decoration:underline;text-decoration-color:var(--aj-sky-300)}
.s-crumbs [aria-current]{color:var(--aj-ink-800)}
.s-crumbs .aj-icon{color:var(--aj-sky-300)}

/* Premier écran */
.s-hero{padding-block:clamp(24px,4vw,56px) clamp(56px,7vw,104px)}
.s-hero--page{padding-bottom:clamp(48px,6vw,96px)}
.s-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:start}
.s-hero__grid--mid{align-items:center}
.s-eyebrow{margin:0 0 clamp(14px,1.8vw,20px);font-size:var(--fs-sm);line-height:1.4;color:var(--aj-ink-600)}
.s-eyebrow strong{font-weight:var(--fw-black);color:var(--aj-navy-900)}
.s-hero__sub{margin-top:clamp(16px,2vw,24px)}
.s-hero__lead{margin-top:12px;max-width:40ch}
.s-hero__lead--wide{max-width:44ch}
.s-hero__text{margin-top:18px;max-width:58ch;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body)}
.s-where{display:flex;align-items:flex-start;gap:10px;margin-top:clamp(20px,2.4vw,28px);padding:12px 16px;max-width:620px;border-radius:var(--radius-md);background:var(--aj-sky-100);font-size:var(--fs-sm);line-height:1.45;font-weight:var(--fw-semibold);color:var(--aj-ink-800)}
.s-where .aj-icon{flex:none;margin-top:1px;color:var(--aj-blue-600)}
.s-where strong{font-weight:var(--fw-black);color:var(--aj-navy-900)}
.s-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:clamp(24px,2.6vw,32px)}
.s-actions__line{flex-basis:100%;display:flex;flex-wrap:wrap;gap:4px 24px}
.s-mail{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap-min)}
.s-mail .aj-icon{flex:none}
.s-hero__side{display:grid;gap:clamp(20px,3vw,32px)}
.s-hero__note{justify-self:end;margin-right:4%}
.s-photo{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 62%;border-radius:var(--radius-xl)}
.s-photo--tall{aspect-ratio:4/5;object-position:50% 70%}
.s-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(20px,3vw,28px)}
.s-hero__icon{display:grid;justify-items:start;gap:20px}

/* Grilles */
.s-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap)}
.s-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}
.s-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.s-split--even{grid-template-columns:repeat(2,minmax(0,1fr))}
.s-split--mid{align-items:center}
.s-sticky{position:sticky;top:calc(var(--header-h) + 32px)}

/* Besoins (verso du flyer) */
.s-needs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(36px,4vw,56px) clamp(32px,5vw,72px)}
.s-need{display:grid;gap:6px;align-content:start}
.s-need .aj-service{align-items:start}
.s-need__more{padding-left:calc(96px + clamp(16px,2.6vw,36px))}
.s-needs--compact .s-need__more{padding-left:calc(72px + clamp(16px,2.6vw,36px))}

/* Lignes de services (page Services) */
.s-rows{display:grid}
.s-row{display:grid;grid-template-columns:96px minmax(0,6fr) minmax(0,5fr);gap:clamp(20px,3vw,48px);padding-block:clamp(32px,4vw,52px);border-top:2px solid var(--aj-sky-200)}
.s-row:last-child{border-bottom:2px solid var(--aj-sky-200)}
.s-row__main{display:grid;gap:14px;align-content:start}
.s-row__side{display:grid;gap:16px;align-content:start}
.s-row__label{font-size:var(--fs-xs);font-weight:var(--fw-black);letter-spacing:.06em;text-transform:uppercase;color:var(--aj-blue-600)}

/* Texte courant */
.s-prose{display:grid;gap:18px;max-width:var(--measure)}
.s-prose p{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body)}
.s-prose--lg p{font-size:var(--fs-body-lg)}
.s-p{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body)}
.s-checks{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.s-checks li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:start;font-size:var(--fs-body);line-height:1.5;color:var(--text-body)}
.s-checks--sm li{font-size:var(--fs-sm);gap:12px}
.s-checks .aj-icon{color:var(--aj-blue-600);margin-top:2px}
.s-checks strong{font-weight:var(--fw-bold);color:var(--aj-ink-800)}

/* Deux modes d’intervention, poids égal */
.s-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap)}
.s-duo__card{gap:20px;padding:clamp(28px,4vw,48px);border-radius:var(--radius-xl)}
.s-duo__card .aj-h3{color:var(--aj-navy-900)}
.s-duo__card .s-p{color:var(--aj-ink-700)}
.s-duo__foot{margin-top:auto;padding-top:8px}

/* Étiquettes-liens (villes) */
.s-chips{display:flex;flex-wrap:wrap;gap:8px}
a.aj-tag{text-decoration:none;transition:border-color var(--dur) var(--ease-out),background-color var(--dur) var(--ease-out)}
a.aj-tag--outline:hover{border-color:var(--border-strong);color:var(--aj-ink-800)}
.s-chips .aj-tag{min-height:var(--tap-min);padding-inline:16px;font-size:var(--fs-sm)}

/* Cartes de situations */
.s-situ{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}
.s-situ .aj-card__body{font-size:var(--fs-body);line-height:1.5;color:var(--aj-ink-700)}

/* Liste d’éléments à distance */
.s-list3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(28px,4vw,56px)}
.s-li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;padding-block:28px;border-top:2px solid var(--aj-sky-200)}
.s-li__title{margin:0;font-size:var(--fs-h4);font-weight:var(--fw-black);letter-spacing:-.02em;line-height:1.25;color:var(--text-heading)}
.s-li__text{margin-top:6px;font-size:var(--fs-sm);line-height:1.55;color:var(--text-body)}

/* Questions fréquentes (ouvertes, indexables) */
.s-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,5vw,72px)}
.s-faq__item{display:grid;gap:10px;align-content:start;padding-block:26px;border-top:2px solid var(--aj-sky-200)}
.s-faq__q{margin:0;font-size:var(--fs-h4);font-weight:var(--fw-black);letter-spacing:-.02em;line-height:1.25;color:var(--text-heading)}
.s-faq__a{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body)}

/* Liens vers d’autres pages (besoins associés, villes proches) */
.s-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}
.s-links .aj-card{height:100%}
.s-link-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.s-link-list li{border-top:2px solid var(--aj-sky-200)}
.s-link-list a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding-block:12px;font-size:var(--fs-body);line-height:1.35;text-wrap:pretty;font-weight:var(--fw-bold);letter-spacing:-.01em;color:var(--aj-navy-900);text-decoration:none}
.s-link-list a:hover{color:var(--aj-blue-600)}
.s-link-list a .aj-icon{flex:none;color:var(--aj-blue-600);transition:transform var(--dur) var(--ease-out)}
.s-link-list a:hover .aj-icon{transform:translateX(3px)}
.s-link-list small{display:block;margin-top:2px;font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted)}

/* Zone locale */
.s-zone{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap)}
.s-zone__col{display:grid;gap:16px;align-content:start}
.s-zone__label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:2px solid var(--aj-blue-500)}
.s-towns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap)}
.s-town{gap:10px}
.s-town__dept{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-muted)}
.s-town__more{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:6px;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-link)}
.aj-card--interactive:hover .s-town__more .aj-icon{transform:translateX(3px)}
.s-town__more .aj-icon{transition:transform var(--dur) var(--ease-out)}
.s-town--base{background:var(--surface-dark);border-color:transparent;color:#fff}
.s-town--base .aj-card__title,.s-town--base .s-town__dept,.s-town--base .aj-card__body{color:#fff}

/* Encadré « en bref » */
.s-facts{display:grid;margin:0}
.s-facts > div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:8px 20px;padding-block:16px;border-top:2px solid var(--aj-sky-300)}
.s-facts > div:first-child{border-top:0;padding-top:0}
.s-facts dt{font-size:var(--fs-sm);font-weight:var(--fw-bold);line-height:1.45;color:var(--aj-navy-900)}
.s-facts dd{margin:0;font-size:var(--fs-sm);line-height:1.5;color:var(--aj-ink-700)}
.s-facts a{font-weight:var(--fw-semibold);color:var(--aj-blue-700)}
.s-panel{display:grid;gap:22px;padding:clamp(24px,3vw,36px);border-radius:var(--radius-lg);background:var(--surface-tint)}
.s-panel__title{margin:0;font-size:var(--fs-h4);font-weight:var(--fw-black);letter-spacing:-.02em;line-height:1.25;color:var(--aj-navy-900)}

/* Lien LinkedIn */
.s-slot{display:flex;align-items:center;gap:14px;min-height:56px;padding:12px 18px;border:2px solid var(--aj-sky-200);border-radius:var(--radius-md);font-size:var(--fs-xs);line-height:1.4;color:var(--text-muted)}
.s-slot strong{display:block;font-size:var(--fs-sm);color:var(--aj-ink-800)}
.s-slot .aj-icon{flex:none;color:var(--aj-blue-600,#006EE4)}
.s-slot a{font-size:var(--fs-sm);font-weight:600}

/* Encadré fort (« Pas besoin de cahier des charges ») */
.s-callout-xl .aj-callout__title{font-size:clamp(1.625rem,1.1rem + 2vw,2.625rem);letter-spacing:var(--tracking-heading);line-height:1.08;color:var(--aj-navy-900)}
.s-callout-xl .aj-callout__text{margin-top:12px}
.s-gap-top{margin-top:var(--section-y-sm)}

/* Bloc d’appel à l’action final */
.s-cta-wrap{padding-block:var(--section-y-sm) var(--section-y)}
.s-cta__side{display:grid;gap:12px;justify-items:stretch;align-self:center;width:100%}
.s-cta__side .aj-btn{width:100%}
.s-cta__side .s-mail{justify-self:center}

/* Pinceau signature */
.s-brush{display:flex;justify-content:center;padding-block:0 var(--section-y)}
.s-brush .aj-brush{width:min(100%,860px)}

/* Contact */
.s-contact{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,88px);align-items:start;padding-bottom:var(--section-y)}
.s-contact__form{grid-row:span 2;display:grid;gap:clamp(40px,5vw,64px)}
.s-contact__more{display:grid;gap:20px;align-content:start}
.s-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px;padding:clamp(24px,4vw,48px);border:2px solid var(--aj-sky-200);border-radius:var(--radius-xl)}
.s-form .full{grid-column:1/-1}
.s-form__title{margin:0 0 4px;font-size:var(--fs-h3);font-weight:var(--fw-black);letter-spacing:-.025em;line-height:1.15;color:var(--aj-navy-900)}
.s-form__legal{font-size:var(--fs-xs);line-height:1.5;color:var(--text-muted)}
.s-form__legal a{font-weight:var(--fw-semibold)}
.s-form__submit{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.s-direct{display:grid;gap:28px;align-content:start}
.s-direct__call{display:grid;gap:12px}
.s-direct__call .aj-btn{width:100%}
.s-direct__note{display:flex;align-items:flex-end;gap:6px}
.s-divider{width:64px;height:2px;border-radius:2px;background:var(--aj-blue-500)}
.s-next{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap);counter-reset:n}
.s-next li{display:grid;gap:8px;padding-top:18px;border-top:2px solid var(--aj-sky-300)}
.s-next b{font-size:var(--fs-xs);font-weight:var(--fw-black);letter-spacing:.06em;text-transform:uppercase;color:var(--aj-blue-600)}
.s-next span{font-size:var(--fs-body);font-weight:var(--fw-bold);line-height:1.35;color:var(--aj-ink-800)}

/* Pied de page */
.s-footer .aj-footer__inner{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:40px 48px}
.s-footer__contact{margin-top:22px}
.s-footer__zones{grid-template-columns:minmax(0,1fr)}
.s-footer .aj-footer__links a{padding-block:6px;line-height:1.3}
.s-footer__legal{flex:none;display:flex;flex-wrap:wrap;gap:0 24px}
.s-footer__legal a{display:inline-flex;align-items:center;color:#fff;text-decoration:underline;text-decoration-color:var(--aj-sky-300)}

/* ——— Tablette ——— */
@media (max-width:1023px){
  .s-hero__grid,.s-split,.s-split--even,.s-contact{grid-template-columns:minmax(0,1fr)}
  .s-hero__note{justify-self:start;margin:0}
  .s-sticky,.s-direct{position:static}
  .s-direct{order:-1}
  .s-contact__form{grid-row:auto}
  .s-contact__more{order:1}
  .s-row{grid-template-columns:72px minmax(0,1fr)}
  .s-row__side{grid-column:2}
  .s-situ,.s-list3,.s-links,.s-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .s-footer .aj-footer__inner{grid-template-columns:repeat(3,minmax(0,1fr))}
  .s-footer .aj-footer__brand{grid-column:1/-1}
}

/* ——— Mobile ——— */
@media (max-width:639px){
  .s-hero{padding-block:24px 56px}
  .s-hero--page{padding-bottom:48px}
  .s-crumbs{margin-bottom:8px}
  .s-crumbs a{min-height:var(--tap-min)}
  .s-actions{flex-direction:column;align-items:stretch;gap:10px}
  .s-actions .aj-btn{width:100%}
  .s-hero__side{gap:16px}
  .s-hero__note .aj-hand-note{font-size:var(--fs-hand-sm)}
  .s-head--row{display:grid}
  .s-needs,.s-duo,.s-grid-2,.s-grid-3,.s-faq,.s-list3,.s-links,.s-link-list,.s-zone,.s-next{grid-template-columns:minmax(0,1fr)}
  .s-need__more,.s-needs--compact .s-need__more{padding-left:calc(72px + 16px)}
  .s-row{grid-template-columns:minmax(0,1fr);gap:16px}
  .s-row__side{grid-column:auto}
  .s-situ{grid-template-columns:minmax(0,1fr);gap:0}
  .s-situ .aj-card{flex-direction:row;align-items:flex-start;gap:16px;padding:18px 0;border:0;border-top:2px solid var(--aj-sky-200);border-radius:0}
  .s-situ .aj-card:last-child{border-bottom:2px solid var(--aj-sky-200)}
  .s-links{gap:12px}
  .s-towns{grid-template-columns:minmax(0,1fr);gap:12px}
  .s-li{padding-block:22px}
  .s-faq__item{padding-block:22px}
  .s-facts > div{grid-template-columns:minmax(0,1fr);gap:2px}
  .s-form{grid-template-columns:minmax(0,1fr);padding:0;border:0;border-radius:0}
  .s-form__submit .aj-btn{width:100%}
  .aj-callout__actions{width:100%;min-width:0}
  .aj-callout__actions .aj-btn{width:100%;white-space:normal;text-align:center;justify-content:center}
  .s-callout-xl .aj-callout__actions .aj-btn{width:100%}
  .s-callout-xl .aj-callout__actions > *{flex:1 1 100%}
  .s-next li{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:12px;padding-top:14px}
  .s-footer .aj-footer__inner{grid-template-columns:minmax(0,1fr);gap:32px}
  .s-footer__zones{grid-template-columns:repeat(2,minmax(0,1fr))}
  .s-footer__legal a{min-height:var(--tap-min)}
  .s-brush .aj-brush{font-size:var(--fs-hand)}
}

[hidden]{display:none!important}html{scroll-padding-top:100px}body{overflow-wrap:break-word}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #005BC4;outline-offset:4px}.aj-footer a:focus-visible{outline-color:#fff}.skip-link{position:fixed;z-index:1000;left:12px;top:-100px;background:white;padding:12px 20px;color:#012760}.skip-link:focus{top:12px}.preview-banner{background:#EAF7FE;text-align:center;padding:6px;font-size:13px;font-weight:700}.aj-header__toggle{cursor:pointer;background:white;border:2px solid #D5EEFD;border-radius:10px;min-width:44px;min-height:44px;align-items:center;justify-content:center;color:#012760}.aj-header__panel{padding-top:12px;padding-bottom:20px}.aj-header__panel .aj-nav-link{display:block;padding:10px 0}.aj-footer p{font-size:15px;line-height:1.65}.aj-footer nav h2{font-size:15px;line-height:1.4;margin:0 0 14px;font-weight:800;color:white}.aj-footer nav a{display:block;font-size:14px;line-height:1.5;text-decoration:none;margin-bottom:10px;color:inherit;overflow-wrap:anywhere}.aj-footer nav a:hover{text-decoration:underline}.aj-footer .footer-subhead{margin-top:24px}.footer-contact{display:flex;align-items:center;gap:9px;color:white;text-decoration:none;margin-top:14px;font-weight:700;font-size:15px}.aj-footer__bottom{padding-top:22px;padding-bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff33}.aj-footer__bottom nav{display:flex;flex-wrap:wrap;gap:20px}.aj-footer__bottom p{margin:0;font-size:12px}.aj-signature__name{white-space:normal}.aj-card a{overflow-wrap:anywhere}.s-page-hero{padding-top:40px;padding-bottom:64px}.s-page-hero>.aj-lead{max-width:800px}.s-page-hero__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:56px;align-items:start;margin-top:32px}.s-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;margin-bottom:24px}.s-grid-3,.s-grid-2{min-width:0}.aj-card__body>p:first-child{margin-top:0}.aj-card__body>p:last-child{margin-bottom:0}.aj-steps{list-style:none}.aj-step__head{display:flex;align-items:center;gap:16px}.s-faq details{border-bottom:1px solid #C0E6FB;padding:20px 0}.s-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-weight:700;list-style:none}.s-faq summary::-webkit-details-marker{display:none}.s-faq details p{max-width:80ch}.field-optional{font-weight:400;font-size:.85em}.s-small{font-size:14px;line-height:1.6}.s-form .aj-input,.s-form .aj-textarea{width:100%;box-sizing:border-box}.aj-textarea{resize:vertical}.s-form .aj-field__error{color:#B4232A;font-size:14px;margin:8px 0 0}.s-form [aria-invalid=true]{border-color:#B4232A}.form-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{font-size:15px;min-height:1.5em}.form-status.is-error{color:#B4232A}.aj-btn[disabled]{opacity:.7;cursor:wait}.s-contact aside a:not(.aj-btn){overflow-wrap:anywhere}.legal-content{max-width:900px}.legal-content h2{font-size:26px;margin-top:40px}.legal-content dt{font-weight:800;margin-top:18px}.legal-content dd{margin:4px 0 0}.s-photo{height:auto}.aj-tag{max-width:100%;white-space:normal}.aj-hand-note{max-width:100%}.aj-h1,.aj-display,.aj-h2,.aj-h3{overflow-wrap:break-word}.aj-step__title{hyphens:auto}.aj-callout__actions .aj-btn{height:auto;min-height:52px;white-space:normal}.aj-btn{min-height:44px}.aj-cta .s-actions{align-items:stretch}.aj-cta .s-actions .aj-btn{white-space:normal;height:auto;min-height:56px}.s-footer .aj-signature__role{font-size:15px}.aj-icon{flex-shrink:0}
@media(max-width:1023px){.s-page-hero__grid{grid-template-columns:1fr;gap:32px}.s-page-hero{padding-bottom:40px}.s-page-hero__grid>aside{max-width:none}.aj-footer__bottom{align-items:flex-start;flex-direction:column}.aj-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.s-page-hero{padding-top:28px}.aj-steps{grid-template-columns:1fr}.aj-signature__name{font-size:20px}.s-footer .aj-signature__name{font-size:28px}.s-actions .aj-btn{white-space:normal;height:auto;min-height:54px;max-width:100%}.aj-callout__actions .aj-btn{width:100%;text-align:center}.s-contact aside{order:initial}.aj-footer__bottom nav{display:block}.s-breadcrumb{font-size:12px}.aj-cta__title{font-size:32px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.s-form .aj-input{border-color:#7181A0}.s-form textarea.aj-input{height:auto;min-height:180px;line-height:1.7;padding:14px 16px;border-radius:12px;background:#fff;color:var(--aj-ink,#012760)}.s-page-hero>h1+.aj-lead{margin-top:24px}.aj-btn:disabled{cursor:not-allowed}.aj-btn[aria-busy=true]{cursor:wait}
:root{--text-link:var(--aj-blue-700)}.aj-step__num,.s-row__label{color:var(--aj-blue-700)}

.aj-footer nav a{padding-block:6px;line-height:1.3;margin-bottom:4px}.s-link-list a{line-height:1.35;text-wrap:pretty}.s-crumbs a{min-height:44px;display:inline-flex;align-items:center}.s-town__more{display:inline-flex;align-items:center;gap:8px}

/* ——— Corrections audit 2026-10-07 ——— */
/* B1 : encadrés à note manuscrite (740–1100 px) */
.aj-callout__aside .aj-hand-note{max-width:22ch}
.aj-callout__grid{grid-template-columns:minmax(0,1fr) minmax(0,auto)}
@container (max-width:720px){.aj-callout__grid{grid-template-columns:minmax(0,1fr)}.aj-callout__aside{justify-self:start;padding-right:0}}
/* A5 + I2 : bordure des champs dans la palette, état d’erreur visible */
.s-form .aj-input,.s-form .aj-textarea{border-color:var(--aj-placeholder)}
.s-form .aj-input[aria-invalid="true"],.s-form .aj-textarea[aria-invalid="true"]{border-color:var(--aj-danger-600);box-shadow:0 0 0 4px var(--aj-danger-100)}
/* I3 : un seul état désactivé / occupé */
.aj-btn[disabled],.aj-btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}
.aj-btn[aria-busy="true"]{cursor:wait}
/* I14 : tailles minimales */
.aj-signature__role{font-size:var(--fs-xs)}
.aj-footer__bottom p{font-size:var(--fs-xs)}
.field-optional{font-size:var(--fs-xs)}
.aj-field__hint,.s-form .aj-field__error,.s-small,.form-status{font-size:var(--fs-sm)}
/* I4 : en-tête des pages détaillées */
.s-hero__card{gap:20px;padding:clamp(24px,3vw,36px)}
.s-hero__card .aj-h3{margin:0;color:var(--aj-navy-900)}
/* I13 : cibles tactiles */
.s-faq summary{min-height:var(--tap-min,44px)}
@media (max-width:1023px){
  .aj-footer nav a,.footer-contact{display:flex;align-items:center;min-height:44px;margin:0;padding-block:0}
  .aj-footer nav h2{margin-bottom:6px}
  .aj-footer .footer-subhead{margin-top:20px}
  .aj-header .aj-signature{min-height:44px;justify-content:center}
}
@media (max-width:639px){
  .aj-footer__bottom nav{display:flex;flex-wrap:wrap;gap:0 24px}
  .aj-footer__bottom nav a{display:inline-flex;align-items:center;min-height:44px}
}
.s-contact aside a.aj-link,.s-slot a{display:inline-flex;align-items:center;min-height:44px}

@media (max-width:1023px){.s-hero__card{flex-direction:row;align-items:center;gap:20px;max-width:640px}.s-hero__card .aj-icon-circle{flex:none}}
@media (max-width:639px){.s-hero__card .aj-icon-circle--lg{width:72px;height:72px}}
.s-faq:has(> :only-child){grid-template-columns:minmax(0,1fr);max-width:var(--measure)}
.aj-footer__brand > p{margin-top:16px}

/* AJ_MOBILE_1_0_4_START */
@media (max-width: 639px) {
  .aj-hand-note__stroke { width: min(72%, 150px); }
  .aj-hand-note__stroke--2 { width: min(62%, 130px); }
  .aj-hand-note--left { margin-left: 6px; }
  .s-hero .s-eyebrow { display: none; }
  .aj-cta__title br { display: none; }
  .aj-cta__accent { display: block; text-wrap: balance; }
  .s-grid-3 .aj-card { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 16px; row-gap: 4px; align-items: start; padding: 20px; }
  .s-grid-3 .aj-card .aj-icon-circle { grid-row: 1 / span 2; width: 56px; height: 56px; }
  .s-grid-3 .aj-card > :not(.aj-icon-circle) { grid-column: 2; }
  .s-form #send-button { width: 100%; }
  .s-footer__site { display: none; }
  .s-footer .footer-subhead { margin-top: 0; }
  .s-footer__towns { display: flex; flex-wrap: wrap; gap: 8px; }
  .aj-footer nav .s-footer__towns a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; margin: 0; border: 2px solid rgba(255,255,255,.55); border-radius: 999px; font-size: 14px; font-weight: 600; line-height: 1.2; }
}
@media (max-width: 1239px) {
  .aj-header[data-menu-ready] .aj-header__panel { position: absolute; left: 0; right: 0; top: 100%; width: 100%; max-height: var(--aj-menu-space, calc(100vh - var(--header-h-mobile) - 1px)); max-height: var(--aj-menu-space, calc(100dvh - var(--header-h-mobile) - 1px)); overflow-y: auto; overscroll-behavior: contain; padding-bottom: max(20px, env(safe-area-inset-bottom)); }
  html.menu-open { overflow: hidden; padding-right: var(--aj-scrollbar-gap, 0px); }
}
.s-form #send-button { white-space: normal; max-width: 100%; height: auto; min-height: 56px; }
.s-form #send-button > span { min-width: 0; }
.aj-field__label { font-size: 1rem; }
.aj-step__num { font-size: 1.25rem; letter-spacing: 0; }
@media (max-width: 1023px) {
  .s-facts dd a, .legal-content dd a { display: inline-flex; align-items: center; min-height: 44px; }
}
/* AJ_MOBILE_1_0_4_END */

/* AJ_1_0_5_START — audit visuel et ergonomique du 16 octobre 2026 */
/* 1 · Échelle d’espacement : multiples de 4 px, alignée sur --space-* */
:root{--page-margin:clamp(20px,5vw,56px);--gap-xs:8px;--gap-sm:12px;--gap-md:clamp(16px,1.4vw,20px);--gap-lg:clamp(24px,2.4vw,32px);--gap-xl:clamp(40px,4.4vw,56px)}
.s-hero .aj-h1 + .aj-lead,.s-hero .aj-display + .aj-lead{margin-top:var(--gap-md)}
.s-actions{gap:var(--gap-sm)}
.s-where{gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-md)}
.s-grid-2:has(> .s-prose){row-gap:var(--gap-xl)}
.s-form__foot{display:grid;gap:var(--gap-md);justify-items:start}
.s-form__foot .form-status:empty{min-height:0}
.s-contact__zone{display:grid;gap:var(--gap-sm)}

/* 2 · Retours à la ligne et justification raisonnée */
.aj-lead,.aj-subtitle,.aj-callout__text,.aj-cta__text,.aj-cta__title,.aj-callout__title,.s-panel__title{text-wrap:balance}
.aj-display,.aj-h1,.aj-h2,.aj-h3,.aj-h4,.aj-step__title,.aj-card__title,.aj-service__title,.s-faq__q,.s-li__title{hyphens:manual;-webkit-hyphens:manual}
.s-prose,.s-faq__item,.s-row__main,.s-duo__card,.s-hero__grid > div:first-child,.legal-content{container:aj-texte / inline-size}
/* Justification du texte de lecture : déplacée dans AJ_1_0_8 (seuil recalibré de 560 à 600 px après mesure) */

/* 3 · Annotations manuscrites : alignées à droite de leur conteneur, pivot sur le coin bas-droit (aucun débordement) */
.aj-hand-note{max-width:min(100%,var(--hand-measure,24ch));transform-origin:100% 100%;margin-left:0}
.aj-hand-note--center{transform-origin:center}
.s-hero__note,.aj-callout__aside,.s-note{display:flex;justify-content:flex-end;justify-self:stretch;margin:0;padding:0 0 clamp(14px,1.6vw,24px)}
.aj-callout__aside{padding-right:0}
.s-brush{justify-content:flex-end}
.s-brush .aj-brush{width:min(100%,820px)}

/* 4 · Étapes : icône et titre sur la même ligne, textes alignés d’une colonne à l’autre */
.aj-steps{row-gap:var(--gap-xl);align-items:start}
.aj-step{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:var(--gap-sm);align-content:start}
.aj-step__head{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:14px;align-items:center;align-self:start}
.aj-step__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--icon-bg);color:var(--icon-stroke)}
.s-section--tint .aj-step__icon{background:#fff}
.aj-step__icon .aj-icon{width:24px;height:24px}
.aj-step__num{display:block;margin:0 0 3px;font-size:var(--fs-xs);font-weight:var(--fw-black);letter-spacing:.06em;line-height:1.2;text-transform:uppercase;color:var(--aj-blue-700)}
.aj-step__title{margin:0;line-height:1.25}
@container (max-width:1099px){.aj-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:520px){.aj-steps{grid-template-columns:minmax(0,1fr)}}
@media (max-width:639px){.aj-step__text{padding-left:62px}}

/* 5 · Autres associations icône + texte */
.s-mail{align-items:flex-start;padding-block:8px}
.s-mail > .aj-icon{margin-top:calc((1lh - 20px) / 2)}
.aj-link--arrow{display:inline-block;min-height:var(--tap-min);padding-block:10px;line-height:1.5}
.aj-link--arrow > .aj-icon{display:inline-block;vertical-align:-4px}
.aj-link--arrow > .aj-icon:last-child{margin-left:6px}
.aj-link--arrow > .aj-icon:first-child{margin-right:8px}
.s-li > div > .s-li__title{display:flex;align-items:center;min-height:48px}
@media (max-width:639px){
  .s-links .aj-card,.s-grid-2 > .aj-card:has(> .aj-icon-circle){display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;row-gap:6px;align-items:start;padding:20px}
  .s-links .aj-card > .aj-icon-circle,.s-grid-2 > .aj-card > .aj-icon-circle{grid-row:1 / span 2;width:56px;height:56px}
  .s-links .aj-card:has(> .aj-card__footer) > .aj-icon-circle,.s-grid-2 > .aj-card:has(> .aj-card__footer) > .aj-icon-circle{grid-row:1 / span 3}
  .s-links .aj-card > :not(.aj-icon-circle),.s-grid-2 > .aj-card > :not(.aj-icon-circle){grid-column:2}
  .s-links .aj-card > .aj-card__title,.s-grid-2 > .aj-card > .aj-card__title,.s-grid-3 .aj-card > .aj-card__title{display:flex;align-items:center;min-height:56px}
}

@media (max-width:639px){
  .s-row{grid-template-columns:56px minmax(0,1fr);column-gap:16px;row-gap:12px;align-items:center}
  .s-row > .aj-icon-circle{width:56px;height:56px;grid-column:1;grid-row:1}
  .s-row__main{display:contents}
  .s-row__main > .aj-h3{grid-column:2;grid-row:1}
  .s-row__main > :not(.aj-h3),.s-row__side{grid-column:1 / -1}
}

/* 6 · Cibles tactiles de 44 px aussi sur tablette paysage et écrans tactiles */
@media (max-width:1279px),(pointer:coarse){
  .aj-footer nav a,.footer-contact{display:flex;align-items:center;min-height:44px;margin:0;padding-block:0}
  .aj-footer nav h2{margin-bottom:6px}
  .aj-header .aj-signature{min-height:44px;justify-content:center}
}
/* 7 · Appels à l’action sur mobile : libellés sur une ligne, flèche jamais isolée */
.aj-link--arrow{text-wrap:balance}
@media (max-width:639px){.aj-cta{padding:clamp(24px,6vw,72px)}.aj-btn--lg{padding-inline:24px}}
.aj-cta__title br{display:none}
.aj-cta__accent{display:block}
/* AJ_1_0_5_END */
/* AJ_1_0_6_START — logo A « La case cochée » (en-tête et pied de page) */
.aj-logo-mark{flex:none;display:block;width:var(--logo-mark,46px);height:var(--logo-mark,46px);overflow:visible}
.aj-logo-mark__box{fill:none;stroke:currentColor;stroke-width:5.5;stroke-linejoin:round}
.aj-logo-mark__check{fill:none;stroke:var(--aj-blue-500);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}
.aj-signature--mark{flex-direction:row;align-items:center;gap:var(--logo-gap,14px)}
.aj-signature--stack{flex-direction:column;align-items:flex-start;gap:var(--logo-gap,16px)}
.aj-signature__text{display:flex;flex-direction:column;gap:3px;min-width:0}
.aj-header .aj-signature{--logo-mark:46px;--logo-gap:14px;flex:none;min-height:44px}
.aj-header__toggle{flex:none}
@media (max-width:1239px){.aj-header .aj-signature{--logo-mark:42px;--logo-gap:12px}}
@media (min-width:1240px) and (max-width:1319px){.aj-header .aj-signature{--logo-mark:40px;--logo-gap:10px}.aj-header__inner{gap:20px}.aj-header__nav{gap:26px}}
@media (max-width:389px){.aj-header .aj-signature{--logo-mark:36px;--logo-gap:10px}.aj-header__inner{gap:12px}}
@media (max-width:339px){.aj-header .aj-signature__role{display:none}}
@media (max-width:299px){.aj-header .aj-signature{--logo-mark:30px;--logo-gap:8px}.aj-header__inner{gap:8px}}
.s-footer .aj-signature{--logo-mark:clamp(52px,46px + 1.2vw,64px);--logo-gap:16px}
@media (forced-colors:active){.aj-logo-mark__box,.aj-logo-mark__check{stroke:CanvasText}}
/* AJ_1_0_6_END */

/* AJ_1_0_8_START — justification mesurée (audit typographique du 16 octobre 2026) */
/* Remplace AJ_1_0_7, qui justifiait tous les paragraphes, cartes, listes et le pied de page.
   Mesure sur les 28 pages × 10 formats : largeur réelle de l’espace entre les mots / espace normal de la police.
   Colonne ≥ 600 px (≈ 65 signes) : 22–27 % des lignes dépassent 2 fois l’espace normal, presque aucune 3 fois → justification conservée.
   Colonne < 600 px (mobiles, cartes, listes, encadrés, étapes, pied de page) : 45 à 75 % des lignes dépassaient 2 fois, jusqu’à 36 fois → fer à gauche. */

/* 1 · Texte de lecture (prose, réponses, textes légaux, introduction de page) : justifié seulement dans une colonne large */
@container aj-texte (min-width:600px){
  .s-prose > p,.s-faq__a,.s-row__main > .s-p,.s-duo__card > .s-p,.s-hero__text,.legal-content p{
    text-align:justify;text-align-last:left;
    text-wrap:wrap; /* « pretty » raccourcit l’avant-dernière ligne : une fois justifiée, elle s’étire davantage (mesuré) */
    hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:8 3 3;hyphenate-limit-lines:2;
    -webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;-webkit-hyphenate-limit-lines:2
  }
}

/* 2 · Textes courts et colonnes étroites : fer à gauche, sans césure automatique, sans mot isolé en dernière ligne */
.aj-card__body,.aj-service__text,.aj-step__text,.s-li__text,.s-where > span,.s-slot > span,.s-checks li > span,.s-link-list small,.s-next span,.aj-footer p,.aj-field__hint,.s-small{text-wrap:pretty}

/* 2 bis · Liens du pied de page sur deux lignes : lignes équilibrées, plus de mot seul (« Créer un outil adapté à votre / entreprise ») */
.aj-footer nav a{text-wrap:balance}

/* 3 · Chapeaux et accroches : lignes équilibrées sur tablette et ordinateur (règle 1.0.5 rétablie),
       « pretty » sur mobile, où ils dépassent souvent 6 lignes (au-delà, Chromium n’équilibre plus) et où l’équilibrage rétrécit le bloc */
@media (max-width:639px){.aj-lead,.aj-callout__text,.aj-cta__text{text-wrap:pretty}}
/* AJ_1_0_8_END */
