/* ============================================================================
   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: 1240px;
	--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:clamp(48px,7vw,84px) 0 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:20px 0;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}}
