/* =========================================================
   solgor.es · v2 (9-10-2026)
   Llegibilitat, caixes destacades, capçalera amb foto i peu compacte.
   S'afegeix a totes les pàgines després dels altres fulls d'estil.
   ========================================================= */

/* ---------- Capçalera de pàgina amb foto difuminada ---------- */
.page-hero.hero-img{ position:relative; overflow:hidden; background:#0b2f52; }
.page-hero.hero-img::before{
  content:""; position:absolute; inset:-30px;
  background-image:var(--hero-img); background-size:cover; background-position:center;
  filter:blur(4px) saturate(.8); transform:scale(1.05);
}
.page-hero.hero-img::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(7,40,72,.88) 0%, rgba(7,40,72,.74) 55%, rgba(7,40,72,.52) 100%);
}
.page-hero.hero-img > *{ position:relative; z-index:1; }

/* Fotos per àmbit (Pexels, llicència lliure). Per servir-les des del propi servidor,
   només cal canviar aquestes URL per /assets/img/... */
.hero-default   { --hero-img:url('https://images.pexels.com/photos/3927126/pexels-photo-3927126.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-familia   { --hero-img:url('https://images.pexels.com/photos/7876037/pexels-photo-7876037.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-herencies { --hero-img:url('https://images.pexels.com/photos/618158/pexels-photo-618158.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-laboral   { --hero-img:url('https://images.pexels.com/photos/8482861/pexels-photo-8482861.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-contractes{ --hero-img:url('https://images.pexels.com/photos/5387258/pexels-photo-5387258.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-online    { --hero-img:url('https://images.pexels.com/photos/6326375/pexels-photo-6326375.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-local     { --hero-img:url('https://images.pexels.com/photos/6077091/pexels-photo-6077091.jpeg?auto=compress&cs=tinysrgb&w=1600'); }
.hero-blog      { --hero-img:url('https://images.pexels.com/photos/8731036/pexels-photo-8731036.jpeg?auto=compress&cs=tinysrgb&w=1600'); }

/* ---------- Llegibilitat del text ---------- */
.content-inner{ max-width:760px; }
.content-inner p{ font-size:1.06rem; line-height:1.8; color:#2c3a47; margin-bottom:18px; }
.content-inner ul, .content-inner ol{ font-size:1.03rem; line-height:1.75; color:#2c3a47; margin:0 0 20px 22px; }
.content-inner li{ margin-bottom:10px; padding-left:2px; }
.content-inner h2{ font-size:1.5rem; line-height:1.3; margin:52px 0 16px; color:var(--blue-900); }
.content-inner h3{ font-size:1.15rem; line-height:1.35; margin:30px 0 10px; color:var(--blue-900); }
.content-inner strong{ color:#16232f; }
.content-inner h2[id]{ scroll-margin-top:96px; }

/* Índex de la pàgina */
.toc{ background:#f4f7fa; border:1px solid #dfe6ee; border-radius:10px; padding:18px 22px 10px; margin:0 0 36px; }
.toc > strong{ display:block; font-size:.78rem; letter-spacing:.07em; text-transform:uppercase; color:#5a6b7a; margin-bottom:10px; }
.toc ol{ margin:0 0 6px 22px !important; font-size:.95rem !important; line-height:1.45 !important; }
.toc li{ margin-bottom:6px !important; padding-left:4px; }
.toc a{ text-decoration:none !important; color:var(--blue-700); }
.toc a:hover{ text-decoration:underline !important; }


/* ---------- Caixes destacades ---------- */
.faq-box{ margin:48px 0 0; padding:26px 28px 12px; background:#f4f7fa; border:1px solid #dfe6ee; border-radius:12px; }
.faq-box h2{ margin-top:0 !important; }
.faq-box details{ border-bottom:1px solid #dfe6ee; padding:15px 0; }
.faq-box details:last-of-type{ border-bottom:0; }
.faq-box summary{ cursor:pointer; list-style:none; font-weight:600; font-size:1.02rem; line-height:1.45; color:var(--blue-900); padding-right:28px; position:relative; }
.faq-box summary::-webkit-details-marker{ display:none; }
.faq-box summary::after{ content:'+'; position:absolute; right:0; top:-2px; font-size:1.4rem; font-weight:400; color:var(--blue-700); }
.faq-box details[open] summary::after{ content:'\2212'; }
.faq-box summary::before{ content:none !important; }
.faq-box details p{ margin:10px 0 0 !important; font-size:1rem; }

.cost-box{ margin:48px 0 0; padding:22px 26px 8px; background:#fbf6ec; border:1px solid #efdfbd; border-left:5px solid #c9962e; border-radius:10px; }
.cost-box h2{ margin-top:0 !important; }

.also-box{ margin:44px 0 0; padding:22px 26px 10px; background:#eef5f1; border:1px solid #cfe3d6; border-radius:10px; }
.also-box h2{ margin-top:0 !important; font-size:1.2rem !important; }

/* Fonts plegades i discretes */
details.src-box{ margin-top:40px; padding:12px 0 0; background:none; border:0; border-top:1px solid #e3e8ee; }
details.src-box summary{ cursor:pointer; color:#6b7a88; font-size:.9rem; list-style:none; }
details.src-box summary::-webkit-details-marker{ display:none; }
details.src-box summary::before{ content:'\25B8\00a0'; }
details.src-box[open] summary::before{ content:'\25BE\00a0'; }
details.src-box ul{ margin:10px 0 0 18px; font-size:.86rem; }
p.rev{ font-size:.82rem !important; color:#6b7a88 !important; margin:12px 0 0 !important; }

/* Bloc de cita amb foto */
.cta-inline.has-photo{ display:grid; grid-template-columns:76px 1fr; column-gap:18px; align-items:start; }
.cta-inline.has-photo .cta-photo{ grid-row:1 / span 4; width:76px; height:76px; border-radius:50%; object-fit:cover; border:2px solid #fff; box-shadow:0 0 0 1px #d5dee8; }
.cta-inline.has-photo .cta-who{ display:block; font-size:.82rem; color:#5a6b7a; margin:-2px 0 6px; }
@media(max-width:520px){
  .cta-inline.has-photo{ grid-template-columns:56px 1fr; column-gap:14px; }
  .cta-inline.has-photo .cta-photo{ width:56px; height:56px; grid-row:1 / span 3; }
  .cta-inline.has-photo .btns{ grid-column:1 / -1; }
}

/* Altres temes relacionats */
.fam-nav{ background:#f4f7fa; }
.fam-nav ul{ columns:auto !important; display:flex; flex-wrap:wrap; gap:10px; }
.fam-nav li{ margin:0 !important; }
.fam-nav li a{ display:inline-block; padding:8px 14px; background:#fff; border:1px solid #dfe6ee; border-radius:20px; text-decoration:none !important; font-size:.92rem; }
.fam-nav li a:hover{ border-color:var(--blue-700); }

/* ---------- Peu compacte ---------- */
footer .ft2-grid{ max-width:1200px; margin:0 auto; display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:36px; }
footer .ft2-txt{ font-size:.86rem; line-height:1.6; color:rgba(255,255,255,.68); margin:0 0 12px; }
footer .ft2-grid ul{ margin:0; padding:0; }
footer .ft2-grid li{ margin-bottom:9px; font-size:.9rem; }
footer .ft2-grid a{ color:rgba(255,255,255,.86); }
footer .ft2-grid a:hover{ color:#fff; }
footer .ft2-urg a{ font-weight:700; color:#fff; }
@media(max-width:900px){ footer .ft2-grid{ grid-template-columns:1fr 1fr; } }
@media(max-width:560px){ footer .ft2-grid{ grid-template-columns:1fr; gap:26px; } }
.toc, .toc ol, .toc li{ min-width:0; max-width:100%; }
.toc a{ white-space:normal !important; overflow-wrap:anywhere; display:inline; }
