/* ============================================================================
   OG STADIUM — Design System
   Esthétique : éditorial sportif. Navy dominant, accents bleu/orange,
   display typographique à fort impact. Tout est piloté par les variables
   injectées dans :root (voir inc/enqueue.php) → white-label instantané.
   ============================================================================ */

/* ---- Tokens dérivés ------------------------------------------------------ */
:root{
	--ogt-radius: 14px;
	--ogt-radius-sm: 8px;
	--ogt-maxw: 1360px;
	--ogt-gut: clamp(18px, 4vw, 48px);
	--ogt-shadow: 0 24px 60px -22px rgba(13,27,42,.35);
	--ogt-shadow-sm: 0 8px 24px -12px rgba(13,27,42,.28);
	--ogt-ease: cubic-bezier(.22,.61,.36,1);
}

/* ---- Reset léger --------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.ogt-body{
	margin:0;
	font-family:var(--ogt-font-body);
	color:var(--ogt-text);
	background:#fff;
	line-height:1.6;
	font-size:17px;
	-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--ogt-primary);text-decoration:none;transition:color .2s var(--ogt-ease)}
a:hover{color:var(--ogt-secondary)}
h1,h2,h3,h4{margin:0 0 .4em;line-height:1.05;font-family:var(--ogt-font-heading);font-weight:700;color:var(--ogt-dark)}
p{margin:0 0 1rem}
.ogt-muted{color:#6b7686}

.ogt-container{width:100%;max-width:var(--ogt-maxw);margin-inline:auto;padding-inline:var(--ogt-gut)}
.ogt-skip{position:absolute;left:-9999px}
.ogt-skip:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px 16px;border-radius:8px}

/* ---- Boutons ------------------------------------------------------------- */
.ogt-btn{
	display:inline-flex;align-items:center;gap:.5em;
	font-family:var(--ogt-font-heading);font-weight:600;letter-spacing:.02em;
	text-transform:uppercase;font-size:.92rem;
	padding:.85em 1.5em;border-radius:999px;border:2px solid transparent;
	cursor:pointer;transition:transform .2s var(--ogt-ease),box-shadow .2s,background .2s,color .2s;
	white-space:nowrap;
}
.ogt-btn--lg{padding:1.05em 2em;font-size:1rem}
.ogt-btn--primary{background:var(--ogt-primary);color:#fff}
.ogt-btn--primary:hover{background:var(--ogt-dark);color:#fff;transform:translateY(-2px);box-shadow:var(--ogt-shadow-sm)}
.ogt-btn--secondary{background:var(--ogt-secondary);color:#1a1206}
.ogt-btn--secondary:hover{transform:translateY(-2px);box-shadow:var(--ogt-shadow-sm);color:#1a1206}
.ogt-btn--ghost{background:transparent;color:var(--ogt-dark);border-color:currentColor}
.ogt-dark .ogt-btn--ghost,.ogt-hero .ogt-btn--ghost{color:#fff}
.ogt-btn--ghost:hover{background:var(--ogt-dark);color:#fff;border-color:var(--ogt-dark)}

.ogt-kicker{display:inline-block;font-family:var(--ogt-font-heading);text-transform:uppercase;
	letter-spacing:.22em;font-size:.78rem;font-weight:600;color:var(--ogt-primary);margin-bottom:.6em}
.ogt-kicker--light{color:var(--ogt-secondary)}
.ogt-section-title{font-family:var(--ogt-font-display);font-weight:400;
	font-size:clamp(2.2rem,5vw,4rem);line-height:.92;letter-spacing:.01em}
.ogt-section-title--light{color:#fff}
.ogt-section-sub{max-width:46ch;color:#c7d2e0;margin-top:.4em}
.ogt-section-head{margin-bottom:clamp(28px,4vw,52px)}
.ogt-section-head--row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.ogt-link-arrow{font-family:var(--ogt-font-heading);text-transform:uppercase;font-weight:600;letter-spacing:.04em}

/* ---- Topbar -------------------------------------------------------------- */
.ogt-topbar{background:var(--ogt-dark);color:#aebfd2;font-size:.82rem}
.ogt-topbar__inner{display:flex;align-items:center;gap:18px;height:40px}
.ogt-topbar__spacer{flex:1}
.ogt-topbar a{color:#aebfd2}
.ogt-topbar a:hover{color:#fff}
.ogt-topbar__social{font-weight:600}
@media(max-width:780px){.ogt-topbar{display:none}}

/* ---- Header -------------------------------------------------------------- */
.ogt-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.92);
	backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid #eef2f7;
	transition:box-shadow .25s var(--ogt-ease)}
.ogt-header.is-stuck{box-shadow:0 10px 30px -18px rgba(13,27,42,.4)}
.ogt-header__inner{display:flex;align-items:center;gap:24px;height:76px}
.ogt-logo{display:inline-flex;align-items:center}
.ogt-logo__img{max-height:48px;width:auto}
.ogt-logo--text .ogt-logo__name{font-family:var(--ogt-font-display);font-size:1.9rem;
	letter-spacing:.04em;color:var(--ogt-dark);line-height:1}
.ogt-nav{margin-inline:auto}
.ogt-nav__menu{list-style:none;display:flex;gap:30px;margin:0;padding:0}
.ogt-nav__menu a{font-family:var(--ogt-font-heading);text-transform:uppercase;
	font-weight:500;letter-spacing:.04em;font-size:.9rem;color:var(--ogt-dark);position:relative;padding:6px 0}
.ogt-nav__menu a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;
	background:var(--ogt-secondary);transition:width .25s var(--ogt-ease)}
.ogt-nav__menu a:hover,.ogt-nav__menu .current-menu-item>a{color:var(--ogt-primary)}
.ogt-nav__menu a:hover::after,.ogt-nav__menu .current-menu-item>a::after{width:100%}
.ogt-header__actions{display:flex;align-items:center;gap:14px}
.ogt-cart{position:relative;font-size:1.3rem;color:var(--ogt-dark)}
.ogt-cart__count{position:absolute;top:-8px;right:-10px;background:var(--ogt-secondary);
	color:#1a1206;font-size:.68rem;font-weight:700;min-width:18px;height:18px;border-radius:9px;
	display:grid;place-items:center;padding:0 4px;font-family:var(--ogt-font-heading)}
.ogt-burger{display:none;flex-direction:column;gap:5px;width:42px;height:42px;border:0;
	background:transparent;cursor:pointer;padding:9px}
.ogt-burger span{height:2px;background:var(--ogt-dark);border-radius:2px;transition:.25s var(--ogt-ease)}
.ogt-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.ogt-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.ogt-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:980px){
	.ogt-nav,.ogt-header__cta{display:none}
	.ogt-burger{display:flex}
}
.ogt-mobile-nav{position:fixed;inset:76px 0 auto 0;background:var(--ogt-dark);z-index:70;padding:20px var(--ogt-gut) 32px}
.ogt-mobile-nav__menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.ogt-mobile-nav__menu a{display:block;padding:14px 4px;color:#fff;font-family:var(--ogt-font-heading);
	text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid rgba(255,255,255,.08)}

/* ---- Hero ---------------------------------------------------------------- */
.ogt-hero{position:relative;background:var(--ogt-dark);color:#fff;overflow:hidden;
	padding:clamp(60px,10vw,140px) 0 clamp(70px,11vw,150px)}
.ogt-hero__bg{position:absolute;inset:0;
	background:
		radial-gradient(1200px 600px at 75% -10%, color-mix(in srgb,var(--ogt-primary) 55%,transparent), transparent 60%),
		radial-gradient(900px 500px at 0% 110%, color-mix(in srgb,var(--ogt-secondary) 30%,transparent), transparent 55%),
		var(--ogt-dark);
}
.ogt-hero__bg::after{content:"";position:absolute;inset:0;opacity:.05;
	background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),
		linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);
	background-size:54px 54px;mask:linear-gradient(180deg,#000,transparent 80%)}
.ogt-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;
	gap:40px;align-items:center}
.ogt-hero__content{max-width:760px;opacity:0;transform:translateY(18px);
	animation:ogt-rise .8s var(--ogt-ease) .1s forwards}
.ogt-hero__eyebrow{display:inline-block;font-family:var(--ogt-font-heading);text-transform:uppercase;
	letter-spacing:.24em;font-size:.8rem;color:var(--ogt-secondary);font-weight:600;margin-bottom:1rem}
.ogt-hero__title{font-family:var(--ogt-font-display);font-weight:400;color:#fff;
	font-size:clamp(2.8rem,8vw,6.2rem);line-height:.9;letter-spacing:.005em;margin-bottom:.35em}
.ogt-hero__subtitle{font-size:clamp(1.05rem,2vw,1.35rem);color:#c7d2e0;max-width:48ch;margin-bottom:2rem}
.ogt-hero__actions{display:flex;gap:14px;flex-wrap:wrap}
.ogt-hero__motto{writing-mode:vertical-rl;text-orientation:mixed;
	font-family:var(--ogt-font-display);font-size:clamp(1rem,2vw,1.6rem);letter-spacing:.1em;
	color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.32);opacity:.9}
@media(max-width:900px){.ogt-hero__inner{grid-template-columns:1fr}.ogt-hero__motto{display:none}}

/* ---- Stats --------------------------------------------------------------- */
.ogt-stats{background:var(--ogt-primary);color:#fff;margin-top:-1px}
.ogt-stats__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.ogt-stat{padding:34px 18px;text-align:center;border-left:1px solid rgba(255,255,255,.16)}
.ogt-stat:first-child{border-left:0}
.ogt-stat__num{display:block;font-family:var(--ogt-font-display);font-size:clamp(2.4rem,5vw,3.6rem);
	line-height:1;color:#fff}
.ogt-stat__label{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.12em;
	font-size:.78rem;color:rgba(255,255,255,.82)}
@media(max-width:680px){.ogt-stats__grid{grid-template-columns:repeat(2,1fr)}
	.ogt-stat:nth-child(odd){border-left:0}.ogt-stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.16)}}

/* ---- Sections génériques ------------------------------------------------- */
.ogt-pillars,.ogt-news,.ogt-cta{padding:clamp(56px,8vw,110px) 0}
.ogt-dark{background:var(--ogt-dark);color:#fff}
.ogt-shop-preview{padding:clamp(56px,8vw,110px) 0}

/* ---- Piliers ------------------------------------------------------------- */
.ogt-pillars__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ogt-pillar{position:relative;padding:36px 30px;border-radius:var(--ogt-radius);
	background:var(--ogt-light);border:1px solid #e6edf5;overflow:hidden;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-pillar:hover{transform:translateY(-6px);box-shadow:var(--ogt-shadow)}
.ogt-pillar__index{font-family:var(--ogt-font-display);font-size:3.4rem;line-height:1;
	color:transparent;-webkit-text-stroke:1.4px var(--ogt-primary);display:block;margin-bottom:.2em;opacity:.7}
.ogt-pillar__title{font-size:1.45rem}
.ogt-pillar__text{color:#54616f;margin:0}
@media(max-width:820px){.ogt-pillars__grid{grid-template-columns:1fr}}

/* ---- Cartes actualités --------------------------------------------------- */
.ogt-news__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ogt-card{background:#fff;border-radius:var(--ogt-radius);overflow:hidden;border:1px solid #eef2f7;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-card:hover{transform:translateY(-6px);box-shadow:var(--ogt-shadow)}
.ogt-card__media{display:block;aspect-ratio:3/2;overflow:hidden;background:#e9eef4}
.ogt-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ogt-ease)}
.ogt-card:hover .ogt-card__media img{transform:scale(1.06)}
.ogt-card__ph{display:block;width:100%;height:100%;
	background:linear-gradient(135deg,var(--ogt-dark),var(--ogt-primary))}
.ogt-card__body{padding:22px 22px 26px}
.ogt-card__date{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.1em;
	font-size:.74rem;color:var(--ogt-secondary);font-weight:600}
.ogt-card__title{font-size:1.3rem;margin:.4em 0 .3em;line-height:1.15}
.ogt-card__title a{color:var(--ogt-dark)}.ogt-card__title a:hover{color:var(--ogt-primary)}
.ogt-card__excerpt{color:#5b6775;font-size:.96rem;margin:0}
@media(max-width:820px){.ogt-news__grid{grid-template-columns:1fr}}

/* ---- CTA ----------------------------------------------------------------- */
.ogt-cta{background:
	linear-gradient(120deg,var(--ogt-dark) 0%, color-mix(in srgb,var(--ogt-dark) 80%, var(--ogt-primary)) 100%);
	color:#fff;border-radius:0}
.ogt-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.ogt-cta__title{font-family:var(--ogt-font-display);font-weight:400;color:#fff;
	font-size:clamp(2rem,5vw,3.4rem);line-height:.95;margin:0}
.ogt-cta__sub{color:#c7d2e0;margin:.4em 0 0;max-width:50ch}

/* ---- Pages / prose ------------------------------------------------------- */
.ogt-main{padding:clamp(40px,6vw,80px) 0}
.ogt-prose{max-width:820px}
.ogt-page-head{margin-bottom:30px}
.ogt-page-title{font-family:var(--ogt-font-display);font-weight:400;font-size:clamp(2.2rem,5vw,4rem);line-height:.95}
.ogt-page-thumb img{border-radius:var(--ogt-radius);margin-bottom:28px}
.ogt-content :is(h2,h3){margin-top:1.4em}
.ogt-single__head{padding:clamp(48px,7vw,90px) 0 clamp(56px,8vw,110px)}
.ogt-single__title{font-family:var(--ogt-font-display);font-weight:400;color:#fff;
	font-size:clamp(2.4rem,6vw,4.6rem);line-height:.95;max-width:18ch}
.ogt-single__media{margin-top:-60px}
.ogt-single__media img{border-radius:var(--ogt-radius);box-shadow:var(--ogt-shadow);max-width:var(--ogt-maxw);
	margin-inline:auto;padding-inline:var(--ogt-gut)}
.ogt-single .ogt-prose{margin-top:40px}

/* ---- Pagination / search ------------------------------------------------- */
.ogt-pagination{margin-top:40px;display:flex;justify-content:center}
.ogt-pagination .page-numbers{display:inline-grid;place-items:center;min-width:42px;height:42px;
	border-radius:10px;margin:0 4px;background:var(--ogt-light);color:var(--ogt-dark);font-weight:600}
.ogt-pagination .current{background:var(--ogt-primary);color:#fff}
.ogt-search{display:flex;gap:8px}
.ogt-search input{flex:1;padding:10px 14px;border:1px solid #d8e0ea;border-radius:10px}
.ogt-search button{border:0;background:var(--ogt-primary);color:#fff;padding:0 16px;border-radius:10px;cursor:pointer}

/* ---- Formulaire repli ---------------------------------------------------- */
.ogt-form{display:grid;gap:16px;max-width:640px}
.ogt-form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ogt-form label{display:grid;gap:6px;font-family:var(--ogt-font-heading);font-size:.85rem;
	text-transform:uppercase;letter-spacing:.06em;color:var(--ogt-dark)}
.ogt-form :is(input,textarea){padding:12px 14px;border:1px solid #d8e0ea;border-radius:10px;
	font-family:var(--ogt-font-body);font-size:1rem}
.ogt-form :is(input,textarea):focus{outline:2px solid var(--ogt-primary);border-color:transparent}
@media(max-width:560px){.ogt-form__row{grid-template-columns:1fr}}

/* ---- Footer -------------------------------------------------------------- */
.ogt-footer{background:var(--ogt-dark);color:#aebfd2}
.ogt-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;
	padding-block:clamp(48px,7vw,84px) 48px}
.ogt-footer .ogt-logo__name{color:#fff}
.ogt-footer__about{color:#9fb0c4;margin-top:14px;max-width:38ch}
.ogt-footer__title{color:#fff;font-family:var(--ogt-font-heading);text-transform:uppercase;
	letter-spacing:.1em;font-size:.9rem;margin-bottom:16px}
.ogt-footer__menu,.ogt-footer__contact{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ogt-footer a{color:#aebfd2}.ogt-footer a:hover{color:#fff}
.ogt-footer__social{display:flex;gap:16px;margin-top:18px;font-family:var(--ogt-font-heading);
	text-transform:uppercase;font-size:.82rem;letter-spacing:.06em}
.ogt-footer__bottom{border-top:1px solid rgba(255,255,255,.08)}
.ogt-footer__bottom-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;
	padding-block:20px;font-size:.82rem;flex-wrap:wrap}
.ogt-credit{opacity:.7}
@media(max-width:900px){.ogt-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ogt-footer__grid{grid-template-columns:1fr}}

/* ---- WhatsApp flottant --------------------------------------------------- */
.ogt-whatsapp{position:fixed;right:20px;bottom:20px;z-index:90;width:56px;height:56px;border-radius:50%;
	background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(37,211,102,.6);
	animation:ogt-pop .4s var(--ogt-ease) .6s both}
.ogt-whatsapp:hover{color:#fff;transform:scale(1.08)}

/* ---- Animations ---------------------------------------------------------- */
@keyframes ogt-rise{to{opacity:1;transform:none}}
@keyframes ogt-pop{from{transform:scale(0)}to{transform:scale(1)}}
.ogt-reveal{opacity:0;transform:translateY(24px)}
.ogt-reveal.is-in{opacity:1;transform:none;transition:opacity .7s var(--ogt-ease),transform .7s var(--ogt-ease)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}
	.ogt-reveal{opacity:1;transform:none}}

/* ============================================================================
   SECTIONS ENRICHIES (v1.1) — densification de la page d'accueil
   ============================================================================ */

/* ---- Hero : motif terrain, numéro filigrane, carte média ----------------- */
.ogt-hero__pitch{position:absolute;right:-6%;top:50%;transform:translateY(-50%);
	width:min(60%,720px);height:120%;color:rgba(255,255,255,.06)}
.ogt-hero__number{position:absolute;right:4%;top:46%;transform:translateY(-50%);
	font-family:var(--ogt-font-display);font-size:min(42vw,560px);line-height:.8;
	color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.05);user-select:none}
.ogt-hero__card{position:relative;align-self:center;width:280px;padding:30px 26px;border-radius:var(--ogt-radius);
	background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));
	border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px);
	display:flex;flex-direction:column;gap:14px;
	opacity:0;transform:translateY(18px);animation:ogt-rise .8s var(--ogt-ease) .3s forwards}
.ogt-hero__card-tag{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.16em;
	font-size:.72rem;color:var(--ogt-secondary);font-weight:600}
.ogt-hero__card-motto{font-family:var(--ogt-font-display);font-size:1.7rem;line-height:1;color:#fff}
.ogt-hero__card-foot{font-size:.8rem;color:#9fb0c4;border-top:1px solid rgba(255,255,255,.1);padding-top:12px}
@media(max-width:900px){.ogt-hero__card{display:none}}

/* ---- À propos ------------------------------------------------------------ */
.ogt-about{padding:clamp(56px,8vw,110px) 0}
.ogt-about__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,5vw,64px);align-items:center}
.ogt-about__media{position:relative}
.ogt-about__img{border-radius:var(--ogt-radius);box-shadow:var(--ogt-shadow);width:100%;object-fit:cover;aspect-ratio:4/3}
.ogt-about__ph{aspect-ratio:4/3;border-radius:var(--ogt-radius);position:relative;overflow:hidden;
	background:
		radial-gradient(420px 240px at 80% 10%, color-mix(in srgb,var(--ogt-primary) 60%,transparent),transparent 60%),
		linear-gradient(150deg,var(--ogt-dark),color-mix(in srgb,var(--ogt-dark) 70%,var(--ogt-primary)));
	box-shadow:var(--ogt-shadow)}
.ogt-about__ph::after{content:"";position:absolute;inset:0;opacity:.12;
	background-image:radial-gradient(circle at 50% 50%,#fff 1.5px,transparent 1.6px);background-size:26px 26px}
.ogt-about__ph-badge{position:absolute;left:24px;bottom:20px;font-family:var(--ogt-font-display);
	font-size:5rem;line-height:.8;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.5)}
.ogt-about__stamp{position:absolute;right:-14px;bottom:-14px;background:var(--ogt-secondary);color:#1a1206;
	border-radius:var(--ogt-radius-sm);padding:16px 20px;text-align:center;box-shadow:var(--ogt-shadow-sm);
	transform:rotate(-3deg)}
.ogt-about__stamp-num{display:block;font-family:var(--ogt-font-display);font-size:2rem;line-height:1}
.ogt-about__stamp-lbl{font-family:var(--ogt-font-heading);text-transform:uppercase;font-size:.66rem;letter-spacing:.08em}
.ogt-about__text{color:#54616f;font-size:1.06rem;margin:1rem 0 1.6rem}
.ogt-about__facts{display:flex;gap:36px;margin-bottom:1.8rem}
.ogt-fact__num{display:block;font-family:var(--ogt-font-display);font-size:2.6rem;line-height:1;color:var(--ogt-primary)}
.ogt-fact__lbl{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;color:#6b7686}
@media(max-width:860px){.ogt-about__grid{grid-template-columns:1fr}.ogt-about__media{max-width:520px}}

/* ---- Catégories / équipes ------------------------------------------------ */
.ogt-teams{padding:clamp(56px,8vw,110px) 0}
.ogt-teams__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ogt-team{position:relative;padding:30px 26px 28px;border-radius:var(--ogt-radius);overflow:hidden;
	background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
	border:1px solid rgba(255,255,255,.1);transition:transform .3s var(--ogt-ease),border-color .3s}
.ogt-team:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--ogt-secondary) 60%,transparent)}
.ogt-team__cat{display:inline-block;font-family:var(--ogt-font-display);font-size:2.4rem;line-height:1;
	color:transparent;-webkit-text-stroke:1.4px var(--ogt-secondary);margin-bottom:.3em}
.ogt-team__title{color:#fff;font-size:1.4rem;margin:0}
.ogt-team__age{display:block;font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.1em;
	font-size:.74rem;color:var(--ogt-secondary);margin:.2em 0 .8em}
.ogt-team__desc{color:#aebfd2;font-size:.95rem;margin:0}
@media(max-width:860px){.ogt-teams__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.ogt-teams__grid{grid-template-columns:1fr}}

/* ---- Campus -------------------------------------------------------------- */
.ogt-locations{padding:clamp(56px,8vw,110px) 0;background:var(--ogt-light)}
.ogt-section-sub--dark{color:#54616f}
.ogt-locations__grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.ogt-loc{background:#fff;border-radius:var(--ogt-radius);overflow:hidden;border:1px solid #e6edf5;
	box-shadow:var(--ogt-shadow-sm);transition:transform .3s var(--ogt-ease)}
.ogt-loc:hover{transform:translateY(-5px)}
.ogt-loc__map{position:relative;height:150px;color:var(--ogt-primary);
	background:linear-gradient(180deg,color-mix(in srgb,var(--ogt-primary) 12%,#fff),#fff)}
.ogt-loc__map svg{position:absolute;inset:0;width:100%;height:100%}
.ogt-loc__pin{position:absolute;left:28px;bottom:18px;font-size:1.8rem}
.ogt-loc__body{padding:24px 26px 28px}
.ogt-loc__tag{display:inline-block;font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.1em;
	font-size:.7rem;font-weight:600;color:#fff;background:var(--ogt-primary);padding:3px 10px;border-radius:999px}
.ogt-loc__city{font-family:var(--ogt-font-display);font-weight:400;font-size:2.2rem;line-height:1;margin:.4em 0 .1em}
.ogt-loc__area{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--ogt-secondary)}
.ogt-loc__desc{color:#54616f;margin:.8em 0 0}
@media(max-width:680px){.ogt-locations__grid{grid-template-columns:1fr}}

/* ---- Galerie ------------------------------------------------------------- */
.ogt-gallery{padding:clamp(56px,8vw,110px) 0}
.ogt-gallery__tiles{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:130px;gap:12px}
.ogt-tile{border-radius:var(--ogt-radius-sm);background-size:200% 200%;animation:ogt-shift 8s ease-in-out infinite}
.ogt-tile--1{grid-column:span 2;grid-row:span 2;background-image:linear-gradient(135deg,var(--ogt-primary),var(--ogt-dark))}
.ogt-tile--2{background-image:linear-gradient(135deg,var(--ogt-secondary),#b45f10)}
.ogt-tile--3{background-image:linear-gradient(135deg,#1c4f86,var(--ogt-primary))}
.ogt-tile--4{grid-column:span 2;background-image:linear-gradient(135deg,var(--ogt-dark),var(--ogt-primary))}
.ogt-tile--5{background-image:linear-gradient(135deg,var(--ogt-primary),#0b3a66)}
.ogt-tile--6{background-image:linear-gradient(135deg,#c9760f,var(--ogt-secondary))}
@keyframes ogt-shift{0%,100%{background-position:0% 0%}50%{background-position:100% 100%}}
@media(max-width:680px){.ogt-gallery__tiles{grid-template-columns:repeat(2,1fr);grid-auto-rows:120px}
	.ogt-tile--1,.ogt-tile--4{grid-column:span 2}}

/* ---- Partenaires --------------------------------------------------------- */
.ogt-partners{padding:46px 0;border-top:1px solid #eef2f7;border-bottom:1px solid #eef2f7;background:#fff}
.ogt-partners__title{display:block;text-align:center;font-family:var(--ogt-font-heading);text-transform:uppercase;
	letter-spacing:.18em;font-size:.78rem;color:#8a96a5;margin-bottom:26px}
.ogt-partners__row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 44px}
.ogt-partner{font-family:var(--ogt-font-display);font-size:1.5rem;letter-spacing:.03em;color:#c2ccd8;
	transition:color .25s var(--ogt-ease);cursor:default}
.ogt-partner:hover{color:var(--ogt-dark)}

/* ---- Page Actualités vide / 404 ------------------------------------------ */
.ogt-empty{padding:40px 0;max-width:640px}
.ogt-404{text-align:center;padding:clamp(40px,8vw,90px) 0}
.ogt-404__code{display:block;font-family:var(--ogt-font-display);font-size:clamp(5rem,18vw,11rem);
	line-height:.8;color:transparent;-webkit-text-stroke:2px var(--ogt-primary);opacity:.6;margin-bottom:.1em}
.ogt-404 .ogt-btn{margin-top:18px}

/* ============================================================================
   MODÈLES DE PAGE (v1.2) — bannière, contact, staff, split
   ============================================================================ */

/* ---- Bannière de page ---------------------------------------------------- */
.ogt-banner{position:relative;overflow:hidden;padding:clamp(48px,7vw,92px) 0}
.ogt-banner__bg{position:absolute;inset:0;
	background:
		radial-gradient(900px 400px at 80% -20%, color-mix(in srgb,var(--ogt-primary) 50%,transparent),transparent 60%),
		var(--ogt-dark)}
.ogt-banner__bg::after{content:"";position:absolute;inset:0;opacity:.05;
	background-image:linear-gradient(90deg,#fff 1px,transparent 1px);background-size:54px 54px;
	mask:linear-gradient(180deg,#000,transparent)}
.ogt-banner__inner{position:relative}
.ogt-banner__title{font-family:var(--ogt-font-display);font-weight:400;color:#fff;
	font-size:clamp(2.4rem,6vw,4.4rem);line-height:.95;margin:0}
.ogt-crumbs{margin-top:14px;font-family:var(--ogt-font-heading);text-transform:uppercase;
	letter-spacing:.08em;font-size:.78rem;color:#9fb0c4;display:flex;gap:10px;align-items:center}
.ogt-crumbs a{color:#9fb0c4}.ogt-crumbs a:hover{color:#fff}

/* ---- Split (texte + aside) ----------------------------------------------- */
.ogt-split{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(30px,5vw,60px);
	align-items:start;padding:clamp(40px,6vw,72px) 0}
.ogt-keyfacts{background:var(--ogt-light);border:1px solid #e6edf5;border-radius:var(--ogt-radius);
	padding:28px 26px;display:grid;gap:22px}
.ogt-keyfacts .ogt-fact__num{color:var(--ogt-primary)}
@media(max-width:860px){.ogt-split{grid-template-columns:1fr}}

/* ---- Staff --------------------------------------------------------------- */
.ogt-staff{padding:clamp(40px,6vw,80px) 0;background:var(--ogt-light)}
.ogt-staff__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ogt-coach{background:#fff;border:1px solid #e6edf5;border-radius:var(--ogt-radius);padding:28px 20px;text-align:center;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-coach:hover{transform:translateY(-5px);box-shadow:var(--ogt-shadow)}
.ogt-coach__avatar{width:72px;height:72px;border-radius:50%;margin:0 auto 14px;display:grid;place-items:center;
	font-family:var(--ogt-font-display);font-size:2rem;color:#fff;
	background:linear-gradient(135deg,var(--ogt-primary),var(--ogt-dark))}
.ogt-coach__name{font-size:1.1rem;margin:0}
.ogt-coach__role{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;
	font-size:.72rem;color:var(--ogt-secondary)}
@media(max-width:860px){.ogt-staff__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.ogt-staff__grid{grid-template-columns:1fr}}

/* ---- Contact ------------------------------------------------------------- */
.ogt-contact{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,5vw,56px);
	align-items:start;padding:clamp(20px,4vw,40px) 0}
.ogt-contact__list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:16px}
.ogt-contact__list li{display:flex;gap:14px;align-items:flex-start}
.ogt-contact__list span{font-size:1.3rem;line-height:1.4}
.ogt-card-form{background:#fff;border:1px solid #e6edf5;border-radius:var(--ogt-radius);
	box-shadow:var(--ogt-shadow-sm);padding:clamp(24px,4vw,38px)}
.ogt-card-form h3{font-size:1.4rem;margin-bottom:18px}
@media(max-width:860px){.ogt-contact{grid-template-columns:1fr}}

/* ============================================================================
   HERO SLIDER (v1.3) — bannière défilante, vivante même sans photo
   ============================================================================ */
.ogt-slider{position:relative;background:var(--ogt-dark);overflow:hidden}
.ogt-slider__track{position:relative}
.ogt-slide{position:absolute;inset:0;opacity:0;visibility:hidden;display:flex;align-items:center;
	transition:opacity .9s var(--ogt-ease);background-size:cover;background-position:center;color:#fff;
	min-height:clamp(520px,82vh,760px)}
.ogt-slide.is-active{opacity:1;visibility:visible;position:relative;z-index:2}
.ogt-slide__inner{position:relative;z-index:3;width:100%;padding-block:clamp(40px,7vw,90px)}
.ogt-slide__content{max-width:760px;
	transform:translateY(20px);opacity:0;transition:opacity .7s .2s var(--ogt-ease),transform .7s .2s var(--ogt-ease)}
.ogt-slide.is-active .ogt-slide__content{transform:none;opacity:1}

/* Fonds générés — chaque diapo a son ambiance, vivante sans image */
.ogt-slide__bg{position:absolute;inset:0;z-index:1;color:rgba(255,255,255,.06)}
.ogt-slide__pitch{position:absolute;right:-6%;top:50%;transform:translateY(-50%);width:min(62%,760px);height:130%}
.ogt-slide--1{background:radial-gradient(1100px 600px at 78% -10%,color-mix(in srgb,var(--ogt-primary) 60%,transparent),transparent 60%),
	radial-gradient(800px 500px at 0% 110%,color-mix(in srgb,var(--ogt-secondary) 26%,transparent),transparent 55%),var(--ogt-dark)}
.ogt-slide--2{background:radial-gradient(1000px 600px at 20% -10%,color-mix(in srgb,var(--ogt-secondary) 50%,transparent),transparent 60%),
	linear-gradient(140deg,var(--ogt-dark),color-mix(in srgb,var(--ogt-dark) 65%,var(--ogt-primary)))}
.ogt-slide--3{background:radial-gradient(1000px 600px at 90% 20%,color-mix(in srgb,var(--ogt-primary) 55%,transparent),transparent 55%),
	linear-gradient(120deg,#08131f,var(--ogt-dark))}
/* Voile sombre quand une vraie image est posée → texte lisible */
.ogt-slide.has-img::before{content:"";position:absolute;inset:0;z-index:2;
	background:linear-gradient(90deg,rgba(8,15,25,.86) 0%,rgba(8,15,25,.6) 45%,rgba(8,15,25,.25) 100%)}
.ogt-slide.has-img .ogt-slide__bg{display:none}

/* Flèches */
.ogt-slider__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:52px;height:52px;
	border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.8rem;line-height:1;cursor:pointer;
	backdrop-filter:blur(4px);transition:background .2s var(--ogt-ease),transform .2s}
.ogt-slider__arrow:hover{background:var(--ogt-primary);transform:translateY(-50%) scale(1.08)}
.ogt-slider__arrow--prev{left:18px}.ogt-slider__arrow--next{right:18px}
@media(max-width:680px){.ogt-slider__arrow{display:none}}

/* Points */
.ogt-slider__dots{position:absolute;bottom:22px;left:0;right:0;z-index:5;display:flex;justify-content:center;gap:10px}
.ogt-slider__dot{width:34px;height:5px;border:0;border-radius:99px;background:rgba(255,255,255,.3);cursor:pointer;
	transition:background .25s var(--ogt-ease),width .25s}
.ogt-slider__dot.is-active{background:var(--ogt-secondary);width:48px}

/* Embed (slider OG Media Suite) */
.ogt-hero-embed{background:var(--ogt-dark)}

/* Fallback : si JS désactivé, on empile proprement la 1re diapo */
.no-js .ogt-slide{position:relative;opacity:1;visibility:visible}
.no-js .ogt-slide:not(.is-active){display:none}

/* ============================================================================
   V2.0 — Pleine largeur, fonds de sections, séparation, personnes, social, promo
   ============================================================================ */

/* Anti débordement horizontal + bannières full-bleed (100vw) */
/* overflow-x:clip empêche le débordement horizontal SANS casser position:sticky */
html,body{overflow-x:clip}
.ogt-slider,.ogt-banner{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.ogt-slide{background-size:cover;background-position:center center}

/* Fonds d'image de section (flou pro + voile) */
.ogt-sec{position:relative;overflow:hidden}
.ogt-secbg{position:absolute;inset:-4%;z-index:0;background-size:cover;background-position:center;
	filter:blur(7px) brightness(.55) saturate(1.05);transform:scale(1.08);will-change:transform}
.ogt-sec.has-bg::after{content:"";position:absolute;inset:0;z-index:1;
	background:linear-gradient(180deg,rgba(13,27,42,.74),rgba(13,27,42,.84))}
.ogt-sec > .ogt-container,.ogt-sec > .ogt-cta__inner{position:relative;z-index:2}

/* Boutique = ambiance claire (séparation nette d'avec la galerie sombre) */
.ogt-tint{background:linear-gradient(180deg,#fff, var(--ogt-light))}
.ogt-shop-preview.ogt-tint .ogt-section-title{color:var(--ogt-dark)}
/* Légère diagonale décorative en haut de la boutique */
.ogt-diag::before{content:"";position:absolute;top:-1px;left:0;right:0;height:60px;z-index:1;
	background:var(--ogt-light);clip-path:polygon(0 0,100% 0,100% 35%,0 100%);opacity:.6}
.ogt-diag.ogt-dark::before{display:none}

/* ---- Blocs personnes (management, figures, staff) ------------------------ */
.ogt-people{padding:clamp(50px,7vw,100px) 0}
.ogt-people__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ogt-person{background:#fff;border:1px solid #e6edf5;border-radius:var(--ogt-radius);overflow:hidden;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-dark .ogt-person{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}
.ogt-person:hover{transform:translateY(-6px);box-shadow:var(--ogt-shadow)}
.ogt-person__media{aspect-ratio:3/4;background:linear-gradient(150deg,var(--ogt-dark),var(--ogt-primary));
	background-size:cover;background-position:center top;display:grid;place-items:center}
.ogt-person__initial{font-family:var(--ogt-font-display);font-size:3.4rem;color:rgba(255,255,255,.5)}
.ogt-person__body{padding:18px 20px 22px;position:relative}
.ogt-person__name{font-size:1.18rem;margin:0;color:var(--ogt-dark)}
.ogt-dark .ogt-person__name{color:#fff}
.ogt-person__role{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;
	font-size:.74rem;color:var(--ogt-secondary)}
.ogt-person__desc{color:#5b6775;font-size:.92rem;margin:.6em 0 0}
.ogt-dark .ogt-person__desc{color:#aebfd2}
.ogt-person__link{position:absolute;top:16px;right:18px;width:30px;height:30px;border-radius:50%;
	display:grid;place-items:center;background:var(--ogt-primary);color:#fff}
@media(max-width:900px){.ogt-people__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.ogt-people__grid{grid-template-columns:1fr}}

/* ---- Campus avec photo --------------------------------------------------- */
.ogt-loc__map.has-photo{background-size:cover;background-position:center;height:180px}
.ogt-loc__map.has-photo svg{display:none}
.ogt-loc__map.has-photo .ogt-loc__pin{filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}

/* ---- Partenaires : logos ------------------------------------------------- */
.ogt-partners__logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px 40px}
.ogt-plogo img{max-height:54px;width:auto;object-fit:contain;opacity:.95;
	transition:opacity .25s,transform .25s var(--ogt-ease)}
.ogt-plogo:hover img{opacity:1;transform:translateY(-2px)}

/* ---- Icônes réseaux sociaux ---------------------------------------------- */
.ogt-social{display:inline-flex;gap:10px;align-items:center}
.ogt-social a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:inherit;
	transition:transform .2s var(--ogt-ease),background .2s,color .2s}
.ogt-social a:hover{transform:translateY(-2px)}
.ogt-social--topbar a{color:#aebfd2}
.ogt-social--topbar a:hover{color:#fff;background:rgba(255,255,255,.12)}
.ogt-social--footer{margin-top:18px}
.ogt-social--footer a{background:rgba(255,255,255,.07);color:#aebfd2}
.ogt-social--footer a:hover{background:var(--ogt-primary);color:#fff}
.ogt-social img{border-radius:4px}

/* ---- Barre d'annonce ----------------------------------------------------- */
.ogt-announce{background:var(--ann,var(--ogt-secondary));color:#1a1206}
.ogt-announce__inner{display:flex;align-items:center;justify-content:center;gap:14px;min-height:40px;
	font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.04em;font-size:.84rem;font-weight:600;position:relative}
.ogt-announce a,.ogt-announce span{color:#1a1206}
.ogt-announce__close{position:absolute;right:0;background:none;border:0;color:#1a1206;cursor:pointer;font-size:1rem;opacity:.7}
.ogt-announce__close:hover{opacity:1}
.ogt-announce.is-closed{display:none}

/* ---- Bouton promo flottant ----------------------------------------------- */
.ogt-promo{position:fixed;left:20px;bottom:20px;z-index:90;display:inline-flex;align-items:center;gap:8px;
	background:var(--promo,var(--ogt-secondary));color:#1a1206;padding:12px 18px;border-radius:999px;
	font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.03em;font-weight:600;font-size:.85rem;
	box-shadow:0 12px 30px -10px rgba(0,0,0,.4);animation:ogt-pop .4s var(--ogt-ease) .8s both}
.ogt-promo:hover{color:#1a1206;transform:translateY(-2px)}
.ogt-promo__icon{font-size:1.1rem}
@media(max-width:560px){.ogt-promo__label{display:none}.ogt-promo{padding:14px;border-radius:50%}}

/* ---- Animations plus vivantes -------------------------------------------- */
.ogt-reveal{opacity:0;transform:translateY(30px) scale(.985)}
.ogt-reveal.is-in{opacity:1;transform:none;transition:opacity .7s var(--ogt-ease),transform .8s var(--ogt-ease)}
@media(prefers-reduced-motion:reduce){.ogt-reveal{opacity:1;transform:none}.ogt-secbg{transform:none!important}}

/* ============================================================================
   V2.1 — Galerie sur-mesure (3 styles) + lightbox, mobile-first
   ============================================================================ */
.ogt-galx{margin-top:8px}
.ogt-galx__item{display:block;position:relative;overflow:hidden;border-radius:14px;cursor:zoom-in;
	background:#0b1622;line-height:0}
.ogt-galx__item img{width:100%;height:100%;object-fit:cover;display:block;
	transition:transform .5s var(--ogt-ease),filter .4s}
.ogt-galx__item::after{content:"";position:absolute;inset:0;
	background:linear-gradient(180deg,transparent 55%,rgba(13,27,42,.5));opacity:0;transition:opacity .35s}
.ogt-galx__item:hover img{transform:scale(1.07)}
.ogt-galx__item:hover::after{opacity:1}

/* Masonry (colonnes CSS) */
.ogt-galx--masonry{column-count:3;column-gap:14px}
.ogt-galx--masonry .ogt-galx__item{margin:0 0 14px;break-inside:avoid;border-radius:14px}
.ogt-galx--masonry .ogt-galx__item img{height:auto}

/* Justifié (lignes alignées, hauteur fixe) */
.ogt-galx--justified{display:flex;flex-wrap:wrap;gap:12px}
.ogt-galx--justified .ogt-galx__item{flex:1 1 240px;height:240px}

/* Grille classique (carrés) */
.ogt-galx--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.ogt-galx--grid .ogt-galx__item{aspect-ratio:1/1}

/* Tablette */
@media(max-width:900px){
	.ogt-galx--masonry{column-count:2}
	.ogt-galx--justified .ogt-galx__item{height:200px;flex-basis:200px}
	.ogt-galx--grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
}
/* Mobile */
@media(max-width:560px){
	.ogt-galx--masonry{column-count:2;column-gap:10px}
	.ogt-galx--masonry .ogt-galx__item{margin-bottom:10px;border-radius:11px}
	.ogt-galx--justified{gap:8px}
	.ogt-galx--justified .ogt-galx__item{height:150px;flex-basis:140px;border-radius:11px}
	.ogt-galx--grid{grid-template-columns:repeat(2,1fr);gap:8px}
}

/* ---- Lightbox ------------------------------------------------------------ */
.ogt-lb{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;
	background:rgba(7,13,22,.94);backdrop-filter:blur(6px);touch-action:none}
.ogt-lb.is-open{display:flex}
.ogt-lb__stage{margin:0;max-width:92vw;max-height:82vh;display:flex;align-items:center;justify-content:center}
.ogt-lb__img{max-width:92vw;max-height:82vh;width:auto;height:auto;border-radius:8px;
	box-shadow:0 30px 80px -20px rgba(0,0,0,.8);animation:ogt-lb-in .35s var(--ogt-ease)}
@keyframes ogt-lb-in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.ogt-lb__close{position:absolute;top:16px;right:16px;width:46px;height:46px;border:0;border-radius:50%;
	background:rgba(255,255,255,.12);color:#fff;font-size:1.3rem;cursor:pointer;z-index:2}
.ogt-lb__close:hover{background:var(--ogt-primary)}
.ogt-lb__nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border:0;border-radius:50%;
	background:rgba(255,255,255,.12);color:#fff;font-size:2rem;line-height:1;cursor:pointer;z-index:2;transition:background .2s}
.ogt-lb__nav:hover{background:var(--ogt-primary)}
.ogt-lb__prev{left:14px}.ogt-lb__next{right:14px}
.ogt-lb__count{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#cfd9e6;
	font-family:var(--ogt-font-heading);letter-spacing:.1em;font-size:.8rem}
@media(max-width:560px){
	.ogt-lb__stage,.ogt-lb__img{max-width:96vw;max-height:74vh}
	.ogt-lb__nav{width:48px;height:48px;bottom:14px;top:auto;transform:none}
	.ogt-lb__prev{left:50%;margin-left:-110px}.ogt-lb__next{right:50%;margin-right:-110px}
	.ogt-lb__count{bottom:74px}
}

/* ============================================================================
   V2.2 — Carrousels (boutique + actus), cartes produits, catégories
   ============================================================================ */
.ogt-carousel{position:relative}
.ogt-carousel__track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
	padding:16px 14px 24px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ogt-carousel__track::-webkit-scrollbar{display:none}
.ogt-carousel__track > *{scroll-snap-align:start;flex:0 0 clamp(220px,26%,280px)}
.ogt-carousel__arrow{position:absolute;top:42%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:0;
	border-radius:50%;background:#fff;color:var(--ogt-dark);box-shadow:var(--ogt-shadow-sm);font-size:1.6rem;line-height:1;
	cursor:pointer;transition:background .2s,color .2s}
.ogt-carousel__arrow:hover{background:var(--ogt-primary);color:#fff}
.ogt-carousel__arrow--prev{left:-10px}.ogt-carousel__arrow--next{right:-10px}
.ogt-dark .ogt-carousel__arrow{background:rgba(255,255,255,.14);color:#fff}
@media(max-width:560px){
	.ogt-carousel__arrow{display:none!important}
	.ogt-carousel__track > *{flex-basis:46%}
}

/* Cartes produits */
.ogt-pcard{background:#fff;border:1px solid #e6edf5;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-pcard:hover{transform:translateY(-5px);box-shadow:var(--ogt-shadow)}
.ogt-pcard__media{position:relative;display:block;aspect-ratio:1/1;background:var(--ogt-light);line-height:0}
.ogt-pcard__media img{width:100%;height:100%;object-fit:cover}
.ogt-pcard__badge{position:absolute;top:10px;left:10px;background:var(--ogt-secondary);color:#1a1206;
	font-family:var(--ogt-font-heading);text-transform:uppercase;font-size:.7rem;letter-spacing:.02em;line-height:1;white-space:nowrap;padding:6px 12px;border-radius:99px}
.ogt-pcard__badge--out{background:#b32d2e;color:#fff;left:auto;right:10px}
.ogt-pcard__body{padding:15px 16px 17px;display:flex;flex-direction:column;gap:8px;flex:1}
.ogt-pcard__title{font-size:1rem;margin:0;line-height:1.3}
.ogt-pcard__title a{color:var(--ogt-dark)}
.ogt-pcard__price{font-family:var(--ogt-font-heading);font-weight:700;color:var(--ogt-primary);font-size:1.05rem}
.ogt-pcard__price del{color:#9aa7b4;font-weight:400;font-size:.85rem;margin-right:6px}
.ogt-pcard__price ins{text-decoration:none}
.ogt-pcard__btn{margin-top:auto;display:inline-block;text-align:center;background:var(--ogt-dark);color:#fff;
	padding:10px 14px;border-radius:10px;font-family:var(--ogt-font-heading);text-transform:uppercase;font-size:.76rem;letter-spacing:.03em;
	transition:background .2s}
.ogt-pcard__btn:hover,.ogt-pcard__btn.added{background:var(--ogt-primary);color:#fff}
.ogt-pcard__btn.loading{opacity:.6;pointer-events:none}

/* Catégories de produits (chips) */
.ogt-shopcats{margin-top:26px}.ogt-shopextra{margin-top:30px}
.ogt-shopcats__label{display:block;font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;
	font-size:.74rem;color:var(--ogt-secondary);margin-bottom:12px}
.ogt-shopcats__row{display:flex;flex-wrap:wrap;gap:10px}
.ogt-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #dfe7f0;border-radius:99px;
	padding:8px 16px;color:var(--ogt-dark);font-weight:600;font-size:.9rem;transition:border-color .2s,color .2s,transform .2s}
.ogt-chip span{background:var(--ogt-light);border-radius:99px;padding:1px 8px;font-size:.78rem;color:#6b7886}
.ogt-chip:hover{border-color:var(--ogt-primary);color:var(--ogt-primary);transform:translateY(-2px)}
.ogt-dark .ogt-chip{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#fff}

/* Nom de marque footer (logo retiré) */
.ogt-footer__brand{font-family:var(--ogt-font-display);font-size:1.9rem;color:#fff;display:block;margin-bottom:10px;line-height:1}

/* ============================================================================
   V2.3 — Direction artistique : signature, rythme, header condensé, retour-haut
   ============================================================================ */

/* ---- Header qui se condense au scroll ------------------------------------ */
.ogt-header{transition:padding .3s var(--ogt-ease),background .3s,box-shadow .3s}
.ogt-header.is-stuck{background:rgba(255,255,255,.96);backdrop-filter:saturate(1.2) blur(10px)}
.ogt-header.is-stuck .ogt-header__inner{padding-block:6px}
.ogt-header.is-stuck .ogt-logo img{max-height:40px;transition:max-height .3s var(--ogt-ease)}
.ogt-logo img{transition:max-height .3s var(--ogt-ease)}

/* ---- Bouton retour en haut ----------------------------------------------- */
.ogt-totop{position:fixed;right:20px;bottom:84px;z-index:95;width:46px;height:46px;border:0;border-radius:50%;
	background:var(--ogt-dark);color:#fff;cursor:pointer;display:grid;place-items:center;
	opacity:0;transform:translateY(14px);pointer-events:none;
	transition:opacity .3s var(--ogt-ease),transform .3s var(--ogt-ease),background .2s;
	box-shadow:0 12px 30px -10px rgba(0,0,0,.45)}
.ogt-totop.is-show{opacity:1;transform:none;pointer-events:auto}
.ogt-totop:hover{background:var(--ogt-primary)}
@media(max-width:560px){.ogt-totop{bottom:78px;right:14px;width:42px;height:42px}}

/* ---- SIGNATURE : titres de section asymétriques + accent + soulignement --- */
.ogt-section-head{margin-bottom:clamp(28px,4vw,52px);text-align:left;position:relative}
.ogt-kicker{display:inline-flex;align-items:center;gap:11px;font-family:var(--ogt-font-heading);
	text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:700;color:var(--ogt-secondary)}
.ogt-kicker::before{content:"";width:36px;height:3px;border-radius:2px;background:var(--ogt-secondary);display:inline-block}
.ogt-kicker--light{color:var(--ogt-secondary)}
.ogt-section-title{font-family:var(--ogt-font-display);font-weight:400;line-height:.92;
	font-size:clamp(2.1rem,4.8vw,3.7rem);margin:.16em 0 .12em;letter-spacing:.01em;position:relative;display:inline-block}
.ogt-section-title::after{content:"";display:block;width:0;height:4px;margin-top:.3em;border-radius:3px;
	background:linear-gradient(90deg,var(--ogt-primary),var(--ogt-secondary));
	transition:width .8s var(--ogt-ease) .15s}
.ogt-section-head.is-in .ogt-section-title::after,
.ogt-section-head.is-in.ogt-section-head--row .ogt-section-title::after{width:74px}
.ogt-section-sub,.ogt-section-sub--dark{max-width:580px;margin:0}

/* ---- Sections sombres : moins ternes, texture signature ------------------- */
.ogt-secbg{filter:blur(5px) brightness(.72) saturate(1.12)}
.ogt-sec.has-bg::after{background:
	linear-gradient(120deg,rgba(11,22,34,.92) 0%,rgba(13,27,42,.7) 46%,rgba(30,111,191,.4) 100%)}
/* Voile dégradé bas pour ancrer le contenu */
.ogt-sec.has-bg::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
	background:radial-gradient(120% 80% at 50% 120%,rgba(0,0,0,.45),transparent 60%)}
/* Trame de points discrète sur les sections sombres sans image */
.ogt-sec.ogt-dark:not(.has-bg){
	background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);
	background-size:26px 26px;background-position:center}

/* ---- Interactions de cartes plus vivantes -------------------------------- */
.ogt-team,.ogt-pcard,.ogt-card,.ogt-person,.ogt-pillar{position:relative}
.ogt-team::before,.ogt-pcard::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;border-radius:3px;
	background:linear-gradient(90deg,var(--ogt-primary),var(--ogt-secondary));transition:width .35s var(--ogt-ease);z-index:2}
.ogt-team:hover::before,.ogt-pcard:hover::before{width:100%}
.ogt-team:hover,.ogt-pcard:hover{transform:translateY(-7px)}
.ogt-pillar{transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-pillar:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--ogt-shadow)}
.ogt-pillar__index{transition:color .3s,transform .3s var(--ogt-ease)}
.ogt-pillar:hover .ogt-pillar__index{color:var(--ogt-secondary);transform:scale(1.08)}

/* ---- Accent diagonal de signature en bas des sections claires ------------ */
.ogt-sec:not(.ogt-dark):not(.ogt-tint) + .ogt-sec.ogt-dark{position:relative}

/* ---- Hero : titre plus impactant ----------------------------------------- */
.ogt-hero__title{font-size:clamp(2.6rem,6.4vw,5rem);line-height:.92}
.ogt-hero__eyebrow{letter-spacing:.18em}

/* ============================================================================
   V3.0 — Fonds maîtrisés, magazine, centres, ruban, formulaire CTA, vidéos
   ============================================================================ */

/* ---- Rythme des fonds (par défaut propres, photo en option) -------------- */
.ogt-sec.ogt-dark:not(.has-bg){
	background-color:var(--ogt-dark);
	background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(135deg,#0b1622 0%,var(--ogt-dark) 55%,#10263f 100%);
	background-size:26px 26px,100% 100%}
.ogt-mag{background:#fff}
.ogt-centers{background:linear-gradient(180deg,#fff,var(--ogt-light))}
.ogt-leaders{background:var(--ogt-light)}
.ogt-partners{background:#fff}

/* Espacement vertical homogène des nouvelles sections */
.ogt-mag,.ogt-centers,.ogt-leaders,.ogt-videos,.ogt-join{padding-block:clamp(54px,7vw,100px)}
/* Marge haute boutique (titre trop à fleur corrigé) */
.ogt-shop{padding-top:clamp(64px,8vw,104px)}

/* ---- Actualités magazine (style club) ------------------------------------ */
.ogt-mag__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
.ogt-mag__side{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ogt-mag__feat,.ogt-mag__card{border-radius:18px;overflow:hidden}
.ogt-mag__link{position:relative;display:block;height:100%;min-height:230px;background-size:cover;background-position:center;
	background-color:var(--ogt-dark);transition:transform .5s var(--ogt-ease)}
.ogt-mag__feat .ogt-mag__link{min-height:480px}
.ogt-mag__feat.is-noimg .ogt-mag__link,.ogt-mag__card.is-noimg .ogt-mag__link{background-image:linear-gradient(135deg,var(--ogt-primary),var(--ogt-dark))}
.ogt-mag__link::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(7,13,22,.92))}
.ogt-mag__feat:hover .ogt-mag__link,.ogt-mag__card:hover .ogt-mag__link{transform:scale(1.03)}
.ogt-mag__overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px 24px;color:#fff}
.ogt-mag__cat{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--ogt-secondary)}
.ogt-mag__title{font-size:1.12rem;margin:.35em 0 0;color:#fff;line-height:1.22;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.ogt-mag__title--feat{font-family:var(--ogt-font-display);font-weight:400;font-size:clamp(1.6rem,2.7vw,2.4rem);line-height:1.02}
.ogt-mag__excerpt{margin:.55em 0 0;color:#d3deea;font-size:.92rem;max-width:92%;text-shadow:0 1px 8px rgba(0,0,0,.5)}
@media(max-width:820px){
	.ogt-mag__grid{grid-template-columns:1fr}
	.ogt-mag__feat .ogt-mag__link{min-height:340px}
}
@media(max-width:520px){.ogt-mag__side{grid-template-columns:1fr}}

/* ---- Centres (grille adaptative + zoom au survol) ------------------------ */
.ogt-centers__grid{display:grid;grid-template-columns:repeat(var(--cols,2),1fr);gap:24px}
.ogt-center{background:#fff;border:1px solid #e6edf5;border-radius:18px;overflow:hidden;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-center:hover{transform:translateY(-7px);box-shadow:var(--ogt-shadow)}
.ogt-center__media{aspect-ratio:16/10;overflow:hidden;position:relative;background:var(--ogt-light)}
.ogt-center__media img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ogt-ease)}
.ogt-center:hover .ogt-center__media img{transform:scale(1.09)}
.ogt-center__media.is-noimg{display:grid;place-items:center;background:linear-gradient(135deg,var(--ogt-dark),var(--ogt-primary))}
.ogt-center__pin{font-size:2.2rem;filter:drop-shadow(0 3px 8px rgba(0,0,0,.4))}
.ogt-center__body{padding:20px 22px 24px}
.ogt-center__tag{display:inline-block;font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;
	font-size:.7rem;color:var(--ogt-secondary);background:color-mix(in srgb,var(--ogt-secondary) 14%,transparent);
	padding:3px 10px;border-radius:99px;margin-bottom:8px}
.ogt-center__city{font-size:1.45rem;margin:0}
.ogt-center__area{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.05em;font-size:.74rem;color:var(--ogt-primary)}
.ogt-center__desc{color:#5b6775;margin:.6em 0 0}
.ogt-dark .ogt-center{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}
.ogt-dark .ogt-center__city{color:#fff}.ogt-dark .ogt-center__desc{color:#aebfd2}
@media(max-width:900px){.ogt-centers__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ogt-centers__grid{grid-template-columns:1fr}}

/* ---- Partenaires : logos plus grands + ruban animé ----------------------- */
.ogt-plogo img{max-height:72px}
.ogt-partners__logos{gap:30px 56px}
.ogt-marquee{overflow:hidden;width:100%;margin-top:8px;
	-webkit-mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
	mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.ogt-marquee__track{display:flex;align-items:center;gap:64px;width:max-content;animation:ogt-marq 30s linear infinite}
.ogt-marquee:hover .ogt-marquee__track{animation-play-state:paused}
@keyframes ogt-marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ogt-marquee__track{animation:none}}

/* ---- CTA « Rejoindre l'académie » (soft + formulaire) -------------------- */
.ogt-join{background:linear-gradient(135deg,var(--ogt-primary) 0%,var(--ogt-dark) 70%)}
.ogt-join.has-bg{background:var(--ogt-dark)}
.ogt-join__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,60px);align-items:center}
.ogt-join__title{font-family:var(--ogt-font-display);font-weight:400;color:#fff;font-size:clamp(2rem,4.2vw,3.3rem);line-height:.96;margin:.12em 0}
.ogt-join__sub{color:#dbe6f2;max-width:480px}
.ogt-join__card{background:#fff;border-radius:20px;padding:clamp(24px,4vw,40px);box-shadow:0 32px 80px -28px rgba(0,0,0,.55)}
.ogt-join__formtitle{font-size:1.5rem;margin-bottom:18px;color:var(--ogt-dark)}
@media(max-width:860px){.ogt-join__inner{grid-template-columns:1fr}}

/* ---- Vidéos YouTube ------------------------------------------------------ */
.ogt-video__thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:14px;cursor:pointer;
	background-size:cover;background-position:center;overflow:hidden}
.ogt-video__thumb::after{content:"";position:absolute;inset:0;background:rgba(8,15,25,.28);transition:background .3s}
.ogt-video:hover .ogt-video__thumb::after{background:rgba(8,15,25,.1)}
.ogt-video__play{position:absolute;inset:0;margin:auto;width:58px;height:58px;display:grid;place-items:center;z-index:2;
	background:var(--ogt-secondary);color:#1a1206;border-radius:50%;font-size:1.2rem;padding-left:3px;transition:transform .3s var(--ogt-ease)}
.ogt-video:hover .ogt-video__play{transform:scale(1.12)}
.ogt-video__title{color:#fff;font-size:1rem;margin:12px 2px 0;line-height:1.3}
.ogt-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:14px;display:block}

/* ---- Équipe dirigeante (carrousel) --------------------------------------- */
.ogt-leader{background:#fff;border:1px solid #e6edf5;border-radius:16px;overflow:hidden;
	transition:transform .3s var(--ogt-ease),box-shadow .3s}
.ogt-leader:hover{transform:translateY(-5px);box-shadow:var(--ogt-shadow)}
.ogt-leader__media{aspect-ratio:3/4;background:linear-gradient(150deg,var(--ogt-dark),var(--ogt-primary));
	background-size:cover;background-position:center top;display:grid;place-items:center}
.ogt-leader__initial{font-family:var(--ogt-font-display);font-size:3rem;color:rgba(255,255,255,.5)}
.ogt-leader__body{padding:16px 18px 20px}
.ogt-leader__name{font-size:1.12rem;margin:0;color:var(--ogt-dark)}
.ogt-leader__role{font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;color:var(--ogt-secondary)}

/* ============================================================================
   V3.1 — Zoom au survol (personnes + produits), logos plus hauts, ajustements
   ============================================================================ */

/* Zoom image au survol — fiches personnes (staff, management, figures) */
.ogt-person__media{transition:transform .55s var(--ogt-ease)}
.ogt-person:hover .ogt-person__media{transform:scale(1.07)}

/* Zoom — équipe dirigeante */
.ogt-leader__media{transition:transform .55s var(--ogt-ease)}
.ogt-leader:hover .ogt-leader__media{transform:scale(1.07)}

/* Zoom — produits boutique (la barre d'accent reste) */
.ogt-pcard__media{overflow:hidden}
.ogt-pcard__media img{transition:transform .55s var(--ogt-ease)}
.ogt-pcard:hover .ogt-pcard__media img{transform:scale(1.08)}

/* Logos partenaires plus hauts */
.ogt-plogo img{max-height:88px}
.ogt-marquee__track{gap:72px}
.ogt-partners__logos{gap:34px 64px}

/* ============================================================================
   V3.2 — Académie, galerie filtrable, cartes, formulaires, soutien, vidéos
   ============================================================================ */

/* ---- Zoom image « École de football » ------------------------------------ */
.ogt-about__imgwrap{overflow:hidden;border-radius:var(--ogt-radius)}
.ogt-about__img{display:block;width:100%;transition:transform .6s var(--ogt-ease)}
.ogt-about__media:hover .ogt-about__img{transform:scale(1.06)}

/* ---- Cadrage des dirigeants (visage mieux centré) ------------------------ */
.ogt-leader__media{background-position:center 18%}

/* ---- Page Académie : intro propre ---------------------------------------- */
.ogt-acad-intro__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,5vw,60px);align-items:center;padding-block:clamp(40px,6vw,72px)}
.ogt-acad-intro__media{overflow:hidden;border-radius:var(--ogt-radius);box-shadow:var(--ogt-shadow);aspect-ratio:4/3;background:var(--ogt-light)}
.ogt-acad-intro__media.is-noimg{display:grid;place-items:center;background:linear-gradient(135deg,var(--ogt-dark),var(--ogt-primary))}
.ogt-acad-intro__ph{font-size:4rem}
.ogt-acad-intro__img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ogt-ease)}
.ogt-acad-intro__media:hover .ogt-acad-intro__img{transform:scale(1.06)}
.ogt-acad-intro__body{color:#4b5765;margin:.6em 0 0}
.ogt-acad-intro__body p{margin:0 0 1em}
.ogt-acad-facts{display:flex;gap:36px;margin-top:24px;flex-wrap:wrap}
.ogt-acad-facts .ogt-fact__num{color:var(--ogt-primary)}
@media(max-width:820px){.ogt-acad-intro__grid{grid-template-columns:1fr}}

/* ---- Fiches personnes affinées (management) ------------------------------ */
.ogt-people__grid{gap:26px}
.ogt-person{border-radius:18px}
.ogt-person__media{aspect-ratio:1/1}
.ogt-person__body{padding:18px 20px 22px}
.ogt-person__name{font-size:1.2rem}
.ogt-person__role{display:inline-block;margin-top:3px}

/* ---- Galerie filtrable (onglets + charger plus) -------------------------- */
.ogt-galfilter{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}
.ogt-galtab{border:1px solid #dfe7f0;background:#fff;color:var(--ogt-dark);border-radius:99px;padding:9px 18px;cursor:pointer;
	font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;transition:.2s}
.ogt-galtab span{opacity:.6;margin-left:4px}
.ogt-galtab:hover{border-color:var(--ogt-primary);color:var(--ogt-primary)}
.ogt-galtab.is-active{background:var(--ogt-primary);border-color:var(--ogt-primary);color:#fff}
.ogt-galx__item.is-hidden{display:none}
.ogt-galmore-wrap{text-align:center;margin-top:30px}
.ogt-galmore[hidden]{display:none}

/* ---- Cartes contact (Google Maps) ---------------------------------------- */
.ogt-maps{padding-block:clamp(20px,4vw,50px)}
.ogt-maps__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ogt-map{margin:0;border-radius:var(--ogt-radius);overflow:hidden;box-shadow:var(--ogt-shadow-sm);background:var(--ogt-light)}
.ogt-map iframe{width:100%;height:320px;border:0;display:block}
.ogt-map figcaption{padding:12px 16px;font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;color:var(--ogt-dark);background:#fff}
.ogt-wa-ico{color:#25D366;display:inline-flex}
@media(max-width:760px){.ogt-maps__grid{grid-template-columns:1fr}}

/* ---- Bouton « Soutenir l'académie » (barre supérieure) ------------------- */
.ogt-support{display:inline-flex;align-items:center;gap:7px;margin-left:16px;background:var(--ogt-secondary);color:#1a1206;
	font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.04em;font-size:.74rem;font-weight:700;
	padding:6px 14px;border-radius:99px;transition:transform .2s var(--ogt-ease),filter .2s}
.ogt-support:hover{color:#1a1206;transform:translateY(-1px);filter:brightness(1.06)}
.ogt-support span{color:#1a1206}
@media(max-width:780px){.ogt-support{display:none}}

/* ---- Formulaires OG habillés (Rejoindre + Contact) ----------------------- */
.ogt-join__card form,.ogt-card-form form{display:flex;flex-direction:column;gap:14px}
.ogt-join__card label,.ogt-card-form label{display:block;font-family:var(--ogt-font-heading);text-transform:uppercase;
	letter-spacing:.04em;font-size:.72rem;color:#5b6775;margin-bottom:5px}
.ogt-join__card input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.ogt-join__card textarea,.ogt-join__card select,
.ogt-card-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.ogt-card-form textarea,.ogt-card-form select{
	width:100%;padding:12px 14px;border:1px solid #dfe7f0;border-radius:10px;background:#fff;font:inherit;color:var(--ogt-text);
	transition:border-color .2s,box-shadow .2s}
.ogt-join__card input:focus,.ogt-join__card textarea:focus,.ogt-join__card select:focus,
.ogt-card-form input:focus,.ogt-card-form textarea:focus,.ogt-card-form select:focus{
	outline:0;border-color:var(--ogt-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--ogt-primary) 18%,transparent)}
.ogt-join__card textarea,.ogt-card-form textarea{min-height:120px;resize:vertical}
.ogt-join__card button,.ogt-join__card input[type=submit],
.ogt-card-form button,.ogt-card-form input[type=submit]{
	appearance:none;cursor:pointer;border:0;background:var(--ogt-primary);color:#fff;border-radius:10px;padding:13px 24px;
	font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.04em;font-size:.86rem;transition:background .2s,transform .2s}
.ogt-join__card button:hover,.ogt-card-form button:hover,
.ogt-join__card input[type=submit]:hover,.ogt-card-form input[type=submit]:hover{background:var(--ogt-dark);transform:translateY(-1px)}

/* ============================================================================
   V3.2.1 — Bouton hero blanc, jonction footer, formulaires affinés
   ============================================================================ */

/* Bouton secondaire du hero : lisible sur fond sombre */
.ogt-slider .ogt-btn--ghost{color:#fff;border-color:rgba(255,255,255,.7)}
.ogt-slider .ogt-btn--ghost:hover{background:#fff;color:var(--ogt-dark);border-color:#fff}

/* Supprime la bande blanche entre une section pleine couleur et le footer */
.ogt-main > .ogt-join:last-child,
.ogt-main > .ogt-sec.ogt-dark:last-child,
.ogt-main > .ogt-sec.has-bg:last-child{margin-bottom:calc(-1 * clamp(40px,6vw,80px))}

/* Formulaires plus raffinés (moins « lourds ») */
.ogt-join__card label,.ogt-card-form label{
	font-family:var(--ogt-font-body);text-transform:none;letter-spacing:0;font-weight:600;
	font-size:.84rem;color:#5b6775;margin-bottom:6px}
.ogt-join__card input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.ogt-join__card textarea,.ogt-join__card select,
.ogt-card-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.ogt-card-form textarea,.ogt-card-form select{
	padding:11px 14px;border:1px solid #e2e8f0;border-radius:10px;font-size:.95rem;background:#fbfcfe}
.ogt-join__card form,.ogt-card-form form{gap:16px}
.ogt-join__card textarea,.ogt-card-form textarea{min-height:110px}
.ogt-join__card button,.ogt-join__card input[type=submit],
.ogt-card-form button,.ogt-card-form input[type=submit]{
	align-self:flex-start;padding:12px 26px;font-size:.8rem;letter-spacing:.06em;border-radius:10px}
.ogt-join__formtitle,.ogt-card-form h2,.ogt-card-form h3{font-size:1.35rem}
/* Astérisque obligatoire plus discret */
.ogt-join__card .required,.ogt-card-form .required,
.ogt-join__card label .req,.ogt-card-form label .req{color:var(--ogt-secondary);font-weight:400}

/* ============================================================================
   V3.3 — Équipe dirigeante en grille (5/ligne), cartes réduites
   ============================================================================ */
.ogt-leaders__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ogt-leaders__grid .ogt-leader__media{aspect-ratio:4/5;background-position:center 16%}
.ogt-leaders__grid .ogt-leader__body{padding:12px 14px 16px}
.ogt-leaders__grid .ogt-leader__name{font-size:1.08rem;line-height:1.2}
.ogt-leaders__grid .ogt-leader__role{font-size:.66rem}
@media(max-width:1000px){.ogt-leaders__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.ogt-leaders__grid{grid-template-columns:repeat(2,1fr);gap:14px}}

/* ============================================================================
   V3.4 — Cartes de catégories (style catalogue, charte Essos)
   ============================================================================ */
.ogt-catblock{margin:0 0 6px}
.ogt-catblock + .ogt-carousel,.ogt-catblock + .ogt-shopextra{margin-top:34px}
.ogt-catcards{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:14px}
.ogt-catcard{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #d9e2ee;border-radius:14px;
	padding:16px 18px;flex:0 1 calc((100% - 36px)/3);min-width:240px;box-shadow:0 8px 24px -18px rgba(13,27,42,.4);
	transition:transform .25s var(--ogt-ease),box-shadow .25s,border-color .25s;position:relative}
.ogt-catcard::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;
	background:linear-gradient(180deg,var(--ogt-primary),var(--ogt-secondary));opacity:0;transition:opacity .25s}
.ogt-catcard:hover{transform:translateY(-4px);box-shadow:var(--ogt-shadow);border-color:var(--ogt-primary)}
.ogt-catcard:hover::before{opacity:1}
.ogt-catcard__media{width:64px;height:64px;flex:0 0 64px;border-radius:10px;overflow:hidden;background:var(--ogt-light);
	display:grid;place-items:center}
.ogt-catcard__media img{width:100%;height:100%;object-fit:cover}
.ogt-catcard__media.is-noimg{background:linear-gradient(135deg,var(--ogt-dark),var(--ogt-primary))}
.ogt-catcard__ico{font-size:1.5rem}
.ogt-catcard__text{flex:1;min-width:0}
.ogt-catcard__name{display:block;font-family:var(--ogt-font-heading);font-size:1.12rem;color:var(--ogt-dark);
	letter-spacing:.01em;line-height:1.2}
.ogt-catcard__count{display:block;font-size:.84rem;color:var(--ogt-primary);font-weight:600;margin-top:3px}
.ogt-catcard__arrow{color:var(--ogt-primary);font-size:1.15rem;opacity:0;transform:translateX(-6px);
	transition:opacity .25s,transform .25s var(--ogt-ease)}
.ogt-catcard:hover .ogt-catcard__arrow{opacity:1;transform:none}
.ogt-catcards__more{text-align:center;margin-top:30px}
.ogt-shopcats__label{display:block;font-family:var(--ogt-font-heading);text-transform:uppercase;letter-spacing:.08em;
	font-size:.78rem;color:var(--ogt-secondary);margin-bottom:4px}
.ogt-dark .ogt-catcard{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}
.ogt-dark .ogt-catcard__name{color:#fff}
.ogt-dark .ogt-catcard__media{background:rgba(255,255,255,.08)}
@media(max-width:860px){.ogt-catcard{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:520px){.ogt-catcard{flex-basis:100%}}
/* Air en bas de la section boutique */
.ogt-shop{padding-bottom:clamp(56px,7vw,96px)}

/* V3.5.1 — Bouton boutique centré sous les produits */
.ogt-shop__cta{text-align:center;margin-top:34px}

/* V3.5.2 — Intitulé du carrousel produits (accueil) */
.ogt-shopsel{margin-top:10px}
.ogt-shopsel .ogt-shopcats__label{margin-bottom:0}
