/*
Theme Name: Lumee Legal Child
Theme URI: https://legal.lumee.ch
Description: Thème enfant GeneratePress pour Lumee Legal — l'agence digitale des professionnels du droit en Suisse romande. Direction artistique « Bleu nuit + or ». À installer par-dessus le thème GeneratePress.
Author: Lumee (Infinity Aurora)
Author URI: https://www.lumee.ch
Template: generatepress
Version: 1.0.0
Text Domain: lumeelegal-child
*/

/* =========================================================================
   LUMEE LEGAL — CSS global GeneratePress (Bleu nuit + or)
   Gère : typographie, couleurs, header sticky, boutons CTA + WhatsApp,
   footer sombre, barre de copyright, barre d'accent supérieure.
   Le corps des pages (blocs HTML) est scopé sous .ll-page (voir gp-config).
   ========================================================================= */

@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400&family=Inter:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap");

:root{
  --ll-navy:#0c1c34;
  --ll-navy-deep:#081324;
  --ll-ink:#13233d;
  --ll-ink-soft:#4f5d75;
  --ll-ink-mute:#8693a8;
  --ll-gold:#D4A02C;
  --ll-gold-deep:#8f6a1e;
  --ll-accent:#DCB24A;
  --ll-mint:#f4efe2;
  --ll-mint-2:#faf7ef;
  --ll-paper:#f8f6f0;
  --ll-line:#e7e0d0;
  --ll-line-2:#d9d0bb;
  --ll-white:#ffffff;
  --ll-shadow:0 18px 50px rgba(12,28,52,.12);
}

/* ---------- Typographie globale ---------- */
body,
.main-navigation a,
button, .button, input, select, textarea,
.wp-block-button__link{
  font-family:'Inter',system-ui,sans-serif;
}
body{color:var(--ll-ink);background:var(--ll-paper);line-height:1.6;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6{font-family:'Fraunces',Georgia,serif;font-weight:500;letter-spacing:-.01em;line-height:1.12;color:var(--ll-navy);}
a{color:var(--ll-gold-deep);text-decoration:none;}
a:hover{color:var(--ll-gold);}

/* ---------- Barre d'accent supérieure (injectée via functions.php) ---------- */
.ll-topbar{height:4px;background:linear-gradient(90deg,var(--ll-gold),var(--ll-navy));}

/* ---------- Header (sticky + verre dépoli) ---------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(248,246,240,.88);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--ll-line);
}
.site-logo img,.site-header .header-image{max-height:40px;width:auto;}
.main-title,.site-title{font-family:'Fraunces',serif;font-weight:600;letter-spacing:-.02em;}

/* ---------- Navigation principale ---------- */
.main-navigation{background:transparent;}
.main-navigation .main-nav ul li a{
  color:var(--ll-ink-soft);font-weight:500;font-size:.92rem;
}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item a{color:var(--ll-gold-deep);}
.main-navigation .main-nav ul ul{
  background:var(--ll-white);border:1px solid var(--ll-line);
  border-radius:14px;box-shadow:var(--ll-shadow);padding:8px;
}
.main-navigation .main-nav ul ul li a{border-radius:8px;}
.main-navigation .main-nav ul ul li a:hover{background:var(--ll-mint);}

/* ---------- Boutons ---------- */
.wp-block-button__link,
.button,button,input[type="submit"],
.main-navigation .menu-bar-items .menu-bar-item > a{
  background:var(--ll-navy);color:#fff;border:none;border-radius:40px;
  padding:12px 24px;font-weight:600;transition:.22s;
}
.wp-block-button__link:hover,.button:hover,button:hover,input[type="submit"]:hover{
  background:var(--ll-navy-deep);color:#fff;transform:translateY(-2px);
}
.wp-block-button.is-style-outline .wp-block-button__link{
  background:transparent;color:var(--ll-ink);border:1.5px solid var(--ll-line-2);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover{
  border-color:var(--ll-gold);color:var(--ll-gold-deep);
}

/* ---------- Éléments de menu spéciaux : CTA doré + WhatsApp ---------- */
/* L'item CTA est centré verticalement pour que le bouton ne prenne pas toute la hauteur de la barre */
.main-navigation .main-nav ul li.ll-cta{display:flex;align-items:center;}
.main-navigation .main-nav ul li.ll-cta a{
  background:var(--ll-gold);color:#1a1405;
  border-radius:10px;                 /* arrondi plus sobre */
  padding:9px 18px !important;        /* hauteur maîtrisée */
  line-height:1.25 !important;
  margin:0 0 0 10px;font-weight:600;
}
.main-navigation .main-nav ul li.ll-cta a:hover{background:var(--ll-gold-deep);color:#fff;}
.main-navigation .main-nav ul li.ll-wa a{color:#1eae5b;font-weight:600;}
.main-navigation .main-nav ul li.ll-wa a:hover{color:#178f4a;}

/* ---------- Pied de page (widgets, sombre) ---------- */
.site-footer .footer-widgets{background:var(--ll-navy);color:#bfcde0;padding-top:56px;padding-bottom:30px;}
.footer-widgets .widget-title,.footer-widgets .widgettitle{
  font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ll-accent);margin-bottom:14px;
}
.footer-widgets a{color:#bfcde0;}
.footer-widgets a:hover{color:#fff;}
.footer-widgets p{color:#98aac3;font-size:.9rem;}
.ll-foot-logo{max-height:34px;width:auto;margin-bottom:14px;}

/* ---------- Footer : 4 widgets HTML séparés (« Widgets de pied de page = 4 ») ----------
   Chaque widget « HTML personnalisé » contient un bloc .ll-fw et tombe dans sa
   propre colonne GeneratePress. Le style ci-dessous habille le contenu. */
.ll-fw{color:#bfcde0;}
.ll-fbrand{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:600;color:#fff;line-height:1.1;}
.ll-fbrand b{color:var(--ll-gold);}
.ll-fpill{font-family:'IBM Plex Mono',monospace;font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;background:var(--ll-gold);color:#1a1405;padding:3px 7px;border-radius:5px;margin-left:6px;white-space:nowrap;}
.ll-fw p{color:#98aac3;font-size:.9rem;margin:14px 0;line-height:1.6;}
.ll-fw p a{color:#dde6f2;}
.ll-fw p a:hover{color:#fff;}
.ll-fw h4{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ll-accent);margin:0 0 14px;}
.ll-fw ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.ll-fw a{color:#bfcde0;font-size:.9rem;text-decoration:none;}
.ll-fw a:hover{color:#fff;}
.ll-flogo{height:40px;width:auto;max-width:100%;margin-bottom:4px;}

/* ---------- Barre de copyright ---------- */
.site-info{background:var(--ll-navy-deep);color:#8fa1ba;font-size:.8rem;}
.site-info a{color:#bfcde0;}
.site-info a:hover{color:#fff;}
/* Liens légaux ajoutés au copyright (mentions, confidentialité, cookies, CGV) */
.ll-legal-links{display:inline-flex;flex-wrap:wrap;gap:16px;margin-left:14px;}
.ll-legal-links a{color:#8fa1ba;}
.ll-legal-links a:hover{color:#fff;}
@media(max-width:600px){.ll-legal-links{display:flex;margin:8px 0 0;width:100%;gap:14px;}}

/* ---------- Divers ---------- */
.entry-content .wp-block-image img{border-radius:16px;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ll-gold);}

@media(max-width:768px){
  .site-header{background:rgba(248,246,240,.96);}
}

/* --- Pages Lumee Legal : supprime les 2 bandes blanches du conteneur GeneratePress --- */
.page .site-content{padding-top:0;padding-bottom:0}
.page .site-main{margin:0}
.page .inside-article{padding:0;margin:0;background-color:transparent;border:0;box-shadow:none}
.page .entry-content{margin:0;padding:0}
.page .content-area{background:transparent}

/* --- Page cookies Complianz (ll-plain) : titre visible + contenu lisible et centré --- */
.ll-plain .site-content{padding-top:40px;padding-bottom:40px}
.ll-plain .entry-header,
.ll-plain .entry-content{max-width:840px;margin-left:auto;margin-right:auto;padding-left:22px;padding-right:22px}
.ll-plain .entry-title{font-size:2rem;color:var(--ll-navy);margin-bottom:20px}
.ll-plain .entry-content{color:var(--ll-ink-soft)}

/* --- Articles (single post) : supprime les 2 bandes blanches (date/auteur en haut, catégorie + navigation en bas) --- */
.single .entry-meta,            /* bande du haut : date + auteur */
.single .entry-header .posted-on,
.single .entry-header .byline,
.single .entry-footer,          /* bande du bas : catégorie */
.single .post-navigation,       /* navigation article précédent / suivant */
.single .paging-navigation{display:none !important}

.single .entry-header{padding:0;margin:0;background:transparent}
.single .site-content{padding-top:0;padding-bottom:0}
.single .site-main{margin:0}
.single .inside-article{padding:0;margin:0;background-color:transparent;border:0;box-shadow:none}
.single .entry-content{margin:0;padding:0}
.single .content-area{background:transparent}
