/* Homepage section styles — extracted from inline style="" attributes.
   Values kept 1:1 with the previous inline markup; no visual change intended. */

.skip-link{
  position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.skip-link:focus{
  left:12px; top:12px; width:auto; height:auto; overflow:visible;
  z-index:1000; padding:10px 16px; border-radius:var(--radius-sm);
  background:var(--accent2); color:#fff; font-weight:600;
}

.section-block{
  margin-top:48px;
  padding-top:36px;
  border-top:1px solid rgba(0,0,0,.08);
}

/* Hero */
.social-proof-badges{ display:flex; gap:12px; flex-wrap:wrap; margin-top:12px; }
.badge-link{ text-decoration:none; }
.hero-actions{ margin-top:20px; }
.hero-actions .btn.secondary{ margin-left:10px; }
.houzz-rating-badge{ font-weight:600; background:var(--accent2); color:#fff; padding:8px 16px; box-shadow:0 2px 8px rgba(122,29,82,.3); }
.palermo-catania-badge{ font-weight:600; background:#f0f0f0; }

/* Reviews header */
.reviews-header{ text-align:center; margin-bottom:40px; }
.reviews-header__title{ font-size:28px; margin:0 0 12px; color:var(--accent2); }
.reviews-header__lede{ color:#666; font-size:16px; max-width:600px; margin:0 auto; }
.reviews-header__rating{ margin-top:16px; }
.reviews-header__stars{ color:#FFB800; font-size:24px; }
.reviews-header__score{ margin-left:8px; color:var(--accent2); font-weight:600; font-size:18px; }
.reviews-header__source{ margin-left:8px; color:#888; font-size:14px; }

/* Review cards */
.review-card__head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.review-card__stars{ color:#FFB800; font-size:18px; }
.review-card__logo{ height:20px; opacity:.7; }
.review-card__meta{ border-top:1px solid #eee; padding-top:12px; margin-top:12px; }
.review-card__name{ color:var(--accent2); font-size:14px; }
.review-card__date{ color:#888; font-size:13px; margin-top:4px; }

.reviews-cta{ text-align:center; margin-top:32px; }
.reviews-cta__link{
  display:inline-block; padding:12px 28px;
  background:var(--accent2); color:#fff;
  border-radius:999px; text-decoration:none; font-weight:600;
  transition:background .3s ease;
}
.reviews-cta__link:hover{ background:var(--accent); }

/* FAQ */
.faq-section__title{ font-size:24px; margin:0 0 12px; color:var(--accent2); }
.faq-section__lede{ color:var(--muted); font-size:15px; line-height:1.6; margin:0 0 24px; }
.faq-item{ margin-bottom:24px; padding:20px; background:#fff; border-left:4px solid var(--accent2); border-radius:var(--radius-sm); }
.faq-item__q{ margin:0; font-size:18px; color:#333; cursor:pointer; font-weight:600; }
.faq-item[open] .faq-item__q{ margin-bottom:10px; }
.faq-item__a p{ margin:0; color:#555; line-height:1.6; }

/* Territorial network */
.network-section__title{ font-size:22px; margin:0 0 8px; }
.network-section__lede{ color:var(--muted); font-size:15px; line-height:1.6; margin:0 0 20px; }
.network-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:14px; }
.network-card{
  display:block; background:#fff; border:1px solid rgba(0,0,0,.06);
  border-radius:var(--radius-md); padding:18px; text-decoration:none; color:inherit;
  transition:transform .12s ease, box-shadow .18s ease;
}
.network-card:hover{ transform:translateY(-2px); box-shadow:var(--shadow-sm); }
.network-card__title{ color:var(--accent2); font-size:15px; }
.network-card__desc{ margin:6px 0 0; font-size:13px; color:var(--muted); line-height:1.5; }

/* Province CTA banner */
.province-cta{
  margin-top:80px; padding:60px 20px;
  background:linear-gradient(135deg, var(--accent2) 0%, var(--accent) 100%);
  border-radius:var(--radius-lg);
}
.province-cta__inner{ max-width:1100px; margin:0 auto; }
.province-cta__title{ font-size:36px; color:#fff; margin:0 0 16px; text-align:center; }
.province-cta__lede{ font-size:18px; color:rgba(255,255,255,.9); text-align:center; max-width:800px; margin:0 auto 40px; line-height:1.6; }
/* Bento rhythm: 3 featured markets (Palermo, Catania, Siracusa - the
   largest/highest-priority provinces) get a bigger tile in row 1;
   the remaining 6 provinces fill row 2 at half the width. Both rows
   fill the 6-col track exactly (3x2 + 6x1 = 12 = two full rows). */
.province-cta__grid{ display:grid; grid-template-columns:repeat(6, 1fr); gap:20px; margin-top:32px; }
.province-cta__link{
  display:block; grid-column:span 1; background:rgba(255,255,255,.15); backdrop-filter:blur(10px);
  padding:24px; border-radius:var(--radius-md); text-decoration:none; color:#fff;
  transition:background .3s; border:1px solid rgba(255,255,255,.2);
}
.province-cta__link--featured{ grid-column:span 2; padding:32px 28px; }
.province-cta__link:hover{ background:rgba(255,255,255,.25); }
.province-cta__link h3{ font-size:20px; margin:0 0 8px; font-weight:600; }
.province-cta__link--featured h3{ font-size:24px; }
.province-cta__link p{ font-size:14px; margin:0; opacity:.9; }

@media (max-width:900px){
  .province-cta__grid{ grid-template-columns:repeat(2, 1fr); }
  .province-cta__link{ grid-column:span 1; }
  .province-cta__link--featured{ grid-column:span 2; }
}
@media (max-width:560px){
  .province-cta__grid{ grid-template-columns:1fr; }
  .province-cta__link, .province-cta__link--featured{ grid-column:span 1; }
}

/* Footer */
.footer-houzz{
  margin-bottom:24px; padding:20px;
  background:linear-gradient(135deg, #f8f9fa 0%, #fff 100%);
  border-radius:var(--radius-md); border:1px solid rgba(122,29,82,.1);
  display:inline-block;
}
.footer-houzz__link{ text-decoration:none; color:inherit; display:flex; align-items:center; gap:16px; }
.footer-houzz__score-block{ text-align:center; }
.footer-houzz__stars{ color:#FFB800; font-size:24px; letter-spacing:2px; margin-bottom:4px; }
.footer-houzz__score{ color:var(--accent2); font-weight:700; font-size:20px; }
.footer-houzz__count{ color:#666; font-size:13px; margin-top:4px; }
.footer-houzz__divider{ border-left:1px solid #ddd; padding-left:16px; }
.footer-houzz__label{ color:var(--accent2); font-weight:600; font-size:16px; }
.footer-houzz__brand{ color:#333; font-weight:700; font-size:18px; margin-top:4px; }
.footer-houzz__tag{ color:#888; font-size:12px; margin-top:4px; }
.footer-copy{ margin-top:12px; font-size:.85rem; opacity:.8; }
.footer-links{ margin-top:12px; padding-top:12px; border-top:1px solid rgba(0,0,0,.06); font-size:12px; color:var(--muted); }
