/* Un visor amplio para cuatro maneras de construir una idea. */
.pf-dialog { --pf-client-color:#6a00ff; --pf-client-gradient:linear-gradient(120deg,#0011ff,#6a00ff,#ff2e8a); width:min(1180px,92vw); max-width:calc(100vw - 24px); max-height:90dvh; margin:auto; padding:0; overflow:auto; overscroll-behavior:contain; color:#fff6e0; border:1px solid #5b486a; border-radius:5px; background:#0d0b12; box-shadow:0 30px 120px #000b; scrollbar-width:thin; scrollbar-color:var(--pf-client-color) #17131e; font-family:var(--font-body,Arial,sans-serif); }
.pf-dialog:not([open]) { display:none; }
.pf-dialog [hidden] { display:none!important; }
.pf-dialog::backdrop { background:rgba(3,3,7,.85); backdrop-filter:blur(9px); }
.pf-dialog[open] { animation:pf-dialog-arrive .35s cubic-bezier(.2,.7,.25,1) both; }
.pf-dialog[data-type="branding"] { background:linear-gradient(115deg,#0c0a11ed,#0c0a11e6),var(--pf-client-gradient); }
.pf-dialog-toolbar { position:sticky; top:0; z-index:5; display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:66px; padding:10px 26px; border-bottom:1px solid #fff6e026; background:#0d0b12f5; }
.pf-dialog-toolbar>p { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0; color:#baafc5; font-size:9px; line-height:1.7; letter-spacing:.12em; text-transform:uppercase; }
.pf-dialog-toolbar>p>span:last-child { color:#fff6e0; }
.pf-dialog-close { display:grid; place-items:center; flex:none; width:42px; height:42px; padding:0; border:1px solid #fff6e04d; border-radius:50%; color:#fff6e0; background:#1c1625; cursor:pointer; }
.pf-dialog-close>span { font:400 28px/1 var(--font-body,Arial,sans-serif); }
.pf-dialog-close:hover { background:#34223d; border-color:#fff6e0; }
.pf-dialog-intro { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); align-items:center; gap:30px; padding:30px; }
.pf-dialog-story { min-width:0; }
.pf-dialog-eyebrow { margin:0 0 18px; color:#c3b4cd; font-size:9px; line-height:1.8; letter-spacing:.11em; text-transform:uppercase; }
.pf-dialog-story>h2 { margin:0; font-family:var(--font-title,Arial,sans-serif); font-weight:900; font-size:clamp(23px,2.4vw,37px); line-height:1.18; letter-spacing:-.025em; text-transform:uppercase; overflow-wrap:anywhere; }
.pf-dialog-summary { margin:22px 0 0; color:#d3cbd9; font-size:13px; line-height:1.9; }
.pf-dialog-status { display:inline-block; margin:20px 0 0; padding:7px 10px; color:#d9c6e6; border:1px solid #6a557b; font-size:9px; line-height:1.5; }
.pf-dialog-visit { display:flex; align-items:center; justify-content:space-between; gap:24px; width:fit-content; min-height:44px; margin-top:16px; border-bottom:1px solid #fff6e06b; font-size:11px; line-height:1.6; }
.pf-dialog-visit>span,.pf-dialog-service>span { color:#ffae00; font-size:20px; }
.pf-dialog-media { min-width:0; }
.pf-dialog-stage { position:relative; display:grid; place-items:center; min-height:310px; background:#050506; border:1px solid #fff6e026; }
.pf-dialog-stage[data-surface="light"] { background:#f4f2ed; }
.pf-dialog-stage>img { display:block; width:100%; height:clamp(300px,47dvh,580px); object-fit:contain; }
.pf-dialog-stage>video { display:block; width:100%; height:auto; max-height:56dvh; aspect-ratio:16/9; object-fit:contain; background:#000; }
.pf-dialog-error { max-width:320px; margin:40px 28px; color:#f3d1df; font-size:12px; line-height:1.8; text-align:center; }
.pf-dialog-caption { display:flex; justify-content:space-between; gap:15px; min-height:42px; padding:11px 0; color:#bfb2c6; font-size:9px; line-height:1.8; }
.pf-dialog-caption>span:last-child { flex:none; font-variant-numeric:tabular-nums; }
.pf-dialog-step { position:absolute; top:50%; display:grid; place-items:center; width:36px; height:36px; padding:0; transform:translateY(-50%); color:#fff6e0; background:#121015eb; border:1px solid #fff6e066; cursor:pointer; }
.pf-dialog-step>span { font-size:21px; line-height:1; }
.pf-dialog-step--previous { left:10px; }.pf-dialog-step--next { right:10px; }
.pf-dialog-thumbnails { display:flex; gap:9px; max-width:100%; overflow-x:auto; padding:1px 1px 10px; scrollbar-width:thin; scrollbar-color:#8c71a1 #1c1625; }
.pf-dialog-thumbnails>button { position:relative; display:block; flex:none; width:74px; height:55px; padding:3px; color:#fff6e0; border:1px solid #fff6e033; background:#16121c; cursor:pointer; }
.pf-dialog-thumbnails>button[data-surface="light"] { background:#f4f2ed; }.pf-dialog-thumbnails>button[aria-pressed="true"] { border:2px solid #ffae00; padding:2px; }
.pf-dialog-thumbnails>button>img { display:block; width:100%; height:100%; object-fit:contain; }
.pf-dialog-colors,.pf-dialog-narrative,.pf-dialog-collections { padding:0 30px; }
.pf-dialog-colors { margin:10px 0 30px; }
.pf-dialog-section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:25px; padding:24px 0 20px; border-top:1px solid #fff6e026; }
.pf-dialog-section-heading h3,.pf-dialog-narrative h3 { margin:0; font-family:var(--font-title,Arial,sans-serif); font-weight:900; font-size:17px; line-height:1.4; text-transform:uppercase; letter-spacing:-.02em; overflow-wrap:anywhere; }
.pf-dialog-section-heading p { margin:0; color:#b9acc3; font-size:10px; line-height:1.8; }
.pf-dialog-swatches { display:grid; grid-template-columns:repeat(auto-fit,minmax(95px,1fr)); gap:9px; }
.pf-dialog-swatch { display:flex; min-width:0; flex-direction:column; gap:8px; padding:0 0 12px; border:1px solid #fff6e02e; background:#09080d73; }
.pf-dialog-swatch>i { display:block; height:62px; background:var(--pf-swatch); border-bottom:1px solid #fff6e026; }
.pf-dialog-swatch>span { padding:0 10px; color:#d6ccdc; font-size:9px; line-height:1.7; overflow-wrap:anywhere; }
.pf-dialog-gradient { display:flex; align-items:end; min-height:85px; margin-top:12px; padding:13px 16px; background:var(--pf-client-gradient); border:1px solid #fff6e02e; }
.pf-dialog-gradient>span { padding:5px 8px; color:#fff6e0; background:#070709c9; font-size:9px; line-height:1.6; }
.pf-dialog-narrative { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 35px; margin-bottom:30px; }
.pf-dialog-narrative>article { min-width:0; padding-top:24px; border-top:1px solid #fff6e026; }
.pf-dialog-narrative p { margin:14px 0 0; color:#cbbfd2; font-size:12px; line-height:1.9; }
.pf-dialog-collection { margin-bottom:30px; }
.pf-dialog-piece-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.pf-dialog-piece { display:block; min-width:0; padding:0; text-align:left; border:1px solid #fff6e033; color:#fff6e0; background:#100c17; cursor:pointer; }
.pf-dialog-piece__surface { display:grid; place-items:center; height:185px; padding:14px; background:#100e14; }.pf-dialog-piece[data-surface="light"]>.pf-dialog-piece__surface { background:#f4f2ed; }
.pf-dialog-piece img { display:block; width:100%; height:100%; object-fit:contain; }
.pf-dialog-piece>span:last-child { display:flex; justify-content:space-between; gap:15px; padding:12px 14px; color:#c7bbd0; font-size:9px; line-height:1.6; }
.pf-dialog-piece>span:last-child>b { color:#ffae00; font-size:16px; font-weight:400; }
.pf-dialog-footer { display:flex; justify-content:space-between; align-items:center; gap:25px; margin:0 30px; padding:25px 0 30px; border-top:1px solid #fff6e033; }
.pf-dialog-service { display:flex; justify-content:space-between; align-items:center; gap:25px; min-height:44px; font-size:11px; line-height:1.7; }
.pf-dialog .pf-dialog-contact { flex:none; font-size:11px; }
.pf-dialog button:focus-visible,.pf-dialog a:focus-visible { outline:3px solid #ffae00; outline-offset:3px; }
.pf-dialog[data-type="audiovisual"] .pf-dialog-intro { grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr); }
.pf-dialog[data-type="audiovisual"] .pf-dialog-stage { min-height:0; }
.pf-dialog[data-type="fotografia"] .pf-dialog-stage>img { height:57dvh; max-height:620px; }
.pf-dialog[data-type="web"] .pf-dialog-stage { border-top:8px solid #302438; }.pf-dialog[data-type="web"] .pf-dialog-stage>img { height:51dvh; }
.pf-dialog[data-type="web"] .pf-dialog-stage--scroll { display:block; height:51dvh; min-height:260px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#9476ac #17131e; overscroll-behavior:contain; }
.pf-dialog[data-type="web"] .pf-dialog-stage.pf-dialog-stage--scroll>img { width:100%; height:auto; min-height:0; max-height:none; object-fit:initial; }
@keyframes pf-dialog-arrive { from { opacity:0; translate:0 14px; } to { opacity:1; translate:0 0; } }
@media (max-width:820px) {
 .pf-dialog { width:94vw; max-height:92dvh; }
 .pf-dialog-toolbar { min-height:61px; padding:9px 18px; }
 .pf-dialog-toolbar>p { font-size:8px; gap:7px; }
 .pf-dialog-intro,.pf-dialog[data-type="audiovisual"] .pf-dialog-intro { grid-template-columns:minmax(0,1fr); gap:24px; padding:24px; }
 .pf-dialog-story>h2 { font-size:clamp(22px,4.8vw,32px); }
 .pf-dialog-summary { max-width:620px; font-size:12px; margin-top:16px; }
 .pf-dialog-eyebrow { margin-bottom:13px; }
 .pf-dialog-stage>img { height:48dvh; }.pf-dialog-stage { min-height:260px; }
 .pf-dialog-colors,.pf-dialog-narrative,.pf-dialog-collections { padding:0 24px; }
 .pf-dialog-section-heading { display:block; }.pf-dialog-section-heading p { margin-top:9px; }
 .pf-dialog-piece-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.pf-dialog-piece__surface { height:180px; }
 .pf-dialog-narrative { gap:24px; }.pf-dialog-footer { margin:0 24px; flex-wrap:wrap; }
}
@media (max-width:520px) {
 .pf-dialog { width:calc(100vw - 20px); max-width:calc(100vw - 20px); }
 .pf-dialog-toolbar { padding:8px 14px; }.pf-dialog-close { width:38px; height:38px; }
 .pf-dialog-intro,.pf-dialog[data-type="audiovisual"] .pf-dialog-intro { padding:20px 15px; gap:22px; }
 .pf-dialog-story>h2 { font-size:23px; }.pf-dialog-summary { font-size:12px; line-height:1.85; }
 .pf-dialog-stage { min-height:230px; }.pf-dialog-stage>img,.pf-dialog[data-type="web"] .pf-dialog-stage>img { height:39dvh; min-height:230px; }
 .pf-dialog[data-type="web"] .pf-dialog-stage--scroll { height:39dvh; min-height:230px; }
 .pf-dialog[data-type="fotografia"] .pf-dialog-stage>img { height:49dvh; }
 .pf-dialog-stage>video { max-height:45dvh; }
 .pf-dialog-caption { font-size:8px; }.pf-dialog-thumbnails { gap:7px; }.pf-dialog-thumbnails>button { width:62px; height:48px; }
 .pf-dialog-colors,.pf-dialog-narrative,.pf-dialog-collections { padding:0 15px; }.pf-dialog-narrative { grid-template-columns:1fr; }
 .pf-dialog-section-heading h3,.pf-dialog-narrative h3 { font-size:15px; }
 .pf-dialog-swatches { grid-template-columns:repeat(auto-fit,minmax(85px,1fr)); gap:7px; }.pf-dialog-swatch>i { height:50px; }
 .pf-dialog-piece-grid { gap:9px; }.pf-dialog-piece__surface { height:150px; padding:9px; }.pf-dialog-piece>span:last-child { padding:9px; font-size:8px; }
 .pf-dialog-footer { margin:0 15px; gap:17px; padding-top:20px; }.pf-dialog-service { font-size:10px; }.pf-dialog .pf-dialog-contact { font-size:10px; }
}
@media (prefers-reduced-motion:reduce) { .pf-dialog[open] { animation:none; }.pf-dialog::backdrop { backdrop-filter:none; } }
