/*
Theme Name: Vendre sa demeure — Thème enfant
Template: hello-elementor
Description: Thème enfant Hello Elementor. Variables CSS (palette, typo), enqueue et overrides. Aucune référence client en dur dans le code.
Author: Cintu Communication
Version: 1.0.0
Text Domain: cintu-immo-part-child
*/
:root {
--cip-marine: #1A3C5E;
--cip-or: #C5A656;
--cip-or-hover: #B8944A;
--cip-bleu-pale: #EEF2F7;
--cip-creme: #FBF6EC;
--cip-anthracite: #2C2C2C;
--cip-gris: #666666;
--cip-gris-titre: #555555;
--cip-gris-bordure: #CCCCCC;
--cip-blanc: #FFFFFF;
--cip-font: Arial, "Helvetica Neue", Helvetica, sans-serif;
--cip-max-width: 1280px;
--cip-section-padding: 70px;
--cip-radius: 5px;
}
body { font-family: var(--cip-font); color: var(--cip-anthracite); font-size: 17px; line-height: 1.7; }
h1, h2, h3, h4 { font-family: var(--cip-font); font-weight: 700; color: var(--cip-marine); line-height: 1.25; }
h1 { font-size: 30px; }
h2 { font-size: 23px; }
h3 { font-size: 21px; color: var(--cip-gris-titre); }
p { font-size: 17px; line-height: 1.7; }
.cip-text-secondary { font-size: 14px; color: var(--cip-gris); }
a { color: var(--cip-marine); }
a:hover { color: var(--cip-or); }
.cip-container { max-width: var(--cip-max-width); margin: 0 auto; padding-left: 40px; padding-right: 40px; }
.cip-btn-primary { display: inline-block; background: var(--cip-or); color: var(--cip-blanc); font-weight: 700; font-size: 16px; padding: 13px 26px; border-radius: var(--cip-radius); border: none; text-decoration: none; transition: background .2s ease; }
.cip-btn-primary:hover { background: var(--cip-or-hover); color: var(--cip-blanc); }
.cip-btn-secondary { display: inline-block; background: var(--cip-bleu-pale); color: var(--cip-marine); font-size: 15px; padding: 12px 24px; border: 1px solid var(--cip-marine); border-radius: var(--cip-radius); text-decoration: none; transition: all .2s ease; }
.cip-btn-secondary:hover { background: var(--cip-marine); color: var(--cip-blanc); }
.cip-note { background: var(--cip-creme); border-left: 3px solid var(--cip-or); padding: 16px 20px; border-radius: var(--cip-radius); }
@media (max-width: 768px) {
h1 { font-size: 26px; }
h2 { font-size: 21px; }
.cip-container { padding-left: 18px; padding-right: 18px; }
.cip-btn-primary, .cip-btn-secondary { display: block; width: 100%; text-align: center; }
}
img { max-width: 100%; height: auto; }

/* ============================================================
   HEADER
   ============================================================ */
.cip-header {
position: sticky; top: 0; z-index: 999;
background: var(--cip-blanc);
transition: box-shadow .2s ease;
}
.cip-header--scrolled { box-shadow: 0 2px 12px rgba(26,60,94,.12); }
.cip-header__inner {
display: flex; align-items: center; justify-content: space-between;
min-height: 72px;
}
.cip-header__logo {
font-weight: 700; font-size: 20px; letter-spacing: .5px;
color: var(--cip-marine); text-decoration: none;
}
.cip-header__logo span { color: var(--cip-or); }
.cip-nav__list {
display: flex; align-items: center; gap: 26px;
list-style: none; margin: 0; padding: 0;
}
.cip-nav__list a {
color: var(--cip-marine); text-decoration: none;
font-size: 15px; font-weight: 600;
}
.cip-nav__list a:hover { color: var(--cip-or); }
.cip-nav__cta {
background: var(--cip-or); color: var(--cip-blanc) !important;
padding: 9px 18px; border-radius: var(--cip-radius);
}
.cip-nav__cta:hover { background: var(--cip-or-hover); }
.cip-nav__account { color: var(--cip-gris) !important; }
.cip-burger {
display: none; background: none; border: none;
font-size: 26px; color: var(--cip-marine); cursor: pointer;
}

/* ============================================================
   FOOTER
   ============================================================ */
.cip-footer { background: var(--cip-marine); color: var(--cip-blanc); margin-top: 60px; }
.cip-footer__inner {
display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px;
padding-top: 50px; padding-bottom: 40px;
}
.cip-footer__col h4 { color: var(--cip-blanc); font-size: 16px; margin: 0 0 14px; }
.cip-footer__col ul { list-style: none; margin: 0; padding: 0; }
.cip-footer__col li { margin-bottom: 9px; }
.cip-footer__col a { color: var(--cip-gris-bordure); text-decoration: none; font-size: 14px; }
.cip-footer__col a:hover { color: var(--cip-or); }
.cip-footer__copy {
background: #142E48; color: var(--cip-or);
text-align: center; padding: 16px; font-size: 13px;
}

/* ============================================================
   RESPONSIVE HEADER/FOOTER
   ============================================================ */
@media (max-width: 1024px) {
.cip-footer__inner { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
.cip-burger { display: block; }
.cip-nav {
position: absolute; top: 72px; left: 0; right: 0;
background: var(--cip-blanc); box-shadow: 0 4px 12px rgba(26,60,94,.12);
max-height: 0; overflow: hidden; transition: max-height .3s ease;
}
.cip-nav--open { max-height: 500px; }
.cip-nav__list { flex-direction: column; align-items: stretch; gap: 0; }
.cip-nav__list li { border-bottom: 1px solid var(--cip-bleu-pale); }
.cip-nav__list a { display: block; padding: 14px 40px; }
.cip-nav__cta { background: var(--cip-or); text-align: center; }
.cip-footer__inner { grid-template-columns: 1fr; }
}
