/*
Theme Name: RSG & CIE
Theme URI: https://example.com
Author: RSG & CIE
Description: Thème WordPress pour la plateforme RSG & CIE — annuaire, membres, boutique et espaces publicitaires.
Version: 1.7.4
Text Domain: rsg-cie-theme
*/
:root{--navy:#06386b;--navy2:#0a4c88;--gold:#ffb313;--gold-soft:#fff1bd;--cream:#fffaf0;--sky:#eef7ff;--line:#dce8f2;--text:#17324d;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:#fff;line-height:1.5}a{color:var(--navy);text-decoration:none}img{max-width:100%;height:auto}.site-shell{width:min(1180px,calc(100% - 30px));margin:auto}.topbar{background:var(--navy);color:#fff;font-size:.86rem}.topbar .site-shell{display:flex;justify-content:flex-end;gap:20px;padding:7px 0}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.header-main{display:flex;align-items:center;gap:24px;padding:12px 0}.brand img{width:210px;max-height:78px;object-fit:contain}.main-nav{display:flex;gap:17px;align-items:center;flex:1;justify-content:center;font-weight:700;font-size:.94rem}.header-actions{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border-radius:12px;font-weight:800;border:2px solid transparent}.btn-primary{background:var(--gold);color:#082e58}.btn-outline{border-color:var(--navy);color:var(--navy);background:#fff}.hero{background:linear-gradient(120deg,#fff 0%,#fff8df 45%,#f5f9ff 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:430px;align-items:center;gap:20px}.hero-copy{padding:48px 0}.eyebrow{color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.hero h1{font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.02;color:var(--navy);margin:.35rem 0 1rem}.hero p{font-size:1.1rem;max-width:660px}.hero-art{height:100%;min-height:430px;background:linear-gradient(145deg,var(--gold-soft),#fff);display:grid;place-items:center;position:relative}.hero-art:before,.hero-art:after{content:"♥";position:absolute;color:var(--gold);font-size:5rem;opacity:.35}.hero-art:before{top:40px;left:45px}.hero-art:after{bottom:35px;right:55px}.hero-logo{max-width:480px;padding:30px}.search-strip{margin-top:-30px;position:relative;z-index:4}.search-box{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 40px rgba(6,56,107,.13);border-radius:18px;padding:16px}.search-box input,.search-box select{width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.section{padding:58px 0}.section-soft{background:var(--sky)}.section h2{font-size:2rem;color:var(--navy);margin:0 0 6px}.section-intro{margin:0 0 28px;color:#567}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.cat-card{border-radius:18px;padding:24px 18px;min-height:170px;border:1px solid var(--line);background:#fff;box-shadow:0 5px 18px rgba(6,56,107,.05)}.cat-card:nth-child(2n){background:#fff8df}.cat-card h3{color:var(--navy);margin:.5rem 0}.cat-icon{font-size:2rem}.home-grid{display:grid;grid-template-columns:1fr 300px;gap:22px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature{padding:20px;border-radius:16px;border:1px solid var(--line);background:#fff}.ad-slot{border:2px dashed var(--gold);background:#fff8df;border-radius:18px;min-height:120px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--navy);padding:24px;font-weight:800}.ad-tall{min-height:300px}.shop-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.product-demo{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.product-thumb{aspect-ratio:4/3;background:linear-gradient(135deg,#fff3c9,#eef7ff);display:grid;place-items:center;font-size:3rem}.product-demo div:last-child{padding:14px}.site-footer{background:var(--navy);color:#fff;padding:36px 0 20px;margin-top:50px}.footer-grid{display:grid;grid-template-columns:1.2fr 2fr;gap:30px}.footer-logo{width:190px;background:#fff;border-radius:12px;padding:6px}.footer-nav{display:flex;flex-wrap:wrap;gap:15px;align-content:flex-start}.footer-nav a{color:#fff}.single-profile{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;padding:40px 0}.profile-main,.profile-aside{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.profile-head{display:grid;grid-template-columns:180px 1fr;gap:22px}.profile-photo img{width:180px;height:180px;object-fit:cover;border-radius:18px}.profile-title h1{color:var(--navy);margin:.2rem 0}.meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}.info-box{background:#f8fbfe;border:1px solid var(--line);border-radius:14px;padding:16px}.info-box h3{color:var(--navy);margin-top:0}.contact-list{display:grid;gap:10px}.contact-list a{display:block;padding:11px;border-radius:10px;background:#eef7ff;font-weight:700}.page-wrap{padding:40px 0}.content-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--gold)!important;color:#082e58!important;border-radius:10px!important}.mobile-toggle{display:none}@media(max-width:980px){.main-nav{display:none}.header-actions{margin-left:auto}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:250px}.category-grid{grid-template-columns:repeat(2,1fr)}.home-grid{grid-template-columns:1fr}.features{grid-template-columns:1fr 1fr}.shop-preview{grid-template-columns:1fr 1fr}.single-profile{grid-template-columns:1fr}}@media(max-width:620px){.brand img{width:165px}.header-actions .btn-outline{display:none}.search-box{grid-template-columns:1fr}.category-grid,.features,.shop-preview,.meta-grid{grid-template-columns:1fr}.profile-head{grid-template-columns:1fr}.profile-photo img{width:100%;height:auto}.footer-grid{grid-template-columns:1fr}.hero-copy{padding:36px 0}.section{padding:40px 0}}


/* Gutenberg / editable home page */
.rsg-home-content > .wp-block-group,.rsg-home-content > .wp-block-shortcode{margin-top:0;margin-bottom:0}.rsg-home-content .wp-block-group.hero{max-width:none!important;padding:0}.rsg-home-content .wp-block-group.section{max-width:none!important;padding-top:58px;padding-bottom:58px}.rsg-home-content .wp-block-group.section-soft{max-width:none!important}.rsg-home-content .site-shell{max-width:1180px!important}.rsg-home-content .wp-block-image.hero-logo{margin:0}.rsg-home-content .wp-block-image.hero-logo img{max-width:480px;width:100%;height:auto}.rsg-home-content .wp-block-button__link{background:var(--gold);color:#082e58;font-weight:800;border-radius:12px;padding:11px 17px}.rsg-home-content .wp-block-button.is-style-outline .wp-block-button__link{background:#fff;color:var(--navy);border:2px solid var(--navy)}.rsg-home-content .features.wp-block-columns{margin:0}.rsg-home-content .feature.wp-block-column{padding:20px;border-radius:16px;border:1px solid var(--line);background:#fff}.editor-styles-wrapper{color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.editor-styles-wrapper .hero{background:linear-gradient(120deg,#fff 0%,#fff8df 45%,#f5f9ff 100%);padding:20px}.editor-styles-wrapper .category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.editor-styles-wrapper .cat-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}.editor-styles-wrapper .section-soft{background:var(--sky);padding:20px}.editor-styles-wrapper .site-shell{max-width:1180px;margin-left:auto!important;margin-right:auto!important}


/* Page Trouver une place */
.rsg-find-place-wrap{padding:46px 0 64px}.rsg-find-place-head{background:linear-gradient(135deg,#fff8df,#eef7ff);border:1px solid var(--line);border-radius:22px;padding:28px;margin-bottom:22px}.rsg-find-place-head h1{color:var(--navy);margin:0 0 8px;font-size:clamp(2rem,4vw,3.2rem)}.rsg-place-search{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px;margin:18px 0 26px;box-shadow:0 10px 30px rgba(6,56,107,.07)}.rsg-place-search input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:10px}.rsg-place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rsg-place-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 7px 24px rgba(6,56,107,.06)}.rsg-place-card h3{color:var(--navy);margin:0 0 6px}.rsg-place-card .rsg-place-count{display:inline-block;background:var(--gold-soft);color:var(--navy);font-weight:900;border-radius:999px;padding:6px 10px;margin:6px 0 12px}.rsg-place-meta{display:grid;gap:7px;margin:12px 0 16px}.rsg-place-meta span{display:block}.rsg-login-gate{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;text-align:center;max-width:760px;margin:26px auto}.rsg-login-gate h2{color:var(--navy);margin-top:0}.rsg-empty{padding:26px;border:1px dashed var(--gold);border-radius:16px;background:#fff8df;text-align:center}@media(max-width:900px){.rsg-place-grid{grid-template-columns:1fr 1fr}.rsg-place-search{grid-template-columns:1fr 1fr}}@media(max-width:620px){.rsg-place-grid,.rsg-place-search{grid-template-columns:1fr}}

.profile-content-section{margin-top:24px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.profile-content-section h2{color:var(--navy);margin-top:0}.profile-content-section .wp-block-gallery{margin-top:20px}.rsg-place-thumb img{width:100%;height:180px;object-fit:cover;border-radius:14px}.profile-photo-placeholder{width:180px;height:180px;background:#eef7ff;border-radius:18px}

.availability-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.availability-public-item{display:grid;gap:3px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#f8fbfe}.availability-public-item strong{color:var(--navy)}.availability-public-item small{color:#567}@media(max-width:700px){.availability-public-grid{grid-template-columns:1fr}}


/* RSG & CIE v1.7.2 — grille Explorez RSG & CIE réellement responsive */
.rsg-home-content .category-grid,
.rsg-home-content .wp-block-group.category-grid,
.rsg-home-content .wp-block-columns.category-grid,
.rsg-home-content .wp-block-group:has(> .cat-card){
  display:grid!important;
  /* 5 cartes sur grand écran, puis retour automatique à la ligne selon
     la largeur RÉELLE du conteneur (et non seulement celle du navigateur). */
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
  width:100%!important;
}
.rsg-home-content .category-grid > *,
.rsg-home-content .wp-block-group:has(> .cat-card) > .cat-card{
  min-width:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.rsg-home-content .category-grid > .wp-block-column{
  flex-basis:auto!important;
  flex-grow:0!important;
}
.rsg-home-content .cat-card,
.rsg-home-content .cat-card h3,
.rsg-home-content .cat-card p,
.rsg-home-content .cat-card a{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:auto;
}
@media (max-width:620px){
  .rsg-home-content .category-grid,
  .rsg-home-content .wp-block-group.category-grid,
  .rsg-home-content .wp-block-columns.category-grid,
  .rsg-home-content .wp-block-group:has(> .cat-card){
    grid-template-columns:1fr!important;
  }
}


/* RSG & CIE v1.7 — haut de page accueil en 2 colonnes */
.rsg-home-content .rsg-hero-two-columns{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)!important;
  gap:32px!important;
  align-items:center!important;
  max-width:1180px!important;
  width:min(1180px,calc(100% - 30px))!important;
  margin:0 auto!important;
  padding:46px 0!important;
}
.rsg-home-content .rsg-hero-two-columns > *{min-width:0!important;margin:0!important}
.rsg-home-content .rsg-hero-two-columns .rsg-hero-text{padding:10px 0!important}
.rsg-home-content .rsg-hero-two-columns .rsg-hero-image{
  min-height:360px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(145deg,var(--gold-soft),#eef7ff);
}
.rsg-home-content .rsg-hero-two-columns .rsg-hero-image img{
  width:100%!important;
  height:100%!important;
  min-height:360px;
  object-fit:cover!important;
  display:block;
}
.rsg-home-content .rsg-hero-two-columns h1{
  color:var(--navy);
  font-size:clamp(2.25rem,5vw,4.25rem);
  line-height:1.03;
  margin:.35rem 0 1rem;
}
.editor-styles-wrapper .rsg-hero-two-columns{
  display:grid!important;
  grid-template-columns:1.05fr .95fr!important;
  gap:28px!important;
  align-items:center!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.editor-styles-wrapper .rsg-hero-image{min-height:300px;background:#fff8df;border-radius:18px;overflow:hidden}
@media(max-width:800px){
  .rsg-home-content .rsg-hero-two-columns,
  .editor-styles-wrapper .rsg-hero-two-columns{grid-template-columns:1fr!important}
  .rsg-home-content .rsg-hero-two-columns .rsg-hero-image,
  .rsg-home-content .rsg-hero-two-columns .rsg-hero-image img{min-height:240px}
}


/* RSG & CIE v1.7.4 — aucune publicité sur les fiches publiques */
body.single-rsg_profile .ad-slot,
body.single-rsg_profile #ad-sidebar,
body.single-rsg_profile .widget-area.ad-sidebar,
body.single-rsg_service .ad-slot,
body.single-rsg_service #ad-sidebar,
body.single-rsg_service .widget-area.ad-sidebar{display:none!important;}
