/* Page Nos communes — galerie locale et orientation vendeurs */

body.ig-page-communes .master-content{
  background:
    radial-gradient(circle at 94% 24%,rgba(112,61,105,.08),transparent 26rem),
    linear-gradient(180deg,#fffdf9 0%,#f7eee6 54%,#fffaf5 100%);
}

.communes-showcase{margin:54px 0 58px}
.communes-showcase-head{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:52px;
  align-items:end;
  margin-bottom:28px;
}
.communes-showcase-head h2,
.communes-expertise-head h2,
.communes-seller-cta h2{
  margin:0;
  color:var(--joy-prune);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(2.45rem,3.6vw,3.45rem);
  font-weight:600;
  line-height:.96;
  letter-spacing:-.025em;
}
.communes-showcase-head p{
  margin:0;
  padding-left:25px;
  border-left:1px solid rgba(185,121,66,.42);
  color:#554c52;
  font-size:.9rem;
  line-height:1.75;
}

.communes-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.commune-card{
  display:block;
  overflow:hidden;
  border:1px solid rgba(185,121,66,.25);
  border-radius:11px;
  background:#fffdf9;
  box-shadow:0 17px 38px rgba(75,38,61,.09);
  color:inherit;
  text-decoration:none;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.commune-card:hover{
  transform:translateY(-5px);
  border-color:rgba(185,121,66,.48);
  box-shadow:0 24px 50px rgba(75,38,61,.15);
}
.commune-card-media{
  position:relative;
  aspect-ratio:4/3;
  margin:0;
  overflow:hidden;
  background:linear-gradient(145deg,#e9d5bf,#d8c2d9);
}
.commune-card-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(50,25,41,.02) 48%,rgba(50,25,41,.48) 100%);
}
.commune-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.94) contrast(1.04) brightness(.98);
  transition:transform .65s cubic-bezier(.2,.75,.2,1);
}
.commune-card:hover .commune-card-media img{transform:scale(1.035)}
.commune-card-index{
  position:absolute;
  z-index:1;
  right:16px;
  bottom:13px;
  color:#fff;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2rem;
  font-weight:600;
  line-height:1;
  text-shadow:0 2px 12px rgba(36,19,30,.3);
}
.commune-card-body{padding:24px 23px 25px}
.commune-card-kicker{
  display:block;
  margin-bottom:8px;
  color:#b87635;
  font-size:.75rem;
  font-weight:600;
  line-height:1.35;
  letter-spacing:.13em;
}
.commune-card h3{
  margin:0 0 10px;
  color:var(--joy-prune);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2.05rem;
  font-weight:600;
  line-height:1;
}
.commune-card p{
  min-height:7.2em;
  margin:0 0 18px;
  color:#564e53;
  font-size:.88rem;
  line-height:1.7;
}
.commune-card-discover{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 15px;
  border:1px solid rgba(91,33,79,.23);
  border-radius:5px;
  background:#fff9f3;
  color:var(--joy-prune);
  font-size:.75rem;
  font-weight:600;
  text-decoration:none;
  transition:background-color .2s ease,color .2s ease,border-color .2s ease;
}
.commune-card:hover .commune-card-discover,
.commune-card:focus-visible .commune-card-discover{
  border-color:var(--joy-prune);
  background:var(--joy-prune);
  color:#fff;
}

.communes-photo-credits{
  margin-top:17px;
  color:#746a70;
  font-size:.75rem;
  line-height:1.65;
}
.communes-photo-credits summary{
  width:max-content;
  cursor:pointer;
  color:#765c6f;
  font-weight:600;
}
.communes-photo-credits p{margin:9px 0 0}
.communes-photo-credits a{color:#6a2c5c}

.communes-expertise-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:35px;
  margin:0 0 24px;
  padding-top:44px;
  border-top:1px solid rgba(185,121,66,.25);
}
.communes-expertise-head::after{
  content:"";
  flex:0 0 min(24vw,285px);
  height:2px;
  margin-bottom:9px;
  background:linear-gradient(90deg,var(--joy-or),rgba(125,87,134,.6),transparent);
}
body.ig-page-communes .master-cards{margin-bottom:28px}
body.ig-page-communes .master-card{min-height:190px}

.communes-seller-cta{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);
  gap:50px;
  align-items:center;
  overflow:hidden;
  margin-top:28px;
  padding:42px 44px;
  border:1px solid rgba(230,185,117,.24);
  border-radius:11px;
  background:linear-gradient(128deg,#512045 0%,#6a2c5c 55%,#76507d 100%);
  box-shadow:0 22px 50px rgba(74,35,60,.2);
}
.communes-seller-cta::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-150px;
  right:-110px;
  width:320px;
  height:320px;
  border:1px solid rgba(235,193,129,.18);
  border-radius:50%;
}
.communes-seller-cta>div:first-child>span{
  display:block;
  margin-bottom:9px;
  color:#e7b86e;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.16em;
}
.communes-seller-cta h2{color:#fff}
.communes-seller-cta p{
  max-width:760px;
  margin:14px 0 0;
  color:rgba(255,255,255,.83);
  font-size:.9rem;
  line-height:1.72;
}
.communes-seller-actions{display:grid;gap:11px}
.communes-seller-actions a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 20px;
  border-radius:5px;
  font-size:.82rem;
  font-weight:600;
  text-decoration:none;
}
.communes-seller-actions .primary{
  background:linear-gradient(135deg,#dda34f,#bd7434);
  color:#fff;
  box-shadow:0 10px 24px rgba(38,18,31,.18);
}
.communes-seller-actions .secondary{
  border:1px solid rgba(255,255,255,.32);
  background:rgba(255,255,255,.06);
  color:#fff;
}
.communes-seller-actions a:hover{transform:translateY(-2px)}

@media(max-width:980px){
  .communes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .commune-card p{min-height:5.5em}
  .communes-seller-cta{grid-template-columns:1fr;gap:25px}
  .communes-seller-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){
  .communes-showcase{margin:38px 0 44px}
  .communes-showcase-head{grid-template-columns:1fr;gap:16px;margin-bottom:22px}
  .communes-showcase-head p{padding-left:17px;font-size:.88rem}
  .communes-grid{grid-template-columns:1fr;gap:16px}
  .commune-card{display:grid;grid-template-columns:42% 58%}
  .commune-card-media{height:100%;min-height:275px;aspect-ratio:auto}
  .commune-card-body{padding:22px 19px}
  .commune-card p{min-height:0;font-size:.84rem;line-height:1.62}
  .commune-card h3{font-size:1.85rem}
  .commune-card-discover{min-height:38px;padding:0 12px;font-size:.75rem}
  .communes-expertise-head{align-items:flex-start;flex-direction:column;gap:16px;padding-top:34px}
  .communes-expertise-head::after{flex:none;width:82px}
  .communes-seller-cta{padding:32px 25px}
  .communes-seller-actions{grid-template-columns:1fr}
}

@media(max-width:480px){
  .communes-showcase-head h2,
  .communes-expertise-head h2,
  .communes-seller-cta h2{font-size:2.35rem}
  .commune-card{display:block}
  .commune-card-media{min-height:0;aspect-ratio:4/3}
  .commune-card-body{padding:22px 20px 23px}
  .commune-card p{font-size:.87rem}
}

@media(prefers-reduced-motion:reduce){
  .commune-card,
  .commune-card-media img,
  .communes-seller-actions a{transition:none!important}
}
