/*
Theme Name: O+ Olga Ustabashieva
Theme URI: https://olgaustabashieva.com
Author: Olga Ustabashieva
Author URI: https://olgaustabashieva.com
Description: Thème autonome « O+ » : la version finale de la maquette (accueil, projets, à propos et les cinq pages projet), avec ses transitions, la matière du + et les GIF. Sans Divi.
Version: 1.4.2
Requires at least: 6.2
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: oplus
*/

/* Polices auto-hébergées (licence OFL) : Host Grotesk et Raleway (pages L'Index). */
@font-face {
	font-family: 'Host Grotesk';
	font-style: normal;
	font-display: swap;
	font-weight: 300 800;
	src: url('assets/fonts/host-grotesk-latin-ext-wght-normal.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Host Grotesk';
	font-style: normal;
	font-display: swap;
	font-weight: 300 800;
	src: url('assets/fonts/host-grotesk-latin-wght-normal.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Raleway';
	font-style: normal;
	font-display: swap;
	font-weight: 100 900;
	src: url('assets/fonts/raleway-latin-ext-wght-normal.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Raleway';
	font-style: normal;
	font-display: swap;
	font-weight: 100 900;
	src: url('assets/fonts/raleway-latin-wght-normal.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body.ou-board { background: #0c0c0c; }
#ou-app { min-height: 100vh; }

/* Défilement glissant (Lenis) */
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }
/* Version HTML statique (pour les moteurs de recherche), remplacée dès que la page s'anime. */
#ou-app > .ou-snap { visibility: hidden; }

/* Pages hors maquette (mentions légales, etc.) */
body.ou-plain { background: #f8f8f8; color: #0c0c0c; font-family: 'Host Grotesk', Helvetica, Arial, sans-serif; font-size: 14px; line-height: 1.5; }
.ou-plain-head { display: flex; justify-content: space-between; align-items: center; padding: 20px 1.4vw; font-size: 12px; text-transform: uppercase; }
.ou-plain-head a { color: inherit; text-decoration: none; }
.ou-plain-head img { width: 42px; height: auto; display: block; }
.ou-plain-main { max-width: 760px; margin: 0 auto; padding: 8vh 1.4vw 12vh; }
.ou-plain-main h1 { font-size: clamp(36px, 5vw, 72px); font-weight: 500; line-height: 1; letter-spacing: -2px; text-transform: uppercase; margin: 0 0 6vh; }
.ou-plain-main a { color: #FF5200; }
.ou-plain-main img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
