/* Inner pages: premium service pages. No signature animations here; Home owns that. */
.phero h1{ font-size:clamp(54px,7.4vw,124px); line-height:.94 }
.ph-photo{ position:relative; border-radius:20px; overflow:hidden; aspect-ratio:4/5; max-height:74vh; margin-left:auto; box-shadow:0 60px 100px -50px rgba(0,0,0,.9) }
.ph-photo img{ width:100%; height:100%; object-fit:cover }
.ph-photo figcaption{ position:absolute; left:0; right:0; bottom:0; padding:60px 22px 18px; background:linear-gradient(0deg, rgba(10,9,7,.9), transparent); font:800 11.5px/1.4 var(--sans); letter-spacing:.16em; text-transform:uppercase; color:#E6DFD2 }
.ph-photo figcaption b{ display:block; font:400 24px/1 var(--disp); letter-spacing:.01em; color:#fff; margin-bottom:4px }

.svc-list{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 clamp(24px,4vw,64px); border-top:2px solid #15130F }
.svc-list li{ padding:clamp(20px,2.4vw,30px) 0; border-bottom:1px solid var(--line) }
.svc-list h3{ font:400 clamp(26px,2.4vw,38px)/.98 var(--disp); text-transform:uppercase }
.svc-list p{ margin-top:10px; color:var(--mut); font-size:17px; max-width:44ch }
@media (max-width:760px){ .svc-list{ grid-template-columns:minmax(0,1fr) } }

.ref-wrap{ margin-top:clamp(50px,6vw,80px) }
.ref-wrap h3{ font:800 12.5px/1 var(--sans); letter-spacing:.2em; text-transform:uppercase; color:var(--acc); margin-bottom:16px }

.ways2{ list-style:none; margin:0; padding:0; border-top:2px solid #15130F; columns:2; column-gap:40px }
.ways2 li{ break-inside:avoid; padding:14px 0; border-bottom:1px solid var(--line); font:400 clamp(26px,2.4vw,36px)/1 var(--disp); text-transform:uppercase }

/* team page */
.duo{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(16px,2.4vw,32px) }
.duo .ph-photo{ max-height:none; margin:0 }
.duo .ph-photo:nth-child(2){ margin-top:clamp(0px,6vw,90px) }
.values{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 clamp(24px,3vw,48px); border-top:2px solid #15130F }
.values li{ padding:clamp(22px,2.6vw,34px) 0; border-bottom:1px solid var(--line) }
.values b{ display:block; font:400 clamp(28px,2.6vw,40px)/.95 var(--disp); text-transform:uppercase }
.values span{ display:block; margin-top:10px; color:var(--mut); font-size:16.5px }
@media (max-width:860px){ .values{ grid-template-columns:minmax(0,1fr) } .duo{ grid-template-columns:minmax(0,1fr) } .duo .ph-photo:nth-child(2){ margin-top:0 } }

/* preguntas */
.fgroups{ display:grid; gap:clamp(60px,8vw,110px) }
.fgroup{ display:grid; grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr); gap:clamp(24px,5vw,80px); align-items:start }
.fgroup h2{ font:400 clamp(34px,3.4vw,54px)/.95 var(--disp); text-transform:uppercase; position:sticky; top:calc(var(--hh) + 30px) }
.fgroup h2 small{ display:block; font:800 12px/1 var(--sans); letter-spacing:.2em; color:var(--acc); margin-bottom:12px }
.rights{ margin-top:36px; border-radius:18px; padding:clamp(24px,3vw,36px); background:#14120F; color:#F2EDE3 }
.rights h3{ font:400 clamp(30px,2.8vw,44px)/.95 var(--disp); text-transform:uppercase }
.rights h3 .g{ color:var(--gold) }
.rights p{ color:#B8B0A1; margin-top:12px; font-size:16px }
.rights .nums{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:24px; padding-top:22px; border-top:1px solid #2C2822 }
.rights .nums b{ display:block; font:400 clamp(46px,4.4vw,68px)/.9 var(--disp); color:var(--gold) }
.rights .nums span{ display:block; font-size:14px; line-height:1.45; color:#B8B0A1; margin-top:6px }
.rights .src{ margin-top:18px; font-size:13px; color:#8A8273 }
.rights .src a{ color:#D8D1C3 }
@media (max-width:980px){ .fgroup{ grid-template-columns:minmax(0,1fr) } .fgroup h2{ position:static } }
@media (max-width:560px){ .rights .nums{ grid-template-columns:minmax(0,1fr) } }

/* agendar */
.book-page .g{ align-items:start }
.contact-ways{ display:grid; gap:10px; margin-top:30px }
.privacy{ margin-top:26px; padding:18px 20px; border-radius:12px; background:rgba(212,175,90,.08); box-shadow:inset 0 0 0 1px rgba(212,175,90,.3); color:#D8D1C3; font-size:15px; line-height:1.55 }
.privacy b{ color:var(--gold) }

.fq2{ display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:clamp(36px,6vw,100px); align-items:start }
@media (max-width:980px){ .fq2{ grid-template-columns:minmax(0,1fr) } }

.phero .g:has(.duo){ align-items:center }

/* service heroes: real proof or the actual goal, not a stock layout */
.ph-proof{ position:relative; background:#F7F6F3; border-radius:18px; padding:14px 14px 16px; box-shadow:0 60px 100px -50px rgba(0,0,0,.9); max-width:520px; margin-left:auto !important }
.ph-proof img{ width:100%; border-radius:10px; max-height:62vh; object-fit:contain; background:#fff }
.ph-proof figcaption{ margin-top:12px; font-size:13.5px; line-height:1.45; color:#5A5345 }
.ph-proof .tag{ position:absolute; top:24px; left:24px; z-index:1; font:800 11px/1 var(--sans); letter-spacing:.14em; text-transform:uppercase; background:#15130F; color:#F2EDE3; padding:7px 10px; border-radius:4px }
.ph-proof .tag.g{ background:var(--gold); color:#15110A }
.ph-proof.pair{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; max-width:620px }
.ph-proof.pair>div{ position:relative }
.ph-proof.pair .tag{ top:10px; left:10px }
.ph-proof.pair figcaption{ grid-column:1/-1 }
.goals{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(212,175,90,.25); border-radius:18px; overflow:hidden; max-width:560px; margin-left:auto }
.goals div,.goals a{ background:#12100D; padding:clamp(24px,3vw,40px); display:grid; gap:18px; align-content:end; min-height:clamp(150px,15vw,220px) }
.goals svg{ width:clamp(64px,6vw,92px); height:clamp(64px,6vw,92px); fill:none; stroke:var(--gold); stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round }
.goals svg .f{ fill:rgba(212,175,90,.18) } .goals svg .k{ stroke:var(--gold) }
.goals b{ font:400 clamp(28px,2.6vw,40px)/1 var(--disp); text-transform:uppercase; color:#F2EDE3 }
@media (max-width:980px){ .ph-proof,.goals{ margin-left:0 !important; max-width:none } }

.ph-proof .tag,.tag{ width:max-content; white-space:nowrap; right:auto }

.goals a{ text-decoration:none; transition:background .25s } .goals a:hover{ background:#1C1914 } .goals a:hover b{ color:var(--gold) }

/* Privacy policy */
.legal{ max-width:760px }
.legal .upd{ font:700 12.5px/1 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--gold-deep) }
.legal h2{ margin-top:40px; font:400 clamp(26px,2.4vw,36px)/1.05 var(--disp); text-transform:uppercase }
.legal p,.legal li{ margin-top:12px; font-size:17px; line-height:1.65; color:#3E382E }
.legal ul{ padding-left:20px }
.duo{ grid-template-columns:repeat(3,minmax(0,1fr)) } .duo .ph-photo:nth-child(3){ margin-top:clamp(0px,3vw,45px) }
@media (max-width:860px){ .duo{ grid-template-columns:minmax(0,1fr) } .duo .ph-photo:nth-child(3){ margin-top:0 } }
