@font-face{font-family:'Lucid Display';src:url('/letterfall/mont-b.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Lucid Display';src:url('/letterfall/mont-x.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:'Lucid Text';src:url('/letterfall/sans-r.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Lucid Text';src:url('/letterfall/sans-m.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Lucid Text';src:url('/letterfall/sans-x.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}

:root{
	--t-primary:#0a1529;
	--t-highlight:#cdae4f;
	--t-accent-strong:#b79138;
	--t-page:#0c1d31;
	--t-card:#13294a;
	--t-body:#ffffff;
	--t-quiet:#bfbdbd;
	--t-border:#23395c;
	--t-stroke-heavy:#3a527e;
	--t-gradient-light:#745ca2;
	--t-grad-2:#193a5a;
	--t-warn-band:#c1272d;

	--g-2xs:4px; --g-xs:7px; --g-sm:11px; --g-md:17px; --g-lg:26px; --g-xl:40px; --g-2xl:60px; --g-3xl:90px;

	--r-2xs:0; --r-xs:0; --r-sm:4px; --r-md:6px; --r-lg:10px; --r-xl:14px; --r-2xl:18px; --r-3xl:24px;
	--r-lozenge:9999px; --r-dot:50%;

	--d-2xs:none; --d-xs:none; --d-sm:none;
	--d-md:0 0 0 1px rgba(0,0,0,0.06);
	--d-lg:0 0 0 2px rgba(0,0,0,0.10), 0 8px 24px rgba(0,0,0,0.10);
	--d-xl:0 0 0 2px rgba(0,0,0,0.14), 0 14px 34px rgba(0,0,0,0.22);
	--d-2xl:0 0 0 2px rgba(0,0,0,0.18), 0 20px 48px rgba(0,0,0,0.30);
	--d-3xl:0 0 0 3px rgba(0,0,0,0.22), 0 28px 64px rgba(0,0,0,0.38);

	--b-light:1px; --b-base:4px; --b-thick:6px;

	--f-lead:'Lucid Display','Trebuchet MS',sans-serif;
	--f-copy:'Lucid Text','Segoe UI',sans-serif;

	--z-xxl:56px; --z-h2:38px; --z-display-3:24px; --z-md-2:18px; --z-sm-2:15px;
	--z-micro-head:13px; --z-normal:16px; --z-caption:13px; --z-micro:11px;

	--l-close:1.06; --l-regular:1.4; --l-loose:1.6;
	--w-base:500; --w-medium:700; --w-bold:900;
	--e-narrow:-0.02em; --e-regular:0.02em; --e-airy:0.1em;

	--t-brisk:171ms; --t-mid:380ms; --t-calm:687ms;
	--x-settle:cubic-bezier(0.26, 0.61, 0.35, 0.97);
	--x-swing:cubic-bezier(0.44, 0.12, 0.57, 0.97);
	--x-elastic:cubic-bezier(0.35, 1, 0.55, 1.05);

	--v-outer:1200px;
	--v-text:1200px;
	--v-tight:510px;
	--v-inset-desktop:56px;
	--v-inset-tablet:32px;
	--v-pad-sm:16px;

	--h-height-desktop:56px;
	--h-size-mobile:52px;
	--sec-y:var(--g-xl);
	--shift-step:18px;
	--zoom-img:1.045;
}

@media (max-width:720px){
	:root{
		--z-xxl:34px; --z-h2:26px; --z-display-3:20px; --z-md-2:16px; --z-sm-2:14px;
		--z-micro-head:12px; --z-normal:15px; --z-caption:12px; --z-micro:10px;
		--v-inset-desktop:var(--v-pad-sm);
		--sec-y:var(--g-lg);
	}
}
@media (min-width:721px) and (max-width:1039px){
	:root{--v-inset-desktop:var(--v-inset-tablet)}
}

*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:clip}
html{-webkit-text-size-adjust:100%}
body{
	margin:0;
	background:var(--t-page);
	color:var(--t-body);
	font-family:var(--f-copy);
	font-size:var(--z-normal);
	font-weight:var(--w-base);
	line-height:var(--l-regular);
	letter-spacing:var(--e-regular);
}
img{max-width:100%;display:block}
h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere;margin:0}
h1{font-family:var(--f-lead);font-weight:var(--w-bold);font-size:clamp(28px,5.2vw,var(--z-xxl));line-height:var(--l-close);letter-spacing:var(--e-narrow);text-transform:uppercase}
h2{font-family:var(--f-lead);font-weight:var(--w-medium);font-size:clamp(24px,3.4vw,var(--z-h2));line-height:var(--l-close);letter-spacing:var(--e-narrow);text-transform:uppercase}
h3{font-family:var(--f-lead);font-weight:var(--w-medium);font-size:var(--z-display-3);line-height:var(--l-regular);letter-spacing:var(--e-regular)}
p{margin:0 0 var(--g-md)}
a{color:var(--t-highlight);text-decoration:none}
a:hover{color:var(--t-accent-strong)}
:focus-visible{outline:2px solid var(--t-highlight);outline-offset:2px}
main{display:block}
strong{font-weight:var(--w-medium)}

.skip-hop{position:absolute;left:var(--g-md);z-index:400;background:var(--t-highlight);color:var(--t-primary);padding:var(--g-sm) var(--g-md);border-radius:var(--r-sm);font-weight:var(--w-medium)}
.skip-hop:not(:focus){top:-200px !important}
.skip-hop:focus{top:var(--g-md)}

/* ─────────────────── shared section frames ─────────────────── */
.tablette-shell,.ardoise-shell,.piedestal-shell,.cour-shell,.palier-shell,
.secteur-shell,.trumeau-shell,.mur-shell,.vitrail-shell,.linteau-shell,
.quai-shell,.cartouche-shell,.zone-shell{
	width:100%;
	max-width:calc(var(--v-outer) + 2 * var(--v-inset-desktop));
	margin-inline:auto;
	padding-inline:var(--v-inset-desktop);
	display:block;
}
.tablette,.ardoise,.piedestal,.cour,.palier,.secteur,.trumeau,.mur,.vitrail,.linteau,.quai,.cartouche,.zone{
	padding-block:var(--sec-y);
}
.piedestal-shell p,.quai-content p,.cartouche-prose{max-width:var(--v-text)}

/* reveal: unfold */
html.js-on section[data-step] > div{
	clip-path:inset(100% 0 0 0);
	transform:translateY(var(--shift-step));
	transition:clip-path var(--t-calm) var(--x-settle),transform var(--t-calm) var(--x-settle);
}
html.js-on section[data-step].on-screen > div{clip-path:inset(0 0 0 0);transform:none}

/* ─────────────────── header: HEAD-UTIL ─────────────────── */
.rosace{
	position:sticky;
	top:0;
	z-index:100;
	background:var(--t-primary);
	border-block-end:1px solid var(--t-border);
	transition:box-shadow var(--t-mid) var(--x-settle);
}
.rosace.is-stuck{box-shadow:var(--d-xl)}
.rosace-hold{
	width:100%;
	max-width:calc(var(--v-outer) + 2 * var(--v-inset-desktop));
	margin-inline:auto;
	padding-inline:var(--v-inset-desktop);
	display:flex;
	align-items:center;
}
.rosace-strip{background:var(--t-primary);border-block-end:1px solid var(--t-border)}
.rosace-strip-hold{min-height:34px;gap:var(--g-sm);font-size:var(--z-micro);letter-spacing:var(--e-airy);text-transform:uppercase}
.rosace-chip{
	background:var(--t-warn-band);
	color:#ffffff;
	font-family:var(--f-lead);
	font-weight:var(--w-medium);
	font-size:var(--z-micro);
	letter-spacing:var(--e-regular);
	border-radius:var(--r-sm);
	padding:2px var(--g-xs);
	min-width:26px;
	text-align:center;
	flex-shrink:0;
}
.rosace-say{color:var(--t-quiet);letter-spacing:var(--e-regular);text-transform:none;font-size:var(--z-micro)}
.rosace-strip .rosace-href{color:var(--t-quiet);border-block-end:1px solid var(--t-stroke-heavy);white-space:nowrap}
.rosace-strip .rosace-href:hover{color:var(--t-highlight)}
.rosace-meta{margin-inline-start:auto;color:var(--t-quiet);white-space:nowrap}

.rosace-tier{background:var(--t-primary)}
.rosace-tier-hold{min-height:56px;gap:var(--g-md);padding-block:var(--g-xs)}
.rosace-brand{
	flex-shrink:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	background:var(--t-page);
	border:1px solid var(--t-stroke-heavy);
	border-radius:var(--r-dot);
	padding:6px 24px;
	order:2;
}
.rosace-figure{height:60px;width:auto;flex-shrink:0}
.rosace-links{order:3;flex:1 1 auto;min-width:0;display:flex;justify-content:flex-start}
.rosace-roll{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	align-items:center;
	gap:var(--g-sm);
	flex-wrap:nowrap;
}
.rosace-piece{position:relative;flex:0 0 auto}
.rosace-roll > .rosace-piece > .rosace-href{
	display:block;
	color:var(--t-body);
	font-family:var(--f-copy);
	font-size:16px;
	font-weight:500;
	font-variant:small-caps;
	font-variant-caps:small-caps;
	letter-spacing:var(--e-regular);
	white-space:nowrap;
	padding:var(--g-xs) 2px;
	transition:color var(--t-brisk) var(--x-settle);
}
.rosace-roll > .rosace-piece > .rosace-href:hover{color:var(--t-highlight)}
.rosace-roll > .rosace-piece > .rosace-href[aria-current='page']{color:var(--t-highlight)}
.rosace-roll > .rosace-piece > .rosace-href[aria-current='page']::after{
	content:'';
	display:block;
	width:5px;
	height:5px;
	border-radius:var(--r-dot);
	background:var(--t-highlight);
	margin:3px auto 0;
}
.rosace-extra{position:relative}
.rosace-extra[hidden]{display:none}
.rosace-extra-tap{
	background:transparent;
	border:0;
	color:var(--t-body);
	font-family:var(--f-copy);
	font-size:16px;
	font-weight:500;
	font-variant:small-caps;
	font-variant-caps:small-caps;
	cursor:pointer;
	padding:var(--g-xs) 2px;
	white-space:nowrap;
}
.rosace-extra-tap:hover{color:var(--t-highlight)}
.rosace-extra-pop{
	position:absolute;
	inset-block-start:calc(100% + 10px);
	inset-inline-end:0;
	list-style:none;
	margin:0;
	padding:var(--g-xs) 0;
	min-width:220px;
	background:var(--t-card);
	border:1px solid var(--t-stroke-heavy);
	border-radius:var(--r-md);
	box-shadow:var(--d-2xl);
	display:none;
	z-index:140;
}
.rosace-extra-pop.is-open{display:block}
.rosace-extra-pop .rosace-piece{display:block;width:100%}
.rosace-extra-pop .rosace-href{display:block;padding:var(--g-xs) var(--g-md);color:var(--t-body);font-size:var(--z-caption);font-variant:small-caps;font-variant-caps:small-caps;white-space:nowrap}
.rosace-extra-pop .rosace-href:hover{color:var(--t-highlight)}
.rosace-extra-pop .rosace-href[aria-current='page']::after{display:none}

.rosace-deck{order:4;display:flex;align-items:center;gap:var(--g-sm);flex-shrink:0;margin-inline-start:auto}
.rosace-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding-inline:var(--g-lg);
	background:var(--t-page);
	color:var(--t-body);
	border:2px solid var(--t-highlight);
	border-radius:var(--r-md);
	font-family:var(--f-lead);
	font-weight:var(--w-medium);
	font-size:var(--z-micro-head);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	white-space:nowrap;
	flex-shrink:0;
}
.rosace-button:hover{background:var(--t-primary);color:var(--t-highlight)}

.rosace-tap{
	order:1;
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:6px;
	width:46px;
	height:46px;
	padding:0 10px;
	background:transparent;
	border:0;
	cursor:pointer;
}
.rosace-bar{display:block;height:2px;width:100%;background:var(--t-body);border-radius:var(--r-lozenge)}
.rosace-tap[aria-expanded='true'] .rosace-bar{background:var(--t-highlight)}

.rosace-pane{display:none;background:var(--t-primary);border-block-start:1px solid var(--t-border)}
.rosace-pane.is-open{display:block;}
.rosace-pane-links{display:block}
.rosace-pane-roll{list-style:none;margin:0;padding:var(--g-sm) var(--v-pad-sm) var(--g-md);display:flex;flex-direction:column}
.rosace-pane-piece{display:block}
.rosace-pane-piece .rosace-href{
	display:block;
	padding:var(--g-sm) 0;
	color:var(--t-body);
	font-size:var(--z-md-2);
	font-variant:small-caps;
	font-variant-caps:small-caps;
	border-block-end:1px solid var(--t-border);
}
.rosace-pane-piece:last-child .rosace-href{border-block-end:0}
.rosace-pane-piece .rosace-href[aria-current='page']{color:var(--t-highlight)}

@media (max-width:1039px){
	.rosace-links{display:none}
	.rosace-brand{order:1;margin-inline-end:auto;padding:6px 18px}
	.rosace-tap{order:3}
	.rosace-figure{height:42px}
	.rosace-tier-hold{min-height:var(--h-size-mobile);gap:var(--g-sm)}
	.rosace-meta{display:none}
	.rosace-deck{order:2;margin-inline-start:0}
	.rosace-button{min-height:44px;padding-inline:var(--g-md);font-size:var(--z-micro)}
}
@media (min-width:1040px){
	.rosace-links{display:flex}
	.rosace-roll{display:flex}
	.rosace-tap{display:none}
	.rosace-pane,.rosace-pane.is-open{display:none !important}
}
@media (max-width:620px){
	.rosace-say{display:none}
	.rosace-strip-hold{min-height:30px}
	.rosace-button{max-width:46vw;white-space:normal;text-align:center;line-height:1.15;padding-block:var(--g-2xs)}
}
@media (max-width:420px){
	.rosace-brand{padding:5px 12px}
	.rosace-figure{height:36px}
	.rosace-button{font-size:10px;padding-inline:var(--g-sm)}
}

/* ─────────────────── hero: HERO-06 ─────────────────── */
.tablette{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--t-page) 0%,var(--t-grad-2) 62%,var(--t-gradient-light) 160%)}
.tablette-shell{position:relative;min-height:560px;display:flex;align-items:center}
.tablette-content{position:relative;z-index:2;width:46%;padding-block:var(--g-2xl)}
.tablette-chip{
	display:inline-block;
	font-family:var(--f-copy);
	font-size:var(--z-micro-head);
	font-weight:var(--w-bold);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	color:var(--t-highlight);
	margin-block-end:var(--g-sm);
}
.tablette-content h1{margin-block-end:var(--g-md)}
.tablette-kicker{font-size:var(--z-sm-2);line-height:var(--l-loose);color:var(--t-quiet);max-width:var(--v-tight)}
.tablette-deck{display:flex;flex-direction:column;align-items:flex-start;gap:var(--g-xs);margin-block-start:var(--g-lg)}
.tablette-meta{font-size:var(--z-micro);letter-spacing:var(--e-airy);text-transform:uppercase;color:var(--t-quiet)}
.tablette-figure{
	position:absolute;
	inset-inline-end:0;
	inset-block-start:-40px;
	width:50%;
	height:calc(100% + 80px);
	margin:0;
	z-index:1;
	transform:rotate(2deg);
	border:1px solid var(--t-stroke-heavy);
	overflow:hidden;
	box-shadow:var(--d-lg);
	transition:transform var(--t-calm) var(--x-settle);
}
.tablette-figure:hover{transform:rotate(0deg) scale(1.02)}
.tablette-figure img{width:100%;height:100%;object-fit:cover}
@media (max-width:1039px){
	.tablette-shell{min-height:0;display:block}
	.tablette-content{width:100%;padding-block:var(--g-xl)}
	.tablette-figure{position:static;width:100%;height:240px;transform:none;inset-block-start:auto;margin-block-end:var(--g-lg)}
	.tablette-figure:hover{transform:none}
}

/* ─────────────────── items grid: GRID-03 ─────────────────── */
.ardoise-head{margin-block-end:var(--g-lg)}
.ardoise-roll{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--g-md)}
.ardoise-tile{
	grid-column:span 12;
	background:var(--t-card);
	border:1px solid var(--t-border);
	border-radius:var(--r-md);
	padding:var(--g-lg);
	display:flex;
	flex-direction:column;
	gap:var(--g-sm);
}
.ardoise-badge{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 auto;border:1px solid var(--t-stroke-heavy);border-radius:var(--r-sm);background:var(--t-primary)}
.ardoise-glyph{width:22px;height:22px;fill:var(--t-highlight)}
.ardoise-title{font-size:var(--z-md-2);font-weight:var(--w-medium);color:var(--t-body)}
.ardoise-prose{font-size:var(--z-normal);line-height:var(--l-regular);color:var(--t-quiet);margin:0}
@media (min-width:1040px){
	.ardoise-tile:nth-child(4n+1){grid-column:span 7}
	.ardoise-tile:nth-child(4n+2){grid-column:span 5}
	.ardoise-tile:nth-child(4n+3){grid-column:span 5}
	.ardoise-tile:nth-child(4n+4){grid-column:span 7}
}
@media (min-width:721px) and (max-width:1039px){
	.ardoise-tile{grid-column:span 6}
}

/* ─────────────────── prose: PROSE-04 (drop cap) ─────────────────── */
.piedestal-shell > .piedestal-head:first-child{margin-block-start:0}
.piedestal-head{margin-block-start:var(--g-lg);margin-block-end:var(--g-md);color:var(--t-highlight);text-align:start;font-size:clamp(23px,3vw,32px)}
.piedestal-shell > p{line-height:var(--l-loose);color:var(--t-quiet)}
.piedestal-shell > p:first-of-type::first-letter{
	float:left;
	font-family:var(--f-lead);
	font-weight:var(--w-bold);
	font-size:4.4em;
	line-height:0.8;
	color:var(--t-highlight);
	padding-inline-end:var(--g-sm);
	padding-block-start:4px;
}
.piedestal-href{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size var(--t-mid) var(--x-settle)}
.piedestal-href:hover{background-size:100% 1px}
.piedestal-roll,.piedestal-steps{color:var(--t-quiet);line-height:var(--l-loose);margin:0 0 var(--g-md);padding-inline-start:var(--g-lg)}
.piedestal-roll{list-style:square}
.piedestal-steps{list-style:decimal}
.piedestal-piece{margin-block-end:var(--g-xs)}
.piedestal-figure{margin:var(--g-lg) auto 0;max-width:760px;overflow:hidden;border:1px solid var(--t-stroke-heavy);background:var(--t-primary)}
.piedestal-figure img{width:100%;height:auto;object-fit:contain;transition:transform var(--t-calm) var(--x-settle)}
.piedestal-figure:hover img{transform:scale(var(--zoom-img))}
.piedestal-figure--wide{max-width:760px}
.piedestal-figure--square{max-width:560px}
.piedestal-figure--tall{max-width:380px}
@media (max-width:720px){
	.piedestal-figure,.piedestal-figure--wide{max-width:100%}
	.piedestal-figure--square{max-width:88%}
	.piedestal-figure--tall{max-width:74%}
	.piedestal-shell > p:first-of-type::first-letter{font-size:3.6em}
}

/* ─────────────────── reviews: REV-02 ─────────────────── */
.cour-head{margin-block-end:var(--g-lg)}
.cour-roll{display:block}
.cour-piece{
	position:relative;
	max-width:var(--v-tight);
	margin-inline:auto;
	margin-block:var(--g-lg);
	padding-block:var(--g-md);
	border-block-end:1px solid var(--t-border);
}
.cour-piece:last-child{border-block-end:0}
.cour-piece::before{
	content:'\201C';
	position:absolute;
	inset-block-start:-18px;
	inset-inline-start:-34px;
	font-family:var(--f-lead);
	font-size:var(--z-xxl);
	line-height:1;
	color:var(--t-highlight);
}
.cour-quote{margin:0}
.cour-quote p{font-family:var(--f-lead);font-size:var(--z-md-2);font-style:italic;line-height:var(--l-regular);color:var(--t-body);margin:0}
.cour-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--g-sm);margin-block-start:var(--g-sm);font-size:var(--z-caption);color:var(--t-quiet)}
.cour-name{font-style:normal;font-weight:var(--w-medium);color:var(--t-body)}
.cour-stars{color:var(--t-highlight);letter-spacing:var(--e-regular)}
.cour-stamp{color:var(--t-quiet)}
@media (max-width:720px){
	.cour-piece::before{inset-inline-start:-4px;inset-block-start:-26px}
	.cour-piece{padding-block-start:var(--g-lg)}
}

/* ─────────────────── faq: FAQ-01 ─────────────────── */
.palier-head{margin-block-end:var(--g-lg)}
.palier-roll{margin:0}
.palier-piece{border-block-end:1px solid var(--t-border);padding-block:var(--g-md)}
.palier-tier{margin:0}
.palier-title{font-size:var(--z-sm-2);margin:0}
.palier-tap{
	width:100%;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--g-md);
	text-align:left;
	background:transparent;
	border:0;
	padding:0;
	cursor:pointer;
	color:var(--t-body);
	font-family:var(--f-copy);
	font-size:var(--z-sm-2);
	font-weight:var(--w-bold);
	line-height:var(--l-regular);
	min-height:44px;
}
.palier-tap:hover{color:var(--t-highlight)}
.palier-chip{
	flex:0 0 auto;
	width:24px;
	height:24px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:var(--z-display-3);
	line-height:1;
	color:var(--t-highlight);
	transition:transform var(--t-mid) var(--x-swing);
}
.palier-piece.is-open .palier-chip{transform:rotate(180deg)}
.palier-say{display:grid;grid-template-rows:0fr;margin:0;transition:grid-template-rows var(--t-mid) var(--x-swing)}
.palier-piece.is-open .palier-say{grid-template-rows:1fr}
.palier-content{overflow:hidden}
.palier-content p{margin:var(--g-sm) 0 0;font-size:var(--z-normal);line-height:var(--l-loose);color:var(--t-quiet)}

/* ─────────────────── table: TABLE-04 ─────────────────── */
.secteur-head{font-family:var(--f-copy);font-size:var(--z-micro-head);font-weight:var(--w-bold);letter-spacing:var(--e-airy);text-transform:uppercase;color:var(--t-quiet);margin-block-end:var(--g-md)}
.secteur-frame{overflow-x:auto;border:1px solid var(--t-border);border-radius:var(--r-md)}
.secteur-grid{width:100%;min-width:560px;border-collapse:collapse;font-size:var(--z-caption)}
.secteur-grid th{
	background:var(--t-primary);
	color:var(--t-highlight);
	font-family:var(--f-copy);
	font-weight:var(--w-bold);
	font-size:var(--z-micro);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	text-align:left;
	padding:var(--g-sm) var(--g-md);
	border-block-end:1px solid var(--t-stroke-heavy);
}
.secteur-grid th:first-child{border-inline-end:4px solid var(--t-highlight)}
.secteur-grid td{background:var(--t-card);color:var(--t-quiet);padding:var(--g-sm) var(--g-md);border-block-start:1px solid var(--t-border)}
.secteur-lead{background:var(--t-primary);color:var(--t-body);font-weight:var(--w-medium);border-inline-end:4px solid var(--t-highlight)}
@media (max-width:720px){
	.secteur-grid{min-width:480px;font-size:var(--z-micro)}
	.secteur-grid th,.secteur-grid td{padding:var(--g-xs) var(--g-sm)}
}

/* ─────────────────── cta block: CTA-06 ─────────────────── */
.trumeau{background:var(--t-highlight);padding-block:var(--g-lg);position:relative}
.trumeau-shell{display:flex;align-items:center;justify-content:space-between;gap:var(--g-md);flex-wrap:wrap;min-height:80px}
.trumeau-title{font-family:var(--f-lead);font-weight:var(--w-medium);font-size:var(--z-md-2);color:var(--t-primary);margin:0;max-width:var(--v-tight);text-transform:uppercase;letter-spacing:var(--e-narrow)}
.trumeau-deck{display:flex;flex-direction:column;align-items:flex-start;gap:var(--g-2xs)}
.trumeau-meta{font-size:var(--z-micro);letter-spacing:var(--e-airy);text-transform:uppercase;color:var(--t-primary)}
.trumeau-shut{
	position:absolute;
	inset-block-start:var(--g-xs);
	inset-inline-end:var(--g-sm);
	width:28px;
	height:28px;
	border:0;
	background:var(--t-highlight);
	color:var(--t-primary);
	font-size:var(--z-md-2);
	line-height:1;
	cursor:pointer;
	border-radius:var(--r-sm);
}
.trumeau-shut:hover{background:var(--t-accent-strong);color:var(--t-primary)}
.trumeau.is-hidden .trumeau-shell,.trumeau.is-hidden .trumeau-shut{display:none}
.trumeau-plug{padding-block:var(--g-md)}
.trumeau-plug-hold{
	width:100%;
	max-width:calc(var(--v-outer) + 2 * var(--v-inset-desktop));
	margin-inline:auto;
	padding-inline:var(--v-inset-desktop);
	display:flex;
	align-items:center;
	gap:var(--g-md);
	flex-wrap:wrap;
}
.trumeau-plug .trumeau-meta{color:var(--t-quiet);text-transform:none;letter-spacing:var(--e-regular);font-size:var(--z-caption)}
@media (max-width:720px){
	.trumeau-shell{flex-direction:column;align-items:flex-start}
}

/* ─────────────────── byline: BYLINE-05 ─────────────────── */
.mur{background:var(--t-primary);padding-block:var(--g-lg)}
.mur-shell{display:flex;align-items:center;justify-content:space-between;gap:var(--g-md);flex-wrap:wrap}
.mur-content{display:flex;align-items:center;gap:var(--g-md)}
.mur-face{width:56px;height:56px;flex:0 0 auto;border-radius:var(--r-dot);object-fit:cover;border:1px solid var(--t-stroke-heavy)}
.mur-lede{display:block}
.mur-name{margin:0;font-size:var(--z-normal);color:var(--t-body)}
.mur-chip{
	display:inline-block;
	background:var(--t-highlight);
	color:var(--t-primary);
	font-size:var(--z-micro);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	padding:2px var(--g-xs);
	border-radius:var(--r-sm);
	margin-inline-end:var(--g-2xs);
}
.mur-href{color:var(--t-highlight);font-weight:var(--w-medium)}
.mur-role{margin:2px 0 0;font-size:var(--z-caption);color:var(--t-quiet)}
.mur-cta{
	display:inline-flex;
	align-items:center;
	min-height:44px;
	padding:var(--g-sm) var(--g-md);
	border:1px solid var(--t-highlight);
	border-radius:var(--r-sm);
	background:var(--t-card);
	color:var(--t-body);
	font-size:var(--z-caption);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
}
.mur-cta:hover{background:var(--t-primary);color:var(--t-highlight)}
@media (max-width:720px){
	.mur-cta{width:100%;justify-content:center}
}

/* ─────────────────── author card: AUTH-01 ─────────────────── */
.vitrail-tile{
	display:grid;
	grid-template-columns:160px 1fr;
	gap:var(--g-xl);
	background:var(--t-card);
	border:1px solid var(--t-border);
	border-radius:var(--r-lg);
	padding:var(--g-xl) var(--g-lg);
}
.vitrail-face{width:160px;height:160px;border-radius:var(--r-dot);overflow:hidden;border:1px solid var(--t-stroke-heavy)}
.vitrail-face img{width:100%;height:100%;object-fit:cover;object-position:center top}
.vitrail-content{display:flex;flex-direction:column;gap:var(--g-sm)}
.vitrail-role{margin:0;font-size:var(--z-caption);font-weight:var(--w-medium);letter-spacing:var(--e-airy);text-transform:uppercase;color:var(--t-highlight)}
.vitrail-name,h1.vitrail-name{margin:0;font-family:var(--f-lead);font-weight:var(--w-bold);font-size:clamp(24px,3.4vw,var(--z-h2));line-height:var(--l-close);text-transform:uppercase;color:var(--t-body)}
.vitrail-prose{margin:0;line-height:var(--l-loose);color:var(--t-quiet)}
.vitrail-roll{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--g-xs)}
.vitrail-chip{
	background:var(--t-primary);
	color:var(--t-body);
	border-radius:var(--r-lozenge);
	padding:var(--g-2xs) var(--g-sm);
	font-size:var(--z-micro);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
}
@media (max-width:720px){
	.vitrail-tile{grid-template-columns:1fr;gap:var(--g-md)}
	.vitrail-face{width:120px;height:120px;margin-inline:auto}
}

/* ─────────────────── page header: PHEAD-04 ─────────────────── */
.linteau{background:var(--t-primary)}
.linteau-shell{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--g-2xl);align-items:end}
.linteau-strip{display:block}
.linteau-strip--aside{padding-block-start:var(--g-xs)}
.linteau-chip{
	display:inline-block;
	font-size:var(--z-micro-head);
	font-weight:var(--w-bold);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	color:var(--t-highlight);
	margin-block-end:var(--g-sm);
}
.linteau-prose{margin:0;line-height:var(--l-loose);color:var(--t-quiet)}
@media (max-width:1039px){
	.linteau-shell{grid-template-columns:1fr;gap:var(--g-md)}
}

/* ─────────────────── legal: LEGAL-03 ─────────────────── */
.quai-shell{display:grid;grid-template-columns:240px 1fr;gap:var(--g-2xl);align-items:start}
.quai-toc{position:sticky;top:130px;padding:var(--g-md);background:var(--t-card);border:1px solid var(--t-border);border-radius:var(--r-md)}
.quai-head{margin:0 0 var(--g-sm);font-size:var(--z-micro-head);font-weight:var(--w-bold);letter-spacing:var(--e-airy);text-transform:uppercase;color:var(--t-body)}
.quai-roll{margin:0;padding-inline-start:var(--g-md);font-size:var(--z-caption);color:var(--t-quiet)}
.quai-piece{margin-block-end:var(--g-xs);line-height:var(--l-regular)}
.quai-href{color:var(--t-quiet)}
.quai-href:hover{color:var(--t-highlight)}
.quai-content{display:block}
.quai-title{margin-block:var(--g-lg) var(--g-sm);font-size:clamp(22px,2.6vw,var(--z-display-3));color:var(--t-highlight);scroll-margin-top:140px}
.quai-content p{line-height:var(--l-loose);color:var(--t-quiet)}
.quai-aid{margin:0 0 var(--g-md);padding-inline-start:var(--g-lg);color:var(--t-quiet);line-height:var(--l-loose)}
.quai-note{font-size:var(--z-caption);color:var(--t-quiet);border-inline-start:4px solid var(--t-highlight);padding-inline-start:var(--g-md)}
@media (max-width:1039px){
	.quai-shell{grid-template-columns:1fr;gap:var(--g-lg)}
	.quai-toc{position:static}
}

/* ─────────────────── contact form: FORM-01 ─────────────────── */
.zone-prose{line-height:var(--l-loose);color:var(--t-quiet);margin-block-end:var(--g-lg)}
.zone-done{display:none;padding:var(--g-md);background:#0f3323;border:1px solid #2f7a55;color:var(--t-body);border-radius:var(--r-sm);margin-block-end:var(--g-md)}
.zone-done.is-visible{display:block}
.zone-form{display:flex;flex-direction:column;gap:var(--g-md);background:var(--t-card);padding:var(--g-lg);border:1px solid var(--t-border);border-radius:var(--r-md)}
.zone-box{display:flex;flex-direction:column;gap:var(--g-xs)}
.zone-tag{font-weight:var(--w-medium);font-size:var(--z-caption);letter-spacing:var(--e-airy);text-transform:uppercase;color:var(--t-body)}
.zone-input{
	font-family:var(--f-copy);
	font-size:var(--z-normal);
	color:var(--t-body);
	background:var(--t-page);
	border:1px solid var(--t-stroke-heavy);
	border-radius:var(--r-md);
	padding:var(--g-sm) var(--g-md);
	height:48px;
}
.zone-area{min-height:120px;height:auto;resize:vertical}
.zone-input:focus{border-color:var(--t-highlight);outline:none}
.zone-send{
	align-self:flex-start;
	min-height:48px;
	padding-inline:var(--g-xl);
	background:var(--t-highlight);
	color:var(--t-primary);
	border:0;
	border-radius:var(--r-md);
	font-family:var(--f-lead);
	font-weight:var(--w-bold);
	font-size:var(--z-micro-head);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	cursor:pointer;
}
.zone-send:hover{background:var(--t-accent-strong);color:var(--t-primary)}
.zone-note{margin-block-start:var(--g-md);font-size:var(--z-caption);color:var(--t-quiet)}
.zone-href{color:var(--t-highlight)}

/* ─────────────────── error: ERR-03 ─────────────────── */
.cartouche-content{max-width:var(--v-tight);margin-inline:auto;text-align:center}
.cartouche-content h1{font-size:clamp(26px,4vw,var(--z-h2));margin-block-end:var(--g-md)}
.cartouche-prose{line-height:var(--l-loose);color:var(--t-quiet);margin-inline:auto}
.cartouche-href{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding-inline:var(--g-lg);
	background:var(--t-highlight);
	color:var(--t-primary);
	border-radius:var(--r-md);
	font-family:var(--f-lead);
	font-weight:var(--w-medium);
	font-size:var(--z-micro-head);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
}
.cartouche-href:hover{background:var(--t-accent-strong);color:var(--t-primary)}

/* ─────────────────── cookie: COOK-15 side sheet ─────────────────── */
.aile{
	position:fixed;
	inset-block:0;
	inset-inline-end:0;
	width:min(360px,100vw);
	background:var(--t-card);
	border-inline-start:1px solid var(--t-stroke-heavy);
	z-index:160;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
}
.aile.is-hidden{clip-path:inset(0 0 0 100%);opacity:0;visibility:hidden;pointer-events:none}
.aile-hold{padding:var(--g-xl);display:flex;flex-direction:column;gap:var(--g-md)}
.aile-say{font-size:var(--z-caption);line-height:var(--l-loose);color:var(--t-quiet);margin:0}
.aile-deck{display:flex;flex-direction:column;gap:var(--g-sm)}
.aile-yes,.aile-deny{
	width:100%;
	min-height:44px;
	border-radius:var(--r-md);
	font-family:var(--f-lead);
	font-weight:var(--w-medium);
	font-size:var(--z-micro-head);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	cursor:pointer;
}
.aile-yes{background:var(--t-highlight);color:var(--t-primary);border:0}
.aile-yes:hover{background:var(--t-accent-strong);color:var(--t-primary)}
.aile-deny{background:var(--t-primary);color:var(--t-body);border:1px solid var(--t-stroke-heavy)}
.aile-deny:hover{background:var(--t-page);color:var(--t-highlight)}
@media (max-width:700px){
	.aile{inset-block:auto 0;inset-inline:0;width:100vw;height:auto;border-inline-start:0;border-block-start:1px solid var(--t-stroke-heavy)}
	.aile-hold{padding:12px 14px;gap:8px;font-size:13px;line-height:1.35}
	.aile-say{font-size:13px;line-height:1.35}
	.aile-deck{flex-direction:row}
	.aile-yes,.aile-deny{padding:8px 14px;font-size:12px;min-height:40px}
}

/* ─────────────────── footer: FOOT-04 ─────────────────── */
.repere{background:var(--t-primary);border-block-start:1px solid var(--t-border)}
.repere-hold{
	flex-wrap:wrap;
	width:100%;
	max-width:calc(var(--v-outer) + 2 * var(--v-inset-desktop));
	margin-inline:auto;
	padding-inline:var(--v-inset-desktop);
	min-height:64px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--g-md);
}
.repere-note{font-size:var(--z-micro);color:var(--t-quiet);flex:1 1 320px;min-width:0}
.repere-name{white-space:nowrap}
.repere-links{display:flex;align-items:center;gap:var(--g-sm);flex:0 0 auto;flex-wrap:nowrap}
.repere-href{
	font-size:var(--z-micro);
	letter-spacing:var(--e-airy);
	text-transform:uppercase;
	color:var(--t-quiet);
	padding-inline-start:var(--g-sm);
	border-inline-start:1px solid var(--t-stroke-heavy);
}
.repere-href:first-child{border-inline-start:0;padding-inline-start:0}
.repere-href:hover{color:var(--t-body)}
@media (max-width:720px){
	.repere-hold{min-height:80px;flex-direction:column;align-items:flex-start;justify-content:center;padding-block:var(--g-sm);gap:var(--g-xs)}
}

@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation:none !important;transition-duration:0.01ms !important}
	html.js-on section[data-step] > div{clip-path:none;transform:none}
}
.vignette-cta{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--g-lg);min-height:46px;border-radius:var(--r-md);border:2px solid var(--t-highlight);font-size:var(--z-micro-head);font-weight:var(--w-medium);letter-spacing:var(--e-airy)}
.vignette-cta{
  background:#059669;color:#0A1529;text-decoration:none;text-transform:uppercase;
  transition:background var(--t-mid) var(--x-settle),color var(--t-mid) var(--x-settle),transform var(--t-mid) var(--x-settle);}
.vignette-cta.vignette-cta{color:#0A1529;text-decoration:none;}
.vignette-cta:hover{background:#047857;color:#FFFFFF;animation:none}
.vignette-cta.vignette-cta:hover{color:#FFFFFF;text-decoration:none}
.vignette-cta:hover::after{animation:none}
.vignette-cta:active{background:#065F46;color:#FFFFFF}
.vignette-cta:focus-visible{outline:3px solid #0A1529;outline-offset:3px}
.vignette-cta{animation:vignette-beat 1.45s var(--x-swing) infinite}
@keyframes vignette-beat{0%{transform:translateY(0)}26.207%{transform:translateY(-4px)}68.966%,100%{transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.vignette-cta,.vignette-cta::after{animation:none!important;transition:none!important}}
.trumeau .vignette-cta,.trumeau-plug .vignette-cta{box-shadow:0 0 0 2px var(--t-primary)}
.rosace-deck .vignette-cta{font-size:var(--z-micro-head);padding-inline:var(--g-lg)}
@media (max-width:620px){.rosace-deck .vignette-cta{font-size:var(--z-micro);padding-inline:var(--g-sm);max-width:46vw;white-space:normal;text-align:center;line-height:1.15;letter-spacing:var(--e-regular)}}
@media (max-width:420px){.rosace-deck .vignette-cta{font-size:9px;padding-inline:var(--g-xs);max-width:42vw}}

.tablette-cta,.trumeau-cta{flex:0 0 auto}
.tablette-deck .tablette-cta{min-height:50px}
.trumeau-deck .trumeau-cta{min-height:48px}
.rosace-menu-grip{margin-inline-start:0}

#top{scroll-margin-top:140px}
@media (max-width:860px){
	.repere-links{flex-wrap:wrap}
	.repere-href:first-child{border-inline-start:0;padding-inline-start:0}
}

@media (max-width: 1051px) {
  .rosace-links,
  .rosace-roll { display: none !important; }
  .rosace-tap { display: flex !important; }
}
