/* ══════════════════════════════════════════════════════════════
   NEXT GITAL — pages intérieures servies par l'extension (services, agence, réalisations).
   S'appuie sur les tokens de site.css et les composants de home.css.
   ══════════════════════════════════════════════════════════════ */
.phero{position:relative;overflow:hidden;padding:clamp(48px,7vw,96px) 0 clamp(56px,7vw,96px);color:#fff;background:radial-gradient(900px 560px at 85% 10%,rgba(37,99,235,.5),transparent 62%),radial-gradient(600px 480px at 0 100%,rgba(30,58,138,.5),transparent 60%),linear-gradient(170deg,#040a1f,#071a4a 70%,#0a2160)}
.phero__in{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s8);align-items:center}
.phero--text .phero__in{grid-template-columns:minmax(0,860px)}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--s5);font-size:var(--fs-small);color:var(--on-dark-3)}
.crumbs a{color:var(--on-dark-2)}.crumbs a:hover{color:#fff}
.crumbs [aria-current]{color:#fff}
.ngh .phero__h1{font-size:clamp(32px,4.4vw,54px);letter-spacing:-.04em;line-height:1.06}
.phero__lead{max-width:640px;margin-top:var(--s5)!important;font-size:var(--fs-lead);color:var(--on-dark-2)}
.ticks--left{justify-content:flex-start}
.phero__img{margin:0;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/3;box-shadow:0 50px 100px -40px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.12)}
.phero__img img{width:100%;height:100%;object-fit:cover}

.related{border-top:1px solid var(--line)}
.related .caption{margin-bottom:var(--s4)}
.related__list{display:flex;flex-wrap:wrap;gap:var(--s3)}
.related__list a{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px;border-radius:var(--r-pill);background:var(--bg-soft);box-shadow:inset 0 0 0 1px var(--line);font-weight:600}
.related__list a:hover{background:var(--blue-50);color:var(--blue-700)}

/* Réalisations */
.feature--light{background:#fff;box-shadow:inset 0 0 0 1px var(--line),var(--sh-2);margin-bottom:var(--s7)}
.ngh .case h3{font-size:1.35rem;margin-bottom:var(--s3)}
.case h3 small{display:block;margin-top:4px;font-size:var(--fs-small);font-weight:600;letter-spacing:0;color:var(--muted)}
.case>p:not(.eyebrow):not(.caption){color:var(--ink-2)}
.case__dl{display:grid;grid-template-columns:auto 1fr;gap:var(--s2) var(--s4);margin:0 0 var(--s5)}
.case__dl dt{font-size:var(--fs-caption);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-600);padding-top:4px}
.case__dl dd{margin:0;color:var(--ink-2)}
.case .link{display:inline-block}
.cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5)}
.case--card{display:flex;flex-direction:column;padding:var(--s4) var(--s4) var(--s5);border-radius:var(--r-lg);background:#fff;box-shadow:inset 0 0 0 1px var(--line),var(--sh-1)}
.case--card .eyebrow{margin:var(--s5) 0 var(--s2)}
.case--card .tags{margin-top:var(--s3)}
.case__img{position:relative;display:block;width:100%;padding:0;border:0;border-radius:var(--r-md);overflow:hidden;aspect-ratio:1/1;background:var(--bg-soft);cursor:zoom-in}
.case__img img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow) var(--ease)}
.case__img:hover img{transform:scale(1.04)}
.case__img span{position:absolute;inset-inline-start:12px;bottom:12px;padding:7px 12px;border-radius:var(--r-pill);background:rgba(8,16,40,.75);color:#fff;font-size:var(--fs-caption);font-weight:700}
.folio-cats{display:flex;flex-wrap:wrap;gap:8px}
.folio-cats a{padding:8px 14px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--line-2);font-size:var(--fs-small);font-weight:600}
.folio-cats a:hover{background:var(--blue-50)}
.folio{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--s4)}
.folio a{display:grid;gap:4px}
.folio__img{display:block;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--bg-soft)}
.folio__img img{width:100%;height:100%;object-fit:cover}
.folio__t{font-weight:700;font-size:.95rem;line-height:1.35}
.folio small{color:var(--muted);font-size:var(--fs-caption)}

@media (max-width:960px){
	.phero__in{grid-template-columns:1fr}
	.cases{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
	.cases{grid-template-columns:1fr}
	.case__dl{grid-template-columns:1fr}
	.phero .row .btn{width:100%}
}
.phero .ticks{margin-top:var(--s5)}
.related__list--read a{background:none;box-shadow:inset 0 0 0 1px var(--line-2);font-weight:500}
.crumbs a,.crumbs span{display:inline-flex;align-items:center;min-height:24px}

/* Contact */
.contact-pg__in{display:grid;grid-template-columns:1.25fr .95fr;gap:var(--s7);align-items:start}
.ngh .contact-pg h2{font-size:clamp(24px,2.4vw,30px);margin-bottom:var(--s3)}
.contact-pg__form{padding:var(--s7);border-radius:var(--r-xl);background:#fff;box-shadow:inset 0 0 0 1px var(--line),var(--sh-2)}
.contact-pg__form .wpcf7 h2{display:none}
.contact-pg__form .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4) var(--s4);margin-top:var(--s5)}
.contact-pg__form .wpcf7-form>p{margin:0}
.contact-pg__form .wpcf7-form>p:nth-of-type(4),.contact-pg__form .wpcf7-form>p:nth-of-type(5),.contact-pg__form .wpcf7-form>p:nth-of-type(6),.contact-pg__form .wpcf7-response-output{grid-column:1/-1}
.contact-pg__form .wpcf7-form>p:nth-of-type(4){display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.contact-pg__form .wpcf7-form>p:nth-of-type(4) br:not(label br){display:none}
.contact-pg__form label{display:block;font-size:var(--fs-small);font-weight:600;color:var(--ink-2)}
.contact-pg__form label br{display:none}
.contact-pg__form .wpcf7-form-control-wrap{display:block;margin-top:6px}
.contact-pg__form input:not([type=submit]),.contact-pg__form textarea{width:100%;min-height:48px;padding:12px 14px;border:0;border-radius:var(--r-sm);background:var(--bg-soft);box-shadow:inset 0 0 0 1px var(--line);font:inherit;font-size:15px;color:var(--ink);transition:box-shadow var(--t-fast)}
.contact-pg__form textarea{height:140px;resize:vertical}
.contact-pg__form input:focus,.contact-pg__form textarea:focus{outline:0;background:#fff;box-shadow:inset 0 0 0 2px var(--blue-500)}
.contact-pg__form input[type=submit]{width:100%;min-height:56px;border:0;border-radius:var(--r-pill);font:inherit;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(135deg,var(--blue-500),var(--blue-700));box-shadow:0 12px 28px -12px rgba(37,99,235,.9)}
.contact-pg__form .wpcf7-spinner{display:none}
.contact-pg__form .wpcf7-not-valid-tip{font-size:13px;color:var(--error);margin-top:4px}
.contact-pg__form .wpcf7-response-output{margin:0!important;padding:12px 16px!important;border-radius:var(--r-sm);font-size:var(--fs-small)}
.contact-pg__side{display:grid;gap:var(--s5);position:sticky;top:96px}
.channels{display:grid;gap:var(--s3)}
.channel{display:flex;align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);border-radius:var(--r-md);background:#fff;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow var(--t-fast),transform var(--t-fast)}
.channel:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px var(--blue-100),var(--sh-1)}
.channel>span:nth-child(2){flex:1;min-width:0}
.channel small{display:block;font-size:var(--fs-caption);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.channel b{display:block;font-size:1.05rem;overflow-wrap:anywhere}
.channel__ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;color:#fff;background:linear-gradient(145deg,var(--blue-400),var(--blue-700))}
.channel--wa .channel__ico{background:linear-gradient(145deg,#4ade80,#16a34a)}
.channel .btn__arrow{color:var(--blue-600)}
.visit{display:grid;grid-template-columns:120px 1fr;gap:var(--s4);align-items:center;padding:var(--s4);border-radius:var(--r-md);background:var(--bg-soft)}
.visit img{width:120px;height:120px;border-radius:var(--r-sm);object-fit:cover}
.visit p+p{margin-top:6px}
.visit .caption{margin-bottom:6px}
.visit .open{font-weight:600}.visit .open.is-open{color:var(--success)}
.next3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5);counter-reset:n}
.next3 li{position:relative;padding:var(--s6) var(--s5) var(--s5);border-radius:var(--r-lg);background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.next3 li>span{display:grid;place-items:center;width:40px;height:40px;margin-bottom:var(--s4);border-radius:50%;background:var(--blue-50);color:var(--blue-700);font-weight:800}
.ngh .next3 h3{font-size:1.1rem;margin-bottom:var(--s2)}
.next3 p{color:var(--muted);font-size:.95rem}
@media (max-width:960px){
	.contact-pg__in{grid-template-columns:1fr}
	.contact-pg__side{position:static}
	.next3{grid-template-columns:1fr}
}
@media (max-width:640px){
	.contact-pg__form{padding:var(--s5)}
	.contact-pg__form .wpcf7-form,.contact-pg__form .wpcf7-form>p:nth-of-type(4){grid-template-columns:1fr}
}
.contact-pg__form .hidden-fields-container{display:none}
.contact-pg__form .wpcf7-form>p:nth-of-type(3){grid-column:1/-1}
