/* Realistic editorial scenes; exact portfolio captures remain independent assets. */
.editorial-photo{margin:0;position:relative;min-width:0;overflow:hidden;border:1px solid #c3bda9;border-radius:21px;background:#173453;box-shadow:0 22px 40px -25px #0c234c80;isolation:isolate}
.editorial-image{aspect-ratio:3/2;background:#e7e1d7;overflow:hidden}
.editorial-image>img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%}
.editorial-photo>figcaption{display:flex;flex-direction:column;gap:5px;padding:14px 18px;border-top:2px solid #c7ad72;background:linear-gradient(115deg,#203d5a,#102b48);color:#fff;font-size:10px;line-height:1.5}
.editorial-photo>figcaption strong{font-size:15px;font-weight:600;line-height:1.3}
.editorial-photo>figcaption span{color:#ccd6df;font-size:9px}
.editorial-photo:after{content:'';position:absolute;bottom:0;height:2px;width:25%;background:linear-gradient(90deg,transparent,#edce89,transparent);animation:editorialGlint 9s ease-in-out infinite;pointer-events:none}
@keyframes editorialGlint{0%,100%{opacity:0;transform:translateX(-100%)}20%,75%{opacity:.8}90%{opacity:0;transform:translateX(450%)}}
.editorial-photo.tech-offscreen:after{animation-play-state:paused}
/* Home: depth and texture without rotating photographs or obscuring the work. */
.home-studio-photo{width:100%;align-self:center;border-color:#a6a89b88;border-radius:24px;box-shadow:0 30px 70px -28px #020e27}
.immersive-grid{gap:50px;grid-template-columns:1fr 1.05fr}
.immersive-copy h1{font-size:clamp(45px,5.15vw,76px)}
.intro-editorial{align-self:center}
.home-gateways .gateway{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:290px;padding:25px;gap:20px}
.home-gateways .gateway-copy{padding:0;position:static;display:flex;flex-direction:column;gap:14px}
.home-gateways .gateway-copy h2{font-size:29px;margin:0;max-width:none}
.home-gateways .gateway-copy .eyebrow{margin:0;font-size:7px}
.home-gateways .gateway-cta{position:static;margin-top:12px;font-size:11px;gap:10px}
.home-gateways .gateway-photo{width:100%;max-width:none;border-radius:12px;position:relative}
.home-gateways .gateway-photo figcaption{padding:8px 10px}.home-gateways .gateway-photo figcaption span{font-size:7px}
.gateway>.surface-traces,.gateway>.tech-objects{display:none}
.conversation-photo{align-self:center;max-width:530px;width:100%;justify-self:end}
.question-layout{gap:55px}
/* Introductory images are regular grid content, never positioned across headings. */
body:is([data-page="servicios.html"],[data-page="nosotros.html"]) .page-heading{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);column-gap:55px;align-content:center;padding-right:0;padding-bottom:35px;min-height:0}
body:is([data-page="servicios.html"],[data-page="nosotros.html"]) .page-heading>.eyebrow,body:is([data-page="servicios.html"],[data-page="nosotros.html"]) .page-heading>h1,body:is([data-page="servicios.html"],[data-page="nosotros.html"]) .page-heading>p{grid-column:1;max-width:560px}
body:is([data-page="servicios.html"],[data-page="nosotros.html"]) .page-heading>.heading-editorial{grid-column:2;grid-row:1/4;align-self:center}
.heading-editorial .editorial-image{aspect-ratio:3/2}
.heading-editorial figcaption strong{font-size:13px}
.mode-photo{max-width:100%;margin-top:25px;border-radius:12px;box-shadow:none}
.mode-photo .editorial-image{aspect-ratio:2.8;overflow:hidden}.mode-photo img{object-fit:cover;object-position:50% 55%}
.mode-photo figcaption{padding:9px 13px}.mode-photo figcaption span{font-size:9px}
.photographic-about{padding:0!important;overflow:hidden}
.photographic-about>.about-message-photo{border:0;border-radius:0;box-shadow:none}
.photographic-about .about-message-photo .editorial-image{aspect-ratio:2.1}.photographic-about .about-message-photo img{object-fit:cover;object-position:center 52%}
.photographic-about .message-led-icon,.photographic-about>h3,.photographic-about>p,.photographic-about>.message-led-track{margin-left:30px;margin-right:30px}
.photographic-about>.message-led-track{margin-bottom:30px}
.photographic-about>.surface-traces,.photographic-about>.tech-objects{display:none}
.photographic-process{height:auto;min-height:0;padding:0;overflow:hidden;background:#132f52!important;border-radius:19px;transform:none}
.photographic-process:before,.photographic-process:after{display:none}
.photographic-process .process-photo{border:0;border-radius:0;box-shadow:none}
.process-photo .editorial-image{aspect-ratio:2.15}.process-photo img{object-fit:cover;object-position:center 55%}
.process-photo figcaption{padding:7px 19px}
.photographic-step{padding:20px 23px;color:#fff}.photographic-step .sheet-top{display:flex;justify-content:space-between;align-items:center;color:#c9d6e6}
.photographic-step #preview-phase{font-size:9px;letter-spacing:.09em}.photographic-step .preview-icon{width:33px;height:33px;display:grid;place-items:center}
.photographic-step #preview-title{font-size:25px;color:#fff;margin:14px 0 17px;line-height:1.2}
.photographic-step .preview-fields{display:flex;gap:9px;flex-wrap:wrap}.photographic-step .preview-fields span{background:#ffffff0d;color:#cddaea;border:1px solid #a2b6cd55;border-radius:5px;padding:7px 11px;font-size:10px}
.photographic-process .preview-progress{position:static;margin:0 23px 23px;justify-content:flex-start;transform:none;max-width:none}
.contact-editorial{margin-top:24px;border-color:#a1b5c56b;border-radius:14px;box-shadow:none}
.contact-editorial figcaption{padding:12px 15px}.contact-editorial figcaption strong{font-size:13px}
.contact-intro{position:relative;top:auto}
/* Seven plan categories remain compact, with blue titles and service-specific photos. */
.pricing-editorial{align-self:center}.pricing-editorial .editorial-image{aspect-ratio:1.8}.pricing-editorial img{object-fit:cover}
.plan-category-header .photographic-plan{position:absolute;inset:12px 12px 12px auto;width:29%;height:auto;border:1px solid #c8b687;border-radius:15px;background:#122e50;box-shadow:0 12px 20px -15px #07183380}
.plan-category-header .photographic-plan:before{display:none}
.plan-category-header .photographic-plan .editorial-image{aspect-ratio:auto;height:calc(100% - 34px);min-height:0;background:#e6dfd5}
.plan-category-header .photographic-plan img{position:static;display:block;width:100%;height:100%;object-fit:cover;transform:none;filter:none;animation:none}
.plan-category-header .photographic-plan figcaption{height:34px;padding:8px 12px;justify-content:center;border-top:1px solid #c7ad72}
.plan-category-header .photographic-plan figcaption span{font-size:8px;line-height:1.3}
.document-editorial{margin:30px 0 35px;max-width:100%;border-radius:16px}
.document-editorial .editorial-image{aspect-ratio:3.5}.document-editorial img{object-fit:cover;object-position:center 50%}
.document-editorial figcaption{padding:9px 17px}
/* Real captures: restrained hardware-like frame, photographic desk, no generated UI replacement. */
/* The hardware geometry is independent of each source capture. */
.portfolio-media.photographic-media{background:#ded8cc url('assets/scalve-mesa-v1.jpg') center/cover!important;border-bottom:1px solid #bfac83;position:relative;display:block;height:auto;min-height:0;aspect-ratio:3/2;padding:0!important;overflow:hidden}
.photographic-media .portfolio-media-grid{display:none}
.photographic-media:before{content:'';position:absolute;left:27%;right:17%;bottom:6%;height:5%;border-radius:50%;background:#191c1d40;filter:blur(4px);transform:skewX(-18deg);pointer-events:none}
.photographic-media .portfolio-screen{position:absolute;display:block;left:9%;top:7%;width:82%;max-width:none;height:auto;aspect-ratio:16/10;padding:0!important;background:linear-gradient(130deg,#555b5c,#22282b 25%,#30383d 70%,#525a5e)!important;border:1px solid #747c80!important;border-radius:6px!important;box-shadow:inset 0 1px #d1d7d980,2px 3px 0 #182125,5px 9px 11px -5px #15202b80;transform:none!important;overflow:visible}
.photographic-media .portfolio-screen:after{content:'';position:absolute;left:43%;width:14%;top:100%;height:12%;background:linear-gradient(90deg,#737e83,#c2c9cd 44%,#899397 80%,#606b70);clip-path:polygon(13% 0,87% 0,100% 100%,0 100%);z-index:-1}
.photographic-media .portfolio-screen:before{content:'';position:absolute;left:33%;width:34%;top:110%;height:4%;border-radius:50% 50% 3px 3px;background:linear-gradient(180deg,#d2d7d9,#8d989e 70%,#626e76);border-bottom:1px solid #657178;box-shadow:3px 3px 3px #19222535;z-index:-1}
.photographic-media .portfolio-display{position:absolute;display:block;inset:4px 4px 9px;border:1px solid #10171b;border-radius:2px;background:var(--screen-paper,#101113);overflow:hidden}
.photographic-media .portfolio-display img{display:block;width:101.1%;height:auto!important;max-width:none;max-height:none!important;object-fit:contain;object-position:top left;border-radius:0;background:var(--screen-paper,#101113);transform:none!important}
.piece-oriana{--screen-paper:#fbfcff}.piece-rovel{--screen-paper:#10223e}.piece-glam{--screen-paper:#10100f}.piece-repro{--screen-paper:#0e0f10}.piece-toxic{--screen-paper:#111}
.piece-repro .portfolio-display img{clip-path:inset(0 0 2% 0)}
.piece-toxic .portfolio-display img{width:100%;height:100%!important;object-fit:contain}
.photographic-media .portfolio-evidence{position:absolute;bottom:2px;left:0;right:0;color:#263c50;font-size:6px;text-align:center;background:#efe8dbdd;line-height:1.4;padding:1px 3px}
.photographic-case{padding:0!important;max-width:1000px;border:1px solid #c8c0b0!important;border-radius:22px!important;overflow:hidden;background:#e8e0d4!important;box-shadow:0 22px 45px -25px #102c5860}
.photographic-case:before,.photographic-case:after{display:none!important}
.case-desk{position:relative;background:url('assets/scalve-mesa-v1.jpg') center/cover;padding:36px 7% 65px;display:flex;align-items:center;justify-content:center;min-height:260px}
.case-real-screen{position:relative;z-index:1;padding:9px 9px 19px;border-radius:13px;background:linear-gradient(110deg,#64676a,#202329 45%,#434a51);border:1px solid #62676d;box-shadow:0 24px 24px -13px #11161b65;width:100%;max-width:790px;overflow:hidden}
.case-real-screen img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;object-position:top;background:#f5f6f7;border-radius:4px}
.case-screen-stand{position:absolute;bottom:24px;height:42px;left:40%;right:40%;background:linear-gradient(90deg,#72777b,#d4d8dc 50%,#72777b);clip-path:polygon(31% 0,69% 0,75% 72%,100% 86%,100% 100%,0 100%,0 86%,25% 72%);filter:drop-shadow(0 7px 3px #3335)}
.photographic-case>figcaption{padding:12px 20px;background:#153351;color:#d6dfeb;border-top:2px solid #c8b074;font-size:10px;margin:0}
.handoff-photo{align-self:center;max-width:490px;width:100%;justify-self:end}.handoff-photo figcaption strong{font-size:13px}
/* Photo inside closing sections, separate from text and controls. */
.photographic-cta{display:grid!important;grid-template-columns:170px minmax(0,1fr) auto;gap:25px;align-items:center;padding:25px!important}
.photographic-cta>.cta-decoration{display:none}.photographic-cta>.tech-objects{display:none}
.photographic-cta>.cta-photo{grid-column:1;grid-row:1;border-radius:12px;box-shadow:none}
.photographic-cta>.cta-photo figcaption{padding:6px 10px}.photographic-cta>.cta-photo figcaption span{font-size:7px}
.photographic-cta>div:not(.cta-decoration){grid-column:2;position:relative}.photographic-cta>.button{grid-column:3;position:relative;white-space:normal}
.photographic-cta h2{font-size:30px}.photographic-cta p{font-size:12px}

@media(max-width:1100px){.immersive-grid{gap:30px}.home-gateways .gateway{grid-template-columns:1fr;gap:20px}.home-gateways .gateway-photo{max-width:300px;justify-self:center}.home-gateways .gateway-copy h2{font-size:31px}.photographic-cta{grid-template-columns:130px minmax(0,1fr);gap:20px}.photographic-cta>.button{grid-column:2;justify-self:start;margin-top:0}.photographic-cta>.cta-photo{grid-row:1/3}.plan-category-header .photographic-plan{width:32%}}
@media(max-width:760px){
 .editorial-photo{border-radius:16px}.editorial-photo>figcaption{padding:12px 15px}.editorial-photo>figcaption strong{font-size:13px}.editorial-photo>figcaption span{font-size:8px}
 .immersive-grid{grid-template-columns:minmax(0,1fr);gap:32px}.immersive-copy h1{font-size:clamp(43px,10vw,66px)}.home-studio-photo{border-radius:18px;max-width:550px;justify-self:center}.home-studio-photo .editorial-image{aspect-ratio:3/2}
 .home-gateways .gateway{padding:23px;grid-template-columns:minmax(0,1fr);min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:22px}.home-gateways .gateway-copy{display:contents}.home-gateways .gateway-copy .eyebrow{order:1}.home-gateways .gateway-copy h2{order:2;font-size:31px}.home-gateways .gateway-photo{order:3;max-width:100%;width:100%;margin:0}.home-gateways .gateway-cta{order:4;margin:0}.home-gateways .gateway-photo .editorial-image{aspect-ratio:3/2}
 .question-layout{gap:30px}.conversation-photo{max-width:100%}
 body:is([data-page="servicios.html"],[data-page="nosotros.html"]) .page-heading{display:block;padding-bottom:27px}.heading-editorial{margin-top:25px}
 .photographic-about>.message-led-icon,.photographic-about>h3,.photographic-about>p,.photographic-about>.message-led-track{margin-left:23px;margin-right:23px}.photographic-about>.message-led-track{margin-bottom:25px}
 .photographic-process{min-height:0;height:auto}.photographic-step{padding:18px}.photographic-step #preview-title{font-size:23px}.photographic-step .preview-fields span{font-size:9px;padding:6px 9px}.photographic-process .preview-progress{margin:0 18px 20px}
 .pricing-editorial{margin:0;max-width:100%}.plan-category-header .photographic-plan{position:relative;inset:auto;width:100%;height:auto;margin-top:22px;max-width:360px;justify-self:center}.plan-category-header .photographic-plan .editorial-image{aspect-ratio:3/2;height:auto}.plan-category-header .photographic-plan img{object-fit:contain}.plan-category-header .photographic-plan figcaption{height:auto;min-height:30px;padding:8px 12px}.plan-category-header{overflow:hidden}
 .document-editorial .editorial-image{aspect-ratio:2.1}
 .photographic-media .portfolio-screen{border-radius:4px!important}.photographic-media .portfolio-display{inset:2px 2px 5px;border-width:.5px;border-radius:1px}.photographic-media .portfolio-evidence{font-size:5px;bottom:1px}
 .photographic-case{max-width:calc(100% - 40px);border-radius:16px!important}.case-desk{padding:20px 5% 44px;min-height:0}.case-real-screen{padding:5px 5px 11px;border-radius:8px}.case-real-screen img{max-height:260px}.case-screen-stand{bottom:17px;height:28px;left:36%;right:36%}.photographic-case>figcaption{font-size:8px;padding:10px 14px}
 .handoff-photo{max-width:none}.photographic-cta{grid-template-columns:minmax(0,1fr)!important;gap:22px;padding:23px!important}.photographic-cta>.cta-photo{grid-column:1;grid-row:2;max-width:none;width:100%}.photographic-cta>.cta-photo .editorial-image{aspect-ratio:2.1}.photographic-cta>.cta-photo img{object-fit:cover;object-position:center}.photographic-cta>div:not(.cta-decoration){grid-column:1;grid-row:1}.photographic-cta>.button{grid-column:1;grid-row:3;justify-self:start;margin:0}.photographic-cta h2{font-size:29px}
}
@media(prefers-reduced-motion:reduce){.editorial-photo:after{animation:none}}
/* Reset the earlier 3D-object sizing on photographic plan headers. */
body[data-page="planes.html"] .plan-group .plan-category-art.photographic-plan{position:relative;inset:auto;grid-column:2;width:100%;height:auto;min-height:0;min-width:0;max-width:100%;margin:0;transform:none;align-self:center;justify-self:stretch}
body[data-page="planes.html"] .plan-group .photographic-plan .editorial-image{height:auto;aspect-ratio:1.8}
body[data-page="planes.html"] .plan-group .photographic-plan img{object-fit:cover}
.photographic-process>.tech-objects,.photographic-process>.surface-traces{display:none}
@media(max-width:760px){body[data-page="planes.html"] .plan-group>.plan-category-header{grid-template-columns:minmax(0,1fr)}body[data-page="planes.html"] .plan-group>.plan-category-header:before{display:none}body[data-page="planes.html"] .plan-group .plan-category-art.photographic-plan{grid-column:1;margin:0}body[data-page="planes.html"] .plan-group .photographic-plan .editorial-image{aspect-ratio:3/2}body[data-page="planes.html"] .plan-group .photographic-plan img{object-fit:contain}}
