/* Accueil Petrini (gabarit petrini-home) : page d'orientation en vidéo, validée le 29/09/2026. Se charge après petrini.css. */
.pl-hub{--ink2:#2A1411;--sand:#D4B48C}
.pl-hub .pl-main{padding:0}
.h-main p{max-width:none;margin:0}
.h-sec{padding:var(--s4) var(--gutter)}
.h-alt{background:var(--paper2)}
.h-eb{font:600 .7rem/1 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--terra-deep);display:inline-flex;align-items:center;gap:10px}
.h-eb::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
/* Verre sans flou : sur une vidéo, backdrop-filter recalcule le flou à chaque image et fait saccader (retour de Paolo, 29/09). */
.h-glass{background:rgba(42,20,17,.34);box-shadow:inset 0 0 0 1px rgba(255,255,255,.26),inset 0 1px 0 rgba(255,255,255,.3)}
.h-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.h-main a{text-decoration:none}

/* Héros vidéo */
.h-hero{position:relative;height:100svh;min-height:600px;color:#fff;overflow:hidden;background:var(--ink2)}
.h-hero picture,.h-poster,.h-hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h-hv{transform:translateZ(0);opacity:0;transition:opacity 1.2s var(--ease)}
.h-hv.on{opacity:1}
.h-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,20,17,.45) 0%,rgba(42,20,17,0) 26%,rgba(42,20,17,0) 38%,rgba(42,20,17,.72) 74%,rgba(42,20,17,.92) 100%)}
.h-hero-c{position:absolute;z-index:2;left:var(--gutter);right:var(--gutter);bottom:calc(90px + env(safe-area-inset-bottom,0px));max-width:var(--max);margin:0 auto}
.h-hero .h-eb{color:#fff;opacity:.9}
.h-hero h1{color:#fff;font-size:clamp(2.3rem,1.6rem + 3.8vw,4.6rem);line-height:1.02;margin:14px 0 12px;max-width:13ch}
.h-lede{font-size:clamp(.98rem,.9rem + .3vw,1.12rem);color:rgba(255,255,255,.86);max-width:36ch!important;margin-bottom:22px!important}
.h-line{display:block;overflow:hidden;padding-bottom:.08em}
.h-line>span{display:block;transform:translateY(105%);animation:h-rise 1.1s var(--ease) forwards}
.h-line+.h-line>span{animation-delay:.12s}
@keyframes h-rise{to{transform:none}}
.h-fade{opacity:0;transform:translateY(14px);animation:h-fade .9s var(--ease) forwards;animation-delay:var(--d,0s)}
@keyframes h-fade{to{opacity:1;transform:none}}
.h-doors{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.h-door{display:flex;flex-direction:column;justify-content:space-between;min-height:92px;padding:14px 14px 12px;border-radius:20px;color:#fff;transition:transform .5s var(--ease),background .5s var(--ease)}
.h-door:active{transform:scale(.97)}
.h-door b{font:500 1.25rem/1.1 var(--display);letter-spacing:-.01em}
.h-door small{font:500 .74rem/1.3 var(--text);color:rgba(255,255,255,.8);display:flex;justify-content:space-between;align-items:center;gap:6px}
.h-arr{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;background:rgba(255,255,255,.18);transition:transform .45s var(--ease),background .45s var(--ease)}
.h-arr .icon{width:14px;height:14px}
.h-door:hover{background:rgba(42,20,17,.5)}
.h-door:hover .h-arr{transform:translateX(3px);background:var(--terra-deep)}
.h-door.lead{background:rgba(178,90,69,.86);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}

/* Chiffres */

/* En-têtes de section */
.h-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:26px}
.h-head h2{font-size:clamp(1.7rem,1.3rem + 1.8vw,2.8rem);line-height:1.08;margin-top:12px}
.h-more{flex:none;font:600 .84rem var(--text);color:var(--terra-deep);border-bottom:1px solid currentColor;padding-bottom:2px}

/* Biens en vidéos verticales : seule la carte centrale joue */
.h-biens{padding-bottom:40px}
.h-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);padding:4px var(--gutter) 66px;margin:0 calc(var(--gutter) * -1) -48px;scrollbar-width:none;overscroll-behavior-x:contain}
.h-rail::-webkit-scrollbar{display:none}
.h-story{contain:layout paint;will-change:transform;position:relative;flex:0 0 74vw;max-width:340px;aspect-ratio:9/16;border-radius:22px;overflow:hidden;scroll-snap-align:center;background:var(--ink2);color:#fff;transform:scale(.94);opacity:.72;transition:transform .7s var(--ease),opacity .7s var(--ease),box-shadow .7s var(--ease)}
.h-story.act{transform:none;opacity:1;box-shadow:0 30px 60px -30px rgba(61,30,25,.55)}
.h-story>img,.h-story>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h-story>video{opacity:0;transition:opacity .8s var(--ease)}
.h-story>video.on{opacity:1}
.h-story::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,20,17,.35),transparent 22%,transparent 50%,rgba(42,20,17,.88))}
.h-prog{position:absolute;z-index:2;top:12px;left:12px;right:12px;height:2px;border-radius:2px;background:rgba(255,255,255,.3);overflow:hidden}
.h-prog i{display:block;height:100%;width:0;background:#fff}
.h-tag{position:absolute;z-index:2;top:24px;left:12px;font:600 .64rem/1 var(--text);letter-spacing:.16em;text-transform:uppercase;padding:8px 11px;border-radius:999px}
.h-cap{position:absolute;z-index:2;left:16px;right:16px;bottom:16px;display:block}
.h-name{display:block;font:500 1.55rem/1.08 var(--display);color:#fff}
.h-meta{display:block;font-size:.8rem;color:rgba(255,255,255,.84);margin:6px 0 12px}
.h-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.h-price{font:600 1.05rem/1 var(--text)}
.h-go{white-space:nowrap;height:38px;padding:0 14px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;font:600 .76rem var(--text)}
.h-go .icon{width:14px;height:14px}
.h-end{display:flex;flex-direction:column;justify-content:flex-end;padding:22px;background:var(--terra-deep)}
.h-end::after{display:none}
.h-end b{font:500 3.4rem/1 var(--display)}
.h-endp{font:500 1.3rem/1.2 var(--display);margin:8px 0 18px;max-width:12ch}
.h-end .h-go{background:#fff;color:var(--ink);align-self:flex-start}
.h-fine{font-size:.74rem;color:var(--muted);margin-top:4px}

/* Off-market : la capture du lead */
.h-off{position:relative;background:var(--ink2);color:#fff;overflow:hidden;scroll-margin-top:70px}
.h-offbg{will-change:transform;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28;transform:scale(1.08);transition:transform 2.5s var(--ease)}
.h-off.in .h-offbg{transform:none}
.h-off::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 20% 10%,rgba(203,115,93,.28),transparent 60%),linear-gradient(180deg,rgba(42,20,17,.5),rgba(42,20,17,.94))}
.h-off .inner{position:relative;z-index:2;display:grid;gap:34px}
.h-off .h-eb{color:var(--sand)}
.h-off h2{color:#fff;font-size:clamp(1.8rem,1.3rem + 2vw,3rem);line-height:1.08;margin:14px 0}
.h-l{color:rgba(255,255,255,.8);max-width:44ch!important}
.h-ring{position:relative;width:min(58vw,240px);aspect-ratio:1;margin-inline:auto}
.h-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.h-ring circle{fill:none;stroke-width:1.5}
.h-ring .t{stroke:rgba(255,255,255,.14)}
.h-ring .v{stroke:var(--terra);stroke-linecap:round;stroke-dasharray:0 1000;transition:stroke-dasharray 2.4s var(--ease)}
.h-off.in .h-ring .v{stroke-dasharray:433.5 578}
.h-rl{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.h-rl b{font:500 clamp(3rem,2.4rem + 3vw,4.6rem)/1 var(--display)}
.h-rl span{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.68);margin-top:6px}
.h-form{margin-top:24px;display:grid;gap:10px;max-width:460px}
.h-form input:not([type=checkbox]){height:54px;border-radius:16px;border:0;padding:0 18px;font:500 1rem var(--text);color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);outline:0;transition:box-shadow .3s}
.h-form input::placeholder{color:rgba(255,255,255,.6)}
.h-form input:focus{box-shadow:inset 0 0 0 1px var(--terra)}
.h-form input[aria-invalid=true]{box-shadow:inset 0 0 0 1px #F2A38F}
.h-ok{font-size:.76rem;line-height:1.45;color:rgba(255,255,255,.66);display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.h-ok input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--terra)}
.h-ok a{color:#fff}
.h-btn{height:54px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;padding:0 7px 0 22px;font:600 .92rem var(--text);cursor:pointer;background:var(--terra-deep);color:#fff;margin-top:4px}
.h-btn .pip{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--terra-deep);transition:transform .4s var(--ease)}
.h-btn:hover .pip{transform:translateX(3px)}
.h-btn[aria-busy=true]{opacity:.6;pointer-events:none}
.h-msg{color:#F2A38F;font-size:.84rem}
.h-done{margin-top:24px;display:grid;gap:16px;justify-items:start}
.h-done[hidden],.h-form[hidden],.h-msg[hidden]{display:none}
.h-done b{font:500 1.4rem/1.25 var(--display);color:#fff}

/* Services */
.h-svc{display:grid;gap:10px}
.h-svc a{display:grid;grid-template-columns:88px 1fr auto;align-items:center;gap:16px;padding:10px 16px 10px 10px;border-radius:22px;background:var(--paper2);box-shadow:inset 0 0 0 1px var(--line);color:var(--body);transition:transform .5s var(--ease),box-shadow .5s var(--ease),background .5s var(--ease)}
.h-svc a:hover{transform:translateY(-2px);background:#fff;box-shadow:inset 0 0 0 1px rgba(178,90,69,.35),0 18px 40px -26px rgba(61,30,25,.4)}
.h-svc img{width:88px;height:88px;border-radius:15px;object-fit:cover}
.h-svc b{display:block;font:500 1.2rem/1.15 var(--display);color:var(--ink)}
.h-svc span span{display:block;font-size:.86rem;color:var(--muted);margin-top:4px;line-height:1.4}
.h-svc .h-arr{width:34px;height:34px;background:none;box-shadow:inset 0 0 0 1px var(--line);color:var(--terra-deep)}

/* Guides */
.h-guides{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.h-guide{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:150px;padding:18px 16px;border-radius:20px;background:#fff;color:var(--body);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.h-guide::before{content:"";position:absolute;right:-26px;top:-26px;width:90px;height:90px;border-radius:50%;background:var(--rose);transform:scale(.6);opacity:0;transition:transform .7s var(--ease),opacity .7s var(--ease)}
.h-guide:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px rgba(178,90,69,.35)}
.h-guide:hover::before{transform:none;opacity:1}
.h-guide .icon{position:relative;width:24px;height:24px;color:var(--terra-deep)}
.h-guide>span{position:relative}
.h-guide b{display:block;font:500 1.08rem/1.2 var(--display);color:var(--ink);margin-top:18px}
.h-guide span span{display:block;font-size:.78rem;color:var(--muted);margin-top:6px;line-height:1.35}
.h-guide.big{grid-column:1/-1;min-height:190px;background:var(--ink);box-shadow:none}
.h-guide.big::before{background:rgba(203,115,93,.35)}
.h-guide.big b{color:#fff;font-size:1.5rem}
.h-guide.big span span{color:rgba(255,255,255,.74)}
.h-guide.big .icon{color:var(--sand)}

/* Articles */
.h-arts{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);padding:4px var(--gutter) 10px;margin:0 calc(var(--gutter) * -1);scrollbar-width:none}
.h-arts::-webkit-scrollbar{display:none}
.h-art{flex:0 0 78vw;max-width:360px;scroll-snap-align:start;color:var(--body)}
.h-ph{display:block;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:var(--paper2)}
.h-ph img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.2s var(--ease)}
.h-art:hover .h-ph img{transform:none}
.h-art small{display:block;margin:14px 0 6px;font:600 .66rem/1 var(--text);letter-spacing:.16em;text-transform:uppercase;color:var(--terra-deep)}
.h-art b{display:block;font:500 1.18rem/1.22 var(--display);color:var(--ink);text-wrap:balance}

/* Quartiers en défilement */
.h-marq{overflow:hidden;border-block:1px solid var(--line);padding:22px 0;-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.h-tr{display:flex;gap:34px;width:max-content;will-change:transform;animation:h-marq 48s linear infinite}
.h-marq.off .h-tr{animation-play-state:paused}
.h-marq:hover .h-tr{animation-play-state:paused}
.h-tr a{font:500 clamp(1.4rem,1.1rem + 1.4vw,2.2rem)/1 var(--display);color:var(--ink);white-space:nowrap;display:inline-flex;align-items:center;gap:34px;transition:color .3s}
.h-tr a::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--terra)}
.h-tr a:hover{color:var(--terra-deep)}
@keyframes h-marq{to{transform:translateX(-50%)}}

/* Reportage TV */

/* Apparitions au défilement (visibles d'emblée sans JavaScript) */
.js .h-rv{opacity:0;transform:translateY(26px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.js .h-rv.in{opacity:1;transform:none}

@media (min-width:900px){
	.h-hero-c{bottom:56px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px}
	.h-hero h1{max-width:12ch}
	.h-doors{grid-template-columns:repeat(2,210px);gap:10px}
	.h-door{min-height:108px;padding:18px}
	.h-story{flex:0 0 300px}
	.h-rail{padding-inline:max(var(--gutter),calc((100vw - var(--max))/2));margin-inline:calc(max(var(--gutter),calc((100vw - var(--max))/2)) * -1)}
	.h-off .inner{grid-template-columns:auto 1fr;align-items:center;gap:80px}
	.h-svc{grid-template-columns:1fr 1fr}
	.h-svc a{grid-template-columns:120px 1fr auto}
	.h-svc img{width:120px;height:120px}
	.h-guides{grid-template-columns:repeat(4,1fr)}
	.h-guide.big{grid-column:span 2;grid-row:span 2;min-height:auto}
	.h-guide.big b{font-size:2rem;max-width:12ch}
	.h-arts{display:grid;grid-template-columns:repeat(4,1fr);overflow:visible;margin:0;padding:0}
	.h-art{max-width:none}
}
@media (prefers-reduced-motion:reduce){
	.h-line>span,.h-fade,.js .h-rv{animation:none;transform:none;opacity:1;transition:none}
	.h-tr{animation:none;flex-wrap:wrap;width:auto;justify-content:center}
}

/* Accueil : en-tête et barre d'action sans flou (ils passent au-dessus des vidéos) */
.pl-hub .nav.stuck,.pl-hub .sticky,.pl-hub .globe>button{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.pl-hub .nav.stuck{background:rgba(255,255,255,.96)!important}
.pl-hub .sticky{background:rgba(255,255,255,.95)!important}
.pl-hub .globe>button{background:rgba(42,20,17,.28)}
.pl-hub .nav.stuck .globe>button{background:rgba(61,30,25,.06)}

/* Biens : flèches sur ordinateur (souris), visibles au survol de la bande ; masquées au début et à la fin */
.h-railw{position:relative}
.h-nav{display:none}
@media (hover:hover) and (pointer:fine){
	.h-nav{display:grid;place-items:center;position:absolute;z-index:3;top:calc(50% - 7px);width:52px;height:52px;margin-top:-26px;border-radius:50%;border:0;cursor:pointer;background:rgba(255,255,255,.95);color:var(--ink);box-shadow:0 10px 30px -10px rgba(42,20,17,.45),inset 0 0 0 1px rgba(61,30,25,.08);opacity:0;transform:scale(.9);transition:opacity .35s var(--ease),transform .35s var(--ease),background .25s}
	.h-nav .icon{width:22px;height:22px}
	.h-nav.prev{left:-18px}.h-nav.next{right:-18px}
	.h-railw:hover .h-nav,.h-nav:focus-visible{opacity:1;transform:none}
	.h-nav:hover{background:#fff}
	.h-nav[disabled]{opacity:0!important;pointer-events:none}
	.h-rail{cursor:grab}
	.h-rail.drag{cursor:grabbing;scroll-snap-type:none}
	.h-rail.drag .h-story{pointer-events:none}
}

/* Dernière carte : photo de Monaco sous un voile terracotta */
.h-end>:not(img){position:relative;z-index:2}
.h-end::after{display:block;background:linear-gradient(180deg,rgba(178,90,69,.28) 0%,rgba(178,90,69,.05) 38%,rgba(178,90,69,.2) 52%,rgba(160,78,58,.86) 70%,var(--terra-deep) 86%)}

/* Hors marché : bouton du panneau et messagerie côte à côte */
.h-acts{margin-top:24px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* Presse : pas de trait ; le reportage TF1 devient un lien vidéo discret sous les logos */
.pl-hub .press{border:0;padding-bottom:18px}
.h-tv{padding:0 var(--gutter) 8px;display:flex;justify-content:center}
.h-tf1{display:inline-flex;align-items:center;gap:12px;max-width:560px;padding:6px 18px 6px 6px;border-radius:22px;background:var(--paper2);color:var(--body);transition:background .3s var(--ease),transform .3s var(--ease)}
.h-tf1:hover{background:#fff;transform:translateY(-1px)}
.h-tf1 .h-ph{position:relative;flex:none;width:52px;height:52px;aspect-ratio:1;border-radius:50%;overflow:hidden}
.h-tf1 .h-ph img{width:100%;height:100%;object-fit:cover}
.h-tf1 .h-ph::after{content:"";position:absolute;inset:0;margin:auto;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 7l8 5-8 5z' fill='%23B25A45'/%3E%3C/svg%3E") center/16px no-repeat}
.h-tvt b{display:block;font:500 .84rem/1.3 var(--text);color:var(--ink)}
.h-tvt span{font-size:.8rem;color:var(--terra-deep);font-weight:600}

/* Fondateurs et chiffres clés : léger, sur fond blanc */
.pl-main>.h-team{padding:clamp(36px,4vw,56px) var(--gutter) 0}
.h-team-in{max-width:var(--max);margin:0 auto}
.h-who{display:flex;align-items:center;gap:14px}
.h-av{display:flex;flex:none}
.h-av img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 12%;border:3px solid #fff;margin-right:-14px;box-shadow:0 6px 16px -8px rgba(42,20,17,.5)}
.h-who p{margin:0 0 0 14px;font-size:.84rem;color:var(--muted)}
.h-who b{display:block;font:500 1.12rem/1.2 var(--display);color:var(--ink)}
.h-q{font:500 clamp(1.35rem,1.1rem + 1.2vw,2.1rem)/1.3 var(--display);color:var(--ink);margin:18px 0 28px;text-wrap:balance;hyphens:none}
.h-keys{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:18px}
.h-k{position:relative;padding:0 10px}
.h-k:first-child{padding-left:0}
.h-k+.h-k::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:1px;background:var(--line)}
.h-k b{display:block;font:500 1.65rem/1 var(--text);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums lining-nums}
.h-k b i{font-style:normal;color:var(--terra);font-size:.62em;margin-left:2px}
.h-k>span{display:block;font-size:.8rem;line-height:1.35;color:var(--muted);margin-top:8px}
.h-stars{color:var(--terra);letter-spacing:.12em;font-size:.66rem}
.h-team+.h-sec{padding-top:clamp(56px,7vw,96px)}
@media (min-width:900px){
	.h-team-in{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
	.h-q{margin:22px 0 0;max-width:16ch}
	/* Ordinateur : une ligne par chiffre, chiffres alignés à gauche dans une même colonne */
	.h-keys{grid-template-columns:1fr;padding-top:0}
	.h-k,.h-k:first-child{display:grid;grid-template-columns:118px 1fr;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}
	.h-k+.h-k::before{display:none}
	.h-k b{font-size:2.6rem;font-weight:400;color:var(--terra-deep)}
	.h-k>span{margin:0;font-size:.95rem;color:var(--body)}
	.h-k>span br{display:none}
	.h-stars{font-size:.8rem;margin-right:8px}
	.h-tf1{border-radius:999px}.h-tf1 .h-ph{width:60px;height:60px}.h-tvt b{font-size:.92rem}
}
