/* Plantilla Proyecto (ancho completo): misma línea gráfica que la portada */
.pj{--wp--style--global--content-size:100%;--wp--style--global--wide-size:100%}

/* Cabecera azul marino con la ficha */
.pj-hero{position:relative;color:#fff;background:linear-gradient(120deg,var(--navy) 0%,var(--navy) 55%,var(--navy-2) 100%);overflow:hidden}
.pj-hero::before{content:"";position:absolute;right:-120px;top:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(211,32,47,.35),rgba(211,32,47,0) 70%);pointer-events:none}
.pj-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--red)}
.pj-hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding-block:28px 44px}
.pj-hero-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.pj-hero .crumbs{font-size:14px;color:rgba(255,255,255,.8)}
.pj-hero .crumbs a{color:#fff}
.pj-hero .eyebrow{color:var(--pink);margin:0}
.pj-hero h1{font-size:clamp(32px,5vw,56px);font-weight:700;max-width:860px}
.pj-lead{margin:0;font-size:19px;max-width:680px;opacity:.94}
.pj-hero .btn-line{color:#fff;border:1px solid rgba(255,255,255,.6);background:transparent}
.pj-hero .btn svg{width:20px;height:20px;fill:currentColor}
.pj-ficha{background:var(--bg);color:var(--fg);border-radius:14px;padding:18px 20px;box-shadow:0 18px 40px rgba(0,0,0,.28);border-top:4px solid var(--red);align-self:end}
.pj-ficha-t{margin:0 0 8px;font:700 13px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--red-ink)}
.pj-ficha dl{margin:0}
.pj-ficha dl div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.pj-ficha dt{color:var(--muted);font-size:15px}
.pj-ficha dd{margin:0;font-weight:600;text-align:right}
.pj-perks{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pj-perks li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:14px;font-weight:600}
@media (min-width:900px){.pj-hero .wrap{grid-template-columns:minmax(0,1fr) 340px;align-items:end;padding-block:32px 56px}}

/* Contenido a todo el ancho */
.pj-body{padding-block:36px 48px;font-size:18px;line-height:1.65}
.pj-body>*{margin-block:0 18px}
.pj-body h2{font-size:clamp(26px,3.4vw,36px);margin:56px 0 18px;padding-top:18px;position:relative}
.pj-body h2::before{content:"";position:absolute;left:0;top:0;width:56px;height:4px;border-radius:2px;background:var(--red)}
.pj-body h3{font-size:21px;margin:24px 0 8px}
.pj-body p{margin:0 0 16px}
.pj-body a:not(.wp-block-button__link):not(.btn){color:var(--red-ink)}
.pj-body img{max-width:100%;height:auto;border-radius:12px}
.pj-body figure{margin:0 0 20px}

/* Secciones de borde a borde (bloque Grupo con estilo) */
.pj-body .alignfull{margin-inline:calc(50% - 50vw);padding-inline:max(16px,calc(50vw - 584px))}
.pj-body .is-style-jg-azul,.pj-body .is-style-jg-gris{padding-block:48px;margin-block:48px}
.pj-body .is-style-jg-azul{background:var(--navy);color:#fff}
.pj-body .is-style-jg-azul h2,.pj-body .is-style-jg-azul h3{color:#fff}
.pj-body .is-style-jg-azul a:not(.wp-block-button__link){color:var(--pink)}
.pj-body .is-style-jg-gris{background:var(--surface)}
.pj-body .is-style-jg-azul>h2:first-child,.pj-body .is-style-jg-gris>h2:first-child{margin-top:0}
.pj-body .is-style-jg-azul>:last-child,.pj-body .is-style-jg-gris>:last-child{margin-bottom:0}
.pj-body .jg-cta{text-align:center}
.pj-body>.alignfull:last-child{margin-bottom:-48px}
.pj-body>.alignfull:last-child+*{margin-top:0}
.pj-body .jg-cta h2::before{left:50%;margin-left:-28px}
.pj-body .jg-cta .wp-block-buttons{justify-content:center}

/* Columnas como tarjetas */
.pj-body .wp-block-columns{display:flex;gap:20px;flex-wrap:wrap;margin-block:0 24px}
.pj-body .wp-block-column{flex:1 1 0;min-width:0}
.pj-body .is-style-jg-tarjetas>.wp-block-column{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-top:4px solid var(--red);border-radius:12px;padding:20px 20px 22px;display:flex;flex-direction:column}
.pj-body .is-style-jg-tarjetas>.wp-block-column>h3:first-child{margin-top:0}
.pj-body .is-style-jg-tarjetas>.wp-block-column>.wp-block-buttons{margin-top:auto;padding-top:8px}
.pj-body .is-style-jg-tarjetas .wp-block-button,.pj-body .is-style-jg-tarjetas .wp-block-button__link{width:100%}
.pj-body .jg-precio{font:700 24px var(--font-head);color:var(--red-ink);margin:0 0 10px}
.pj-body .jg-dato-n{font:700 30px/1.1 var(--font-head);color:var(--navy);margin:0 0 4px}
.pj-body .jg-datos .wp-block-column{border-top-color:var(--navy)}
.pj-body .jg-pasos{counter-reset:paso}
.pj-body .jg-pasos>.wp-block-column{counter-increment:paso;border-left:1px solid rgba(255,255,255,.25);padding-left:18px}
.pj-body .jg-pasos>.wp-block-column>h3::before{content:counter(paso);display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--red);color:#fff;font-size:16px;margin-right:10px;vertical-align:middle}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pj-body .jg-dato-n{color:#fff}}
:root[data-theme="dark"] .pj-body .jg-dato-n{color:#fff}
@media (max-width:781px){.pj-body .wp-block-columns{flex-direction:column}.pj-body .wp-block-column{flex-basis:auto!important}}

/* Listas con marca roja */
.pj-body ul.is-style-jg-check{list-style:none;padding:0}
.pj-body ul.is-style-jg-check li{position:relative;padding-left:28px;margin:0 0 8px}
.pj-body ul.is-style-jg-check li::before{content:"";position:absolute;left:4px;top:.45em;width:12px;height:7px;border-left:3px solid var(--red);border-bottom:3px solid var(--red);transform:rotate(-45deg)}

/* Botones */
.pj-body .wp-block-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-block:8px 20px}
.pj-body .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 20px;border-radius:8px;background:var(--red);color:#fff;font:600 16px/1.2 var(--font-body);text-decoration:none}
.pj-body .wp-block-button__link:hover{filter:brightness(.92)}
.pj-body .is-style-outline .wp-block-button__link{background:transparent;color:inherit;border:2px solid currentColor}
.pj-body .jg-wa .wp-block-button__link,.pj-body .wp-block-button__link[href^="https://wa.me"]{background:var(--wa)}

/* Tablas */
.pj-body .wp-block-table{overflow-x:auto}
.pj-body table{border-collapse:collapse;width:100%;font-size:16px}
.pj-body th,.pj-body td{border-bottom:1px solid var(--line);padding:11px 14px;text-align:left}
.pj-body thead th,.pj-body .is-style-jg-precios tr:first-child td{background:var(--navy);color:#fff;font-weight:600}
.pj-body tbody tr:nth-child(even){background:var(--surface)}
.pj-body .wp-block-table figcaption{margin-top:8px}

/* Galerías */
.pj-body .wp-block-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pj-body .wp-block-gallery figure,.pj-body .wp-block-gallery.has-nested-images figure.wp-block-image{margin:0;position:relative;width:auto!important;flex-direction:column}
.pj-body .wp-block-gallery.has-nested-images figure.wp-block-image figcaption{position:static;background:none;color:var(--muted);text-align:left;max-height:none;overflow:visible;text-shadow:none}
.pj-body .wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before{display:none}
.pj-body .wp-block-gallery img,.pj-body .wp-block-gallery.has-nested-images figure.wp-block-image img{width:100%;height:auto!important;aspect-ratio:4/3;object-fit:cover;flex:none!important}
.pj-body .wp-block-gallery figcaption{font-size:14px;padding:6px 2px 0}
@media (max-width:700px){.pj-body .wp-block-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Preguntas frecuentes */
.pj-faq{border-top:1px solid var(--line);padding-block:64px}
.pj-faq-in{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.pj-faq-head{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.pj-faq-head .eyebrow{margin:0}
.pj-faq-head h2{font-size:clamp(26px,3.4vw,36px)}
.pj-faq-head p{margin:0;color:var(--muted)}
.pj-faq-head .btn svg{width:20px;height:20px;fill:currentColor}
.pj-faq-list{display:flex;flex-direction:column;gap:10px;min-width:0}
.pj-faq details{border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.pj-faq details[open]{border-color:var(--navy);box-shadow:inset 4px 0 0 var(--red)}
.pj-faq summary{cursor:pointer;list-style:none;padding:16px 52px 16px 18px;font:600 18px/1.35 var(--font-head);position:relative}
.pj-faq summary::-webkit-details-marker{display:none}
.pj-faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:var(--surface);display:grid;place-items:center;font:600 18px/1 var(--font-body);color:var(--red-ink)}
.pj-faq details[open] summary::after{content:"−"}
.pj-faq-a{padding:0 18px 18px;font-size:17px;line-height:1.6}
.pj-faq-a a{color:var(--red-ink)}
@media (min-width:900px){.pj-faq-in{grid-template-columns:340px minmax(0,1fr);gap:48px}.pj-faq-head{position:sticky;top:96px;align-self:start}}

.pj-rel .sec-head{align-items:end}

/* Plano arriba en las tarjetas de tipo de apartamento */
.pj-body .is-style-jg-tarjetas>.wp-block-column>.wp-block-image,.pj-body .cc-card>.wp-block-image{order:-1;margin:-20px -20px 16px;background:#fff;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;overflow:hidden}
.pj-body .is-style-jg-tarjetas>.wp-block-column>.wp-block-image img,.pj-body .cc-card>.wp-block-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:0;padding:10px;background:#fff}
.pj-body .is-style-jg-tarjetas>.wp-block-column>.wp-block-image figcaption,.pj-body .cc-card>.wp-block-image figcaption{padding:0 12px 8px;margin:0}
.pj-body .is-style-jg-tarjetas>.wp-block-column>.wp-block-image+h3{margin-top:0}

/* Contenido hecho antes con clases propias (cc-…): misma línea gráfica */
.pj-body [id]{scroll-margin-top:96px}
.pj-body .cc-card{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-top:4px solid var(--red);border-radius:12px;padding:20px 20px 22px;display:flex;flex-direction:column}
.pj-body .cc-card>h3:first-child{margin-top:0}
.pj-body .cc-card>.wp-block-buttons{margin-top:auto;padding-top:8px}
.pj-body .cc-card .wp-block-button,.pj-body .cc-card .wp-block-button__link{width:100%}
.pj-body ul.cc-check{list-style:none;padding:0}
.pj-body ul.cc-check li{position:relative;padding-left:28px;margin:0 0 8px}
.pj-body ul.cc-check li::before{content:"";position:absolute;left:4px;top:.45em;width:12px;height:7px;border-left:3px solid var(--red);border-bottom:3px solid var(--red);transform:rotate(-45deg)}
.pj-body .cc-display{font-size:clamp(30px,4.4vw,48px);font-weight:700}
.pj-body .cc-cifras strong,.pj-body .cc-cifras .cc-display{font-family:var(--font-head);color:var(--red-ink)}
.pj-body .cc-hero{background:var(--navy);color:#fff;margin-inline:calc(50% - 50vw);padding:8px max(16px,calc(50vw - 584px)) 48px;margin-top:-36px;margin-bottom:48px}
.pj-body .cc-hero h2,.pj-body .cc-hero h3,.pj-body .cc-hero p{color:#fff}
.pj-body .cc-hero h2{margin-top:24px}
.pj-body .cc-hero h2::before{display:none}
.pj-body .cc-hero img{border-radius:12px}
.pj-body .cc-hero .wp-block-cover{border-radius:12px;overflow:hidden;min-height:0}
.pj-body .cc-hero ul.cc-check li::before{border-color:var(--pink)}
.pj-hero.has-own{padding-bottom:0}
.pj-hero.has-own::after{display:none}

/* Tarjeta del asesor */
.pj-about{padding-top:48px}
.pj-body .cc-hero .wp-block-image img,.pj-body .cc-hero .wp-block-cover{max-height:440px;width:100%;object-fit:cover}
.pj-body .cc-card>p>strong:only-child{font:700 22px var(--font-head);color:var(--red-ink)}
/* Presentación del texto: líneas cómodas de leer aunque el contenedor sea ancho */
.pj-body>p,.pj-body>ul,.pj-body>ol,.pj-body .wp-block-group>p,.pj-body .wp-block-group>ul,.pj-body .wp-block-group>ol{max-width:860px}
.pj-body .jg-cta>p,.pj-body .jg-cta>ul{margin-inline:auto}
.pj-body p,.pj-body li{line-height:1.7}
.pj-body li{margin-bottom:6px}
.pj-body li::marker{color:var(--red)}
.pj-body h3{color:var(--navy)}
.pj-body .is-style-jg-azul h3,.pj-body .cc-hero h3{color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pj-body h3{color:var(--fg)}}
:root[data-theme="dark"] .pj-body h3{color:var(--fg)}
/* Foto inicial (fachada) a la izquierda del texto en PC */
.pj-intro{display:grid;gap:32px;margin-bottom:40px}
.pj-intro-media .wp-block-image{margin:0}
.pj-intro-media img{display:block;width:100%;height:auto;border-radius:12px;object-fit:cover}
.pj-intro-text>:first-child{margin-top:0}
@media (min-width:900px){.pj-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px}.pj-intro-media img{max-height:560px}}
