/*
Theme Name: Tourbier Patrimoine
Theme URI: https://tourbier-patrimoine.fr/
Description: Thème WordPress autonome et sur mesure de Tourbier Patrimoine pour présenter les offres d’assurance, de financement et de gestion patrimoniale, les simulateurs, les articles et les formulaires sécurisés. Responsive, accessible, SEO natif, sans constructeur ni dépendance front-end distante.
Author: Syntaxeo
Author URI: https://syntaxeo.com/
Version: 2.6.5
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: tourbier-patrimoine
License: GNU General Public License v2.0 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-logo, featured-images, responsive-layout, accessibility-ready
*/

:root {
    --tourbier-navy: #102f4d;
    --tourbier-blue: #26466f;
    --tourbier-sand: #ede8e4;
    --tourbier-ink: #111820;
    --tourbier-muted: #5e6771;
    --tourbier-white: #ffffff;
    --tourbier-content-width: 1440px;
    --tourbier-page-padding: clamp(20px, 4vw, 64px);
    color-scheme: light;
}

html {
    box-sizing: border-box;
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

body {
    min-width: 320px;
    margin: 0;
    color: var(--tourbier-ink);
    background: var(--tourbier-white);
    font-family: Inter, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.625;
    text-rendering: optimizeLegibility;
}

body.admin-bar {
    min-height: calc(100vh - 32px);
}

img,
svg,
video {
    max-width: 100%;
    height: auto;
}

button,
input,
select,
textarea {
    color: inherit;
    font: inherit;
}

button,
[type="button"],
[type="submit"] {
    cursor: pointer;
}

a {
    color: var(--tourbier-blue);
    text-decoration-thickness: 0.08em;
    text-underline-offset: 0.18em;
}

:focus-visible {
    outline: 3px solid #b89b7a;
    outline-offset: 3px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--tourbier-navy);
    font-family: Poppins, Arial, sans-serif;
    line-height: 1.15;
}

.tourbier-site {
    min-height: 100vh;
    overflow: clip;
}

.container-wrap {
    width: 100%;
    margin: 0;
}

.tourbier-fallback {
    width: min(var(--tourbier-content-width), calc(100% - (2 * var(--tourbier-page-padding))));
    min-height: 55vh;
    margin-inline: auto;
    padding-block: clamp(64px, 8vw, 120px);
}

.tourbier-fallback__content {
    max-width: 880px;
}

.tourbier-form .form-required {
    color: #c9252d;
}

.tourbier-form button[type="submit"] {
    display: block;
    margin-inline: auto;
}

.tourbier-form select {
    min-height: 48px;
}

.tourbier-form__trap {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.tourbier-form__configuration-error {
    margin: 16px 0;
    padding: 12px 14px;
    border: 1px solid #d7aaaa;
    border-radius: 8px;
    color: #7b2929;
    background: #fff3f3;
    font-size: 13px;
    line-height: 1.5;
}

.grecaptcha-badge {
    visibility: hidden;
}

.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.screen-reader-text:focus {
    z-index: 100000;
    top: 8px;
    left: 8px;
    width: auto;
    height: auto;
    padding: 12px 18px;
    clip: auto;
    color: var(--tourbier-navy);
    background: var(--tourbier-white);
    white-space: normal;
}

@media (max-width: 782px) {
    body.admin-bar {
        min-height: calc(100vh - 46px);
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}
