

:root { --orange:#F08F04; --orange-dark:#F08F04; --ink:#171717; --cream:#fff9f3; --cyan:#35b7d2; --gray:#6c6c70; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
button { font:inherit; }
.topbar { height:102px; padding:16px 5vw; display:flex; align-items:center; justify-content:center; gap:28px; background:white; }
.logo { object-fit:contain; }
.logo-orv { width:250px; height:68px; }
.logo-hs { width:220px; height:62px; }
.brand-divider { width:1px; height:44px; background:#ddd; }
.hero { position:relative; overflow:hidden; min-height:620px; display:flex; align-items:center; background:#F08F04; color:white; }
.hero-content { position:relative; z-index:2; width:min(1180px,90vw); margin:auto; padding:86px 0 110px; }
.eyebrow { margin:0 0 16px; color:var(--orange); font-weight:800; letter-spacing:.16em; font-size:12px; }
.eyebrow.light { color:white; opacity:.82; }
h1 { margin:0; font-size:clamp(88px,19vw,230px); line-height:.77; letter-spacing:-.085em; font-weight:900; }
.hero-copy { max-width:610px; margin:44px 0 35px; font-size:clamp(22px,3vw,36px); line-height:1.18; letter-spacing:-.03em; }
.hero-cta { display:inline-flex; gap:24px; align-items:center; border:1px solid rgba(255,255,255,.55); border-radius:50px; padding:15px 22px; font-weight:700; }
.hero-glow { position:absolute; border-radius:50%; filter:blur(3px); opacity:.38; }
.glow-one { width:420px; height:420px; background:#ffd391; right:-90px; top:-120px; }
.glow-two { width:270px; height:270px; background:#ffc467; right:18%; bottom:-150px; }
.stairs { position:absolute; right:3vw; bottom:-55px; display:flex; align-items:flex-end; opacity:.26; transform:skewY(-3deg); }
.stairs i { display:block; width:70px; background:#fff; border:1px solid rgba(255,255,255,.7); }
.stairs i:nth-child(1){height:70px}.stairs i:nth-child(2){height:120px}.stairs i:nth-child(3){height:175px}.stairs i:nth-child(4){height:235px}.stairs i:nth-child(5){height:300px}.stairs i:nth-child(6){height:370px}
.quick-nav { display:grid; grid-template-columns:repeat(3,1fr); width:min(1180px,90vw); margin:-34px auto 0; position:relative; z-index:3; background:white; border-radius:18px; box-shadow:0 18px 50px rgba(108,50,0,.14); overflow:hidden; }
.quick-nav a { padding:27px 28px; font-weight:750; border-right:1px solid #eee; }
.quick-nav a:last-child { border:0; }
.quick-nav span { color:var(--orange); margin-right:13px; font-size:12px; }
.section { width:min(1080px,88vw); margin:0 auto; padding:120px 0; }
.section-heading { max-width:690px; }
.section-heading h2,.contact-card h2 { margin:0 0 24px; font-size:clamp(45px,7vw,82px); line-height:.94; letter-spacing:-.055em; }
.section-heading>p:last-child { color:var(--gray); font-size:20px; line-height:1.5; max-width:570px; }
.checklist { list-style:none; margin:64px 0 38px; padding:0; border-top:1px solid #ddd3c8; }
.checklist li { display:grid; grid-template-columns:72px 1fr; align-items:center; padding:28px 0; border-bottom:1px solid #ddd3c8; }
.checklist b { width:46px; height:46px; display:grid; place-items:center; background:var(--orange); color:white; border-radius:50%; }
.checklist strong { display:block; font-size:21px; }
.button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; min-width:240px; padding:17px 21px; border-radius:9px; font-weight:800; }
.button.primary { background:var(--orange); color:white; }
.contact-section { overflow:hidden; background:#171717; color:white; }
.team-intro { width:min(1080px,88vw); margin:0 auto; padding:105px 0 72px; }
.team-copy { max-width:780px; }
.team-copy h2 { margin:0 0 25px; font-size:clamp(52px,8vw,92px); line-height:.94; letter-spacing:-.055em; }
.team-copy>p:last-child { margin:0; max-width:760px; color:white; font-size:20px; line-height:1.55; }
.service-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:62px 0 0; padding:0; list-style:none; }
.service-flow li { min-height:150px; display:flex; flex-direction:column; justify-content:space-between; align-items:flex-start; gap:24px; padding:22px; border:1px solid rgba(255,255,255,.38); border-radius:16px; background:rgba(255,255,255,.13); text-align:left; }
.flow-icon { width:50px; height:50px; display:grid; place-items:center; border-radius:13px; background:white; color:var(--orange); }
.flow-icon svg { width:25px; height:25px; stroke-width:2; }
.service-flow b { font-size:17px; letter-spacing:-.01em; }
.team-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:34px; }
.team-gallery figure { position:relative; aspect-ratio:4/5; margin:0; overflow:hidden; border-radius:16px; background:#292929; }
.team-gallery img { width:100%; height:100%; object-fit:cover; }
.gallery-hint { display:none; }
.contact-person { width:min(1080px,88vw); margin:0 auto 78px; display:grid; grid-template-columns:.72fr 1.28fr; overflow:hidden; border:1px solid #393939; border-radius:18px; background:#202020; }
.portrait-wrap { min-height:390px; overflow:hidden; }
.portrait-wrap img { width:100%; height:100%; object-fit:cover; object-position:53% center; }
.contact-card { padding:44px clamp(38px,5vw,68px); display:flex; flex-direction:column; justify-content:center; background:linear-gradient(150deg,#242424,#0a0a0a); }
.contact-card h2 { margin-bottom:14px; font-size:clamp(38px,5vw,58px); }
.contact-card>p:not(.eyebrow) { font-size:19px; line-height:1.5; color:#c9c9c9; max-width:420px; }
.contact-actions { display:flex; flex-direction:column; align-items:flex-start; gap:12px; margin-top:21px; }
.whatsapp { background:var(--orange); color:white; }
.contact-link { color:#eee; border-bottom:1px solid #555; padding-bottom:5px; }
.demo-heading { margin-bottom:48px; }
.before-after { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.before-after figure { position:relative; margin:0; overflow:hidden; border-radius:14px; background:#ddd; }
.before-after img { width:100%; height:370px; object-fit:cover; }
.before-after figcaption { position:absolute; left:16px; top:16px; padding:8px 11px; background:rgba(20,20,20,.8); color:white; border-radius:5px; font-size:11px; font-weight:900; letter-spacing:.12em; }
.prompt-builder { margin-top:74px; }
.builder-intro { max-width:700px; margin-bottom:35px; }
.builder-intro h3 { margin:0 0 16px; font-size:clamp(36px,5vw,62px); line-height:.98; letter-spacing:-.045em; }
.builder-intro>p:last-child { color:var(--gray); font-size:18px; line-height:1.5; }
.base-prompt-card { overflow:hidden; background:white; border:1px solid #eadfd5; border-radius:14px; box-shadow:0 16px 40px rgba(80,45,10,.06); }
.base-prompt-card summary { cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:25px 28px; }
.base-prompt-card summary::-webkit-details-marker { display:none; }
.base-prompt-card summary>span:first-child { display:flex; flex-direction:column; gap:6px; }
.base-prompt-card summary b { color:var(--orange); font-size:12px; letter-spacing:.13em; }
.base-prompt-card summary small { color:var(--gray); font-size:15px; }
.summary-action { white-space:nowrap; color:var(--ink); font-weight:800; font-size:14px; }
.base-prompt-card[open] .summary-action { font-size:0; }
.base-prompt-card[open] .summary-action::after { content:"Ocultar"; font-size:14px; }
.base-prompt-card pre { white-space:pre-wrap; margin:0; padding:27px 28px; border-top:1px solid #eee; background:#fffaf5; font:15px/1.6 Arial,Helvetica,sans-serif; color:#333; }
.copy-secondary { cursor:pointer; margin:0 28px 28px; padding:12px 17px; border:1px solid var(--orange); border-radius:30px; background:white; color:var(--orange); font-weight:800; }
.module-picker { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; margin:42px 0 18px; padding:0; border:0; }
.module-picker legend { grid-column:1/-1; margin-bottom:6px; font-size:21px; font-weight:850; }
.module-option { cursor:pointer; min-height:148px; display:grid; grid-template-columns:22px 1fr; align-content:start; gap:12px; padding:22px; border:1px solid #ded5cc; border-radius:13px; background:white; color:var(--ink); text-align:left; }
.module-option.selected { border:2px solid var(--orange); padding:21px; background:#fff8ee; box-shadow:0 10px 30px rgba(240,143,4,.10); }
.radio-dot { width:18px; height:18px; border:2px solid #aaa; border-radius:50%; margin-top:1px; box-shadow:inset 0 0 0 4px white; background:white; }
.module-option.selected .radio-dot { border-color:var(--orange); background:var(--orange); }
.module-option b,.module-option small { display:block; }
.module-option b { margin-bottom:8px; font-size:17px; }
.module-option small { color:var(--gray); font-size:14px; line-height:1.4; }
.copy-full-wrap { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:23px 25px; border-radius:13px; background:var(--ink); color:white; }
.copy-full-wrap>div { display:flex; flex-direction:column; gap:5px; }
.copy-full-wrap>div b { font-size:18px; }
.copy-full-wrap>div span { color:#bbb; font-size:14px; }
.copy-full { cursor:pointer; min-width:225px; padding:15px 18px; border:0; border-radius:9px; background:var(--orange); color:white; font-weight:850; }
.video-card { margin-top:72px; display:grid; grid-template-columns:.7fr 1.3fr; background:var(--orange); border-radius:18px; overflow:hidden; color:white; }
.video-copy { padding:44px; display:flex; flex-direction:column; justify-content:center; }
.video-copy h3 { font-size:40px; letter-spacing:-.04em; line-height:1; margin:0; }
.video-card video { width:100%; height:420px; background:#111; object-fit:cover; }
.sales-teaser { display:grid; grid-template-columns:70px 1fr auto; align-items:center; gap:25px; margin-top:22px; padding:27px 28px; border:1px solid #eadfd5; border-radius:16px; background:white; box-shadow:0 14px 35px rgba(80,45,10,.06); }
.sales-icon { width:60px; height:60px; display:grid; place-items:center; border-radius:50%; background:#fff3df; font-size:28px; }
.sales-copy .eyebrow { margin-bottom:8px; }
.sales-copy h3 { margin:0 0 7px; font-size:25px; line-height:1.12; letter-spacing:-.025em; }
.sales-copy>p:last-child { margin:0; color:var(--gray); }
.sales-button { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; min-width:245px; padding:16px 18px; border-radius:9px; background:var(--orange); color:white; font-weight:850; }
footer { background:white; padding:34px 6vw 20px; }
.footer-main { display:flex; align-items:center; justify-content:space-between; gap:40px; }
footer img { width:240px; flex:0 0 auto; }
footer p { margin:0; font-size:20px; font-weight:800; line-height:1.2; text-align:right; }
footer span { display:block; margin-top:22px; border-top:1px solid #ddd; padding-top:15px; color:#888; font-size:10px; letter-spacing:.14em; }
@media (max-width:720px) {
  .topbar { height:88px; padding:12px 14px; gap:12px; }.logo-orv{width:164px;height:54px}.logo-hs{width:142px;height:50px}.brand-divider{height:34px}
  .hero { min-height:535px; }.hero-content{padding:75px 0 90px}h1{font-size:27vw}.hero-copy{font-size:23px;margin-top:35px}.stairs{right:-110px}.stairs i{width:45px}
  .quick-nav { grid-template-columns:1fr; margin-top:-24px; }.quick-nav a{padding:18px 21px;border-right:0;border-bottom:1px solid #eee}
  .section{padding:85px 0}.section-heading h2,.contact-card h2{font-size:48px}.section-heading>p:last-child{font-size:17px}
  .checklist{margin-top:42px}.checklist li{grid-template-columns:54px 1fr;padding:22px 0}.checklist b{width:40px;height:40px}.checklist strong{font-size:18px;line-height:1.25}
  .team-intro{width:100%;padding:75px 0 50px}.team-copy,.service-flow{width:88vw;margin-left:auto;margin-right:auto}.team-copy h2{font-size:52px}.team-copy>p:last-child{font-size:17px;line-height:1.5}.service-flow{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:45px}.service-flow li{min-height:132px;padding:17px}.flow-icon{width:45px;height:45px;border-radius:11px}.flow-icon svg{width:22px;height:22px}.service-flow b{font-size:15px}.team-gallery{display:flex;gap:12px;margin-top:34px;padding:0 6vw 6px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:6vw;-webkit-overflow-scrolling:touch;scrollbar-width:none}.team-gallery::-webkit-scrollbar{display:none}.team-gallery figure{flex:0 0 82vw;aspect-ratio:4/5;scroll-snap-align:start}.gallery-hint{display:flex;width:88vw;margin:12px auto 0;align-items:center;justify-content:space-between;color:#aaa;font-size:13px}.contact-person{width:88vw;margin-bottom:58px;grid-template-columns:128px 1fr;align-items:stretch}.portrait-wrap{min-height:300px}.portrait-wrap img{object-position:52% center}.contact-card{padding:28px 22px}.contact-card .eyebrow{margin-bottom:10px;font-size:9px}.contact-card h2{font-size:34px;line-height:.95;margin-bottom:12px}.contact-card>p:not(.eyebrow){font-size:14px;line-height:1.4}.contact-actions{gap:10px;margin-top:17px}.contact-card .button{min-width:0;width:100%;padding:13px 15px}.contact-link{max-width:100%;font-size:12px;overflow-wrap:anywhere}
  .before-after{grid-template-columns:1fr;gap:10px}.before-after img{height:280px}
  .prompt-builder{margin-top:55px}.builder-intro h3{font-size:39px}.builder-intro>p:last-child{font-size:16px}
  .base-prompt-card summary{padding:21px 19px;align-items:flex-start}.base-prompt-card summary small{font-size:13px;line-height:1.35}.base-prompt-card pre{padding:22px 19px;font-size:14px}.copy-secondary{margin:0 19px 22px}
  .module-picker{grid-template-columns:1fr;margin-top:35px}.module-picker legend{font-size:19px}.module-option{min-height:0;padding:18px}.module-option.selected{padding:17px}
  .copy-full-wrap{align-items:stretch;flex-direction:column;padding:21px}.copy-full{width:100%;min-width:0;min-height:50px}
  .video-card{grid-template-columns:1fr;margin-top:55px}.video-copy{padding:36px 26px}.video-copy h3{font-size:34px}.video-card video{height:280px}
  .sales-teaser{grid-template-columns:52px 1fr;gap:15px;padding:22px 19px}.sales-icon{width:50px;height:50px;font-size:24px}.sales-copy h3{font-size:21px}.sales-button{grid-column:1/-1;width:100%;min-width:0;min-height:50px}
  footer{padding:25px 6vw 16px}.footer-main{gap:18px}.footer-main img{width:145px}.footer-main p{font-size:14px;text-align:left}footer span{margin-top:17px;padding-top:12px}
}
@media (max-width:360px) {
  .topbar{padding:10px 8px;gap:8px}.logo-orv{width:142px}.logo-hs{width:120px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

:root{--cream:#fff;--orange:#bd6800;--gray:#575b61}body{line-height:1.5}.eyebrow{font-size:14px}.hero{background:#004481;min-height:560px}.hero-content{padding:80px 0 90px}.hero h1{font-size:clamp(65px,9vw,120px);line-height:.98;letter-spacing:-.065em}.hero-copy{font-size:26px;margin:28px 0}.hero-label{position:absolute;right:6vw;bottom:90px;font-size:15px;letter-spacing:.13em;line-height:1.8;border-left:3px solid #f08f04;padding-left:22px}.bbva-logo{width:190px;height:68px;overflow:hidden;position:relative}.bbva-logo img{position:absolute;width:365px;max-width:none;left:-85px;top:-80px}.quick-nav{grid-template-columns:repeat(4,1fr)}.quick-nav a{padding:24px 18px}.quick-nav span{font-size:14px}.section{padding:90px 0}.section-heading h2{font-size:clamp(42px,5.8vw,68px);line-height:1.04}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:45px}.steps article{border-top:3px solid #f08f04;padding-top:20px}.steps span{font-size:14px;color:#875000;font-weight:700}.steps h3{font-size:23px;line-height:1.2}.steps p{color:var(--gray)}.quote-background{background:#f5f7fa}.note{border-left:3px solid #004481;padding:12px 18px;color:#004481;background:#e8eff6;max-width:700px}.checklist{margin-top:35px}.checklist li{display:block;padding:20px 0}.checklist label{display:flex;align-items:center;gap:22px;cursor:pointer}.checklist input{width:23px;height:23px;accent-color:#004481;flex-shrink:0}.checklist input:checked+strong{text-decoration:line-through;color:#666}.button{border:0;cursor:pointer}.fine{font-size:14px;color:#5b6068;margin-top:20px;max-width:750px}.contact-section{background:#181b20}.service-flow li{min-height:100px;gap:15px}.federico{display:grid;grid-template-columns:1fr 1fr;gap:45px;width:min(1080px,88vw);margin:0 auto 80px;border-top:1px solid #58606a;padding-top:40px}.federico h2{font-size:65px;letter-spacing:-.05em;line-height:1;margin:0}.federico h3{font-size:26px;margin-top:0}.federico p{font-size:18px}.pending{color:#ccd8e4;border:1px solid #637181;border-radius:8px;padding:12px 18px;display:inline-block}.pas-prompts{display:grid;gap:14px;margin:38px 0 65px}.base-prompt-card summary b{font-size:14px}.base-prompt-card pre{font-size:16px;background:#f7f9fc}.module-option{grid-template-columns:22px 1fr}.module-option input{width:18px;height:18px;accent-color:#004481}.module-option:has(input:checked){border-color:#004481;background:#edf4fa}.video-card{background:#004481}.products{background:#004481;color:white;padding:65px max(6vw,calc((100vw - 1080px)/2));display:grid;grid-template-columns:1.2fr 1fr;gap:65px}.products h2{font-size:clamp(38px,4vw,52px);line-height:1.04;letter-spacing:-.045em;margin:20px 0}.products p{max-width:520px}.product-list article{display:flex;gap:22px;align-items:center;border-bottom:1px solid #7d9fbf}.product-list h3{font-size:24px}.product-list a{display:inline-block;margin-top:24px;border-bottom:1px solid white}.product-list span{font-size:14px}footer span{font-size:12px}#status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#172b3d;color:white;padding:12px 22px;border-radius:8px;z-index:20;display:none;max-width:90vw}#status.visible{display:block}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #17a4d3;outline-offset:5px}button:hover,.hero-cta:hover{filter:brightness(.94)}
@media(max-width:720px){.bbva-logo{width:133px;height:55px}.bbva-logo img{width:260px;left:-60px;top:-55px}.hero{min-height:470px}.hero-content{padding:65px 0 80px}.hero h1{font-size:clamp(58px,13vw,88px)}.hero-copy{font-size:22px}.hero-label{display:none}.quick-nav{grid-template-columns:1fr 1fr}.quick-nav a{font-size:14px;padding:18px 12px}.quick-nav span{margin-right:7px}.steps{grid-template-columns:1fr;gap:20px}.steps h3{margin:10px 0}.steps p{margin:0}.section{padding:65px 0}.federico{grid-template-columns:1fr;gap:20px}.federico h2{font-size:54px}.products{grid-template-columns:1fr;gap:20px;padding:45px 6vw}.base-prompt-card summary small{font-size:16px}.before-after figcaption{font-size:12px}.team-intro{padding-top:65px}.team-gallery figure{flex-basis:75vw}.section-heading h2{font-size:42px}.eyebrow{letter-spacing:.1em}footer span{font-size:12px}.checklist strong{font-size:18px}}

/* Refinamiento del encabezado y bloque de alianzas */
.bbva-logo{width:190px;height:85px;overflow:hidden}.bbva-logo img{width:350px;left:-84px;top:-78px;max-width:none}.topbar{height:110px}
.hero{min-height:535px;display:grid;grid-template-columns:1.1fr 1fr;gap:0;padding:40px max(5vw,calc((100vw - 1180px)/2)) 65px}.hero-content{width:100%;margin:0;padding:30px 0;z-index:2}.hero h1{font-size:clamp(54px,5.5vw,78px);line-height:1.05;letter-spacing:-.055em}.hero-copy{font-size:24px;line-height:1.35;margin:25px 0 28px}.hero-art{min-width:0;align-self:center}.hero-art img{width:100%;max-width:530px;margin:auto;aspect-ratio:1;object-fit:contain;mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent);}
#alianzas{padding-top:64px;padding-bottom:60px;display:grid;grid-template-columns:.85fr 1.35fr;gap:55px;align-items:start}#alianzas .section-heading h2{font-size:42px;line-height:1.06;margin-bottom:18px}#alianzas .section-heading>p:last-child{font-size:17px;line-height:1.5;margin-bottom:0}#alianzas .eyebrow{font-size:12px;margin-bottom:15px}.steps{margin-top:0;grid-template-columns:1fr;gap:22px}.steps article{border:0;padding:0;display:grid;grid-template-columns:155px 1fr;column-gap:18px}.step-heading{grid-row:1/3;display:flex;align-items:center;gap:12px;align-self:start;padding-top:3px}.step-heading svg{width:30px;height:30px;flex-shrink:0;color:#004481}.steps span{font-size:12px;letter-spacing:.03em;color:#004481}.steps h3{font-size:20px;margin:0 0 5px;line-height:1.3}.steps p{font-size:16px;line-height:1.5;margin:0}.quote-link{color:#004481}
@media(max-width:850px){#alianzas{gap:30px;grid-template-columns:1fr}.steps{grid-template-columns:repeat(3,1fr);gap:22px}.steps article{display:block}.step-heading{margin-bottom:12px}.steps h3{font-size:19px}}
@media(max-width:720px){.topbar{height:92px}.bbva-logo{width:140px;height:68px}.bbva-logo img{width:260px;left:-62px;top:-58px}.hero{grid-template-columns:1fr;padding:35px 6vw 45px;min-height:0}.hero-content{padding:15px 0 0}.hero h1{font-size:clamp(43px,9.6vw,65px)}.hero-copy{font-size:20px;margin:22px 0}.hero-art{margin:8px auto 0;width:min(100%,370px)}#alianzas{padding:45px 0;gap:28px}#alianzas .section-heading h2{font-size:38px}.steps{grid-template-columns:1fr;gap:22px}.steps article{display:grid;grid-template-columns:34px 1fr;column-gap:14px}.step-heading{display:contents}.step-heading svg{grid-column:1;grid-row:1/4;margin-top:5px}.step-heading span{grid-column:2;margin-bottom:5px}.steps h3,.steps p{grid-column:2}.steps h3{font-size:20px}.steps p{font-size:16px}}
@media(min-width:721px){.bbva-logo img{width:320px;left:-72px;top:-75px}}

/* Equipo ORV: naranja institucional y ritmo vertical compacto */
#contacto{background:#F08F04;color:#24201b}#contacto .eyebrow.light{color:#49300d;opacity:1}#contacto .team-intro{padding:52px 0 26px}#contacto .team-copy{max-width:820px}#contacto .team-copy h2{font-size:clamp(40px,5vw,58px);margin-bottom:16px}#contacto .team-copy>p:last-child{color:#24201b;font-size:18px;line-height:1.5}#contacto .service-flow{margin-top:28px;gap:14px}#contacto .service-flow li{min-height:100px;padding:16px 20px;gap:10px;border:1px solid #a95c00;background:rgba(255,255,255,.14);border-radius:12px}#contacto .service-icon{display:block;width:28px;height:28px}#contacto .service-icon svg{display:block;width:100%;height:100%}#contacto .service-number{font-size:13px;font-weight:400;margin-right:5px}#contacto .service-flow b{font-size:16px}#contacto .team-gallery{max-width:780px;gap:12px;margin-top:24px}#contacto .team-gallery figure{height:165px;aspect-ratio:auto;border-radius:10px}#contacto .team-gallery img{object-position:50% 47%}#contacto .team-gallery figure:nth-child(2) img{object-position:50% 53%}
#contacto .federico{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;border-top:1px solid #b86c00;padding-top:26px;margin-bottom:44px}#contacto .federico-photo{width:112px;height:112px;object-fit:cover;object-position:50% 39%;border-radius:50%;border:3px solid rgba(255,255,255,.75)}#contacto .federico .eyebrow{font-size:12px;margin:0 0 8px}#contacto .federico h2{font-size:36px;line-height:1.1;margin:0}#contacto .federico h2 br{display:none}#contacto .federico h2 br::after{content:' '}#contacto .federico h3{font-size:20px;margin:2px 0 6px}#contacto .federico p{font-size:16px;line-height:1.45;margin:7px auto 0;max-width:540px}#contacto .contact-actions{align-items:center;margin-top:15px;gap:10px}#contacto .whatsapp{background:#25231f;color:white;padding:13px 20px;min-width:220px;justify-content:center}#contacto .contact-link{color:#24201b;border-bottom-color:#72501c;font-size:16px}
@media(max-width:720px){#contacto .team-intro{width:88vw;padding-top:40px;padding-bottom:22px}#contacto .team-copy,#contacto .service-flow{width:100%}#contacto .team-copy>p:last-child{font-size:16px}#contacto .service-flow{margin-top:22px;gap:10px}#contacto .service-flow li{padding:13px 15px;min-height:93px}#contacto .team-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;overflow:visible;gap:8px;margin-top:20px}#contacto .team-gallery figure{height:112px;min-width:0;aspect-ratio:auto}#contacto .federico{padding-top:22px;margin-bottom:35px}#contacto .federico-photo{width:100px;height:100px}#contacto .federico h2{font-size:32px}}

/* Ajuste visual del equipo: blanco sobre naranja y contacto en dos columnas. */
#contacto,#contacto .eyebrow.light,#contacto .team-copy>p:last-child{color:#fff}
#contacto .service-flow li{color:#fff;border-color:rgba(255,255,255,.48);background:rgba(255,255,255,.16);transition:background-color .18s ease,color .18s ease,border-color .18s ease}
#contacto .service-flow li:hover{background:#fff;color:#c36b00;border-color:#fff}
#contacto .team-gallery{margin-left:auto;margin-right:auto}
#contacto .federico{display:grid;grid-template-columns:1fr 1fr;align-items:center;text-align:left;gap:42px;border-top-color:rgba(255,255,255,.45);padding-top:30px;margin-bottom:45px}
#contacto .federico-identity{display:flex;align-items:center;gap:24px}
#contacto .federico-photo{width:125px;height:150px;border-radius:12px;flex-shrink:0;border:2px solid rgba(255,255,255,.6);object-position:50% 40%}
#contacto .federico h2{font-size:40px;line-height:1.05}#contacto .federico h2 br{display:block}#contacto .federico h2 br::after{content:none}
#contacto .federico p{margin:8px 0 0}#contacto .federico h3{font-size:23px;margin:0 0 8px}
#contacto .contact-actions{align-items:flex-start;margin-top:16px}
#contacto .whatsapp{background:#fff;color:#bd6800}#contacto .whatsapp:hover{background:#fff5e5;filter:none}
#contacto .contact-link{color:#fff;border-bottom-color:rgba(255,255,255,.7)}
@media(max-width:720px){#contacto .federico{grid-template-columns:1fr;gap:23px;padding-top:25px;margin-bottom:36px}#contacto .federico-identity{gap:20px}#contacto .federico-photo{width:108px;height:130px}#contacto .federico h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){#contacto .service-flow li{transition:none}}

/* Una sola foto de equipo junto a las cuatro etapas. */
#contacto .team-overview{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch;margin-top:28px}
#contacto .team-feature-photo{margin:0;height:270px;overflow:hidden;border-radius:12px}
#contacto .team-feature-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 51%}
#contacto .team-overview .service-flow{width:100%;margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#contacto .team-overview .service-flow li{min-height:0;justify-content:center;gap:14px;padding:22px}
#contacto .federico{align-items:start}
#contacto .federico-identity{align-items:flex-start}
#contacto .federico-contact{align-self:start;padding-top:0}
#contacto .federico-contact h3{margin-top:0;line-height:1.15}
#contacto .federico-identity .eyebrow{line-height:1.4;margin-top:0}
@media(max-width:720px){#contacto .team-overview{grid-template-columns:1fr;gap:16px;margin-top:22px}#contacto .team-feature-photo{height:210px}#contacto .team-overview .service-flow{gap:10px}#contacto .team-overview .service-flow li{min-height:100px;padding:15px;gap:10px}}

[hidden]{display:none!important}.ai-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center}.ai-robot{width:100%;max-width:360px;justify-self:center}.ai-intro .coming-soon{font-size:22px;font-weight:700;color:#004481}.ai-gate{margin-top:30px;border:1px solid #cbd7e4;border-radius:16px;background:#f4f7fb;padding:32px}.lock-heading{display:flex;gap:20px;align-items:center}.lock-heading svg{width:36px;height:36px;color:#004481;flex-shrink:0}.lock-heading h3{margin:0;font-size:26px;line-height:1.2}.lock-heading .eyebrow{font-size:12px;margin-bottom:9px}.locked-resources{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0}.locked-resources span{padding:18px;border-radius:9px;border:1px solid #d4dee8;color:#526479;background:#e9eef4;font-weight:700}.code-entry summary{cursor:pointer;color:#004481;font-weight:700;padding:12px 0}.code-entry label{display:block;font-size:14px;margin:12px 0 8px}.code-controls{display:flex;gap:12px;flex-wrap:wrap}.code-controls input{font:inherit;padding:14px;border:1px solid #899aad;border-radius:8px;min-width:0}.code-controls button{min-width:0}#unlock-message{color:#004481;font-size:15px}#unlocked-bar{margin-top:24px;padding:16px 20px;background:#e9f2f9;color:#004481;border-radius:9px;display:flex;justify-content:space-between;align-items:center;gap:20px}#lock-again{background:none;border:1px solid #004481;border-radius:6px;padding:8px 12px;color:inherit;cursor:pointer;font:inherit}@media(max-width:720px){.ai-intro{grid-template-columns:1fr;gap:10px}.ai-robot{max-width:240px}.ai-gate{padding:22px}.locked-resources{grid-template-columns:1fr;gap:8px}.locked-resources span{padding:13px}.lock-heading h3{font-size:23px}.code-controls{flex-direction:column}.code-controls input{width:100%}.lock-heading{align-items:flex-start;gap:14px}}

/* Productos: marca e ilustraciones alineadas al contenido. */
.products{align-items:start;column-gap:55px}.products-copy{min-width:0}.products-brand{position:relative;width:162px;height:75px;overflow:hidden;background:#fff;border-radius:8px;margin-bottom:22px}.products-brand img{position:absolute;width:280px;max-width:none;left:-65px;top:-65px}.products h2{margin-top:0}.products-copy>p{font-size:18px;line-height:1.5;margin-bottom:0}.product-list{margin-top:0}.product-list article{min-height:100px;padding:9px 0;gap:20px;align-items:center}.product-list article:first-child{padding-top:0;min-height:90px}.product-list h3{margin:0;font-size:23px;line-height:1.25}.product-art{display:block;position:relative;width:78px;height:78px;flex:0 0 78px;overflow:hidden;border-radius:12px;background:white}.product-art img{position:absolute;top:0;height:78px;width:234px;max-width:none;object-fit:fill}.product-art-home img{left:0}.product-art-shop img{left:-78px}.product-art-tech img{left:-156px}.product-list a{margin-top:22px}
@media(max-width:720px){.products{gap:28px}.products-brand{margin-bottom:20px}.products-copy>p{font-size:16px}.product-list article{min-height:88px;gap:17px}.product-list article:first-child{min-height:80px}.product-list h3{font-size:21px}.product-art{width:68px;height:68px;flex-basis:68px}.product-art img{width:204px;height:68px}.product-art-shop img{left:-68px}.product-art-tech img{left:-136px}}

.products{row-gap:24px}.products>.products-brand{grid-column:1/-1;margin-bottom:0}.product-list article:first-child{align-items:flex-start}.product-list article:first-child h3{padding-top:8px}
/* Marca blanca sin placa y filas de productos centradas. */
.products-brand{background:transparent;border-radius:0;mix-blend-mode:screen}.products-brand img{filter:grayscale(1) invert(1) contrast(10)}
.product-art{background:transparent;border-radius:0}
.products{align-items:start}.products-copy,.product-list{align-self:start;margin-top:0}
.product-list article:first-child{align-items:center;padding-top:0;min-height:90px}.product-list article:first-child h3{padding-top:0}
.product-list article{align-items:center}.product-list h3{display:flex;align-items:center;min-height:78px}
@media(max-width:720px){.product-list h3{min-height:68px}}

/* Ambas columnas empiezan en la misma fila, incluido el logo. */
.products{padding-top:34px;padding-bottom:34px;align-items:start;row-gap:0}
.products-copy,.product-list{margin-top:0;align-self:start}
.products-copy .products-brand{margin:0 0 14px}
.products h2{margin-top:0;margin-bottom:18px}
.products-copy>p{margin-top:0}
.product-list article,.product-list article:first-child{min-height:86px;padding:4px 0;align-items:center}
.product-list h3{min-height:78px;padding-top:0}
.product-list a{margin-top:14px}
@media(max-width:720px){.products{padding-top:28px;padding-bottom:28px;row-gap:22px}.products-copy .products-brand{margin-bottom:14px}.product-list article,.product-list article:first-child{min-height:78px}.product-list h3{min-height:68px}}

/* Cierre y redes sociales. */
.site-footer{padding:30px max(6vw,calc((100vw - 1080px)/2))}.site-footer .footer-main{align-items:center;gap:40px}.site-footer .footer-social img{width:150px;height:auto}.footer-social h3{font-size:17px;margin:18px 0 12px;font-weight:700}.footer-social nav{display:flex;flex-direction:column;gap:10px}.footer-social nav a{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.4;min-height:28px}.footer-social nav svg{width:21px;height:21px;flex-shrink:0;color:#bd6800}.site-footer .footer-social nav span{display:inline;margin:0;border:0;padding:0;color:inherit;font-size:inherit;letter-spacing:normal}.footer-social nav a:hover{color:#a55b00;text-decoration:underline}.site-footer .footer-main>p{font-size:clamp(22px,2.8vw,32px);line-height:1.2;text-align:right;letter-spacing:-.025em}
@media(max-width:720px){.site-footer{padding:26px 6vw}.site-footer .footer-main{flex-direction:column;align-items:flex-start;gap:25px}.site-footer .footer-social img{width:125px}.site-footer .footer-main>p{text-align:left;font-size:24px}.footer-social nav a{font-size:14px}}

/* Pie en tres columnas: marca, redes y frase. */
.site-footer{padding:28px 4vw}.site-footer .footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px}.site-footer .footer-logo{width:150px;height:auto;justify-self:start}.site-footer .footer-social{justify-self:center}.site-footer .footer-social h3{margin:0 0 12px;font-size:16px}.site-footer .footer-social nav a,.site-footer .footer-social nav svg,.site-footer .footer-social nav span{color:#F08F04}.site-footer .footer-social nav a:hover{color:#F08F04}.site-footer .footer-main>p{color:#F08F04;font-size:20px;line-height:1.3;letter-spacing:0;text-align:right;justify-self:end}.site-footer .footer-social nav{gap:6px}
@media(max-width:720px){.site-footer{padding:25px 5vw}.site-footer .footer-main{grid-template-columns:auto 1fr;gap:24px 18px}.site-footer .footer-logo{width:125px}.site-footer .footer-social{justify-self:end}.site-footer .footer-main>p{grid-column:1/-1;font-size:18px;justify-self:end;text-align:right}.site-footer .footer-social h3{font-size:15px}}

/* Checklist más compacto. */
#cotizar{padding-top:48px;padding-bottom:48px}
#cotizar .section-heading h2{font-size:clamp(32px,3.5vw,44px);line-height:1.08;margin-bottom:14px}
#cotizar .section-heading .eyebrow{color:#F08F04;font-size:13px;margin-bottom:12px}
#cotizar .section-heading>p:last-child{font-size:17px;line-height:1.45;margin-bottom:0}
#cotizar .checklist{margin:25px 0 16px;max-width:780px}
#cotizar .checklist li{padding:15px 0}
#cotizar .checklist label{gap:16px}
#cotizar .checklist strong{font-size:18px;font-weight:600}
#cotizar .checklist input{width:20px;height:20px}
#cotizar #progress{font-size:14px;margin:0 0 14px;color:#575b61}
#cotizar .button.primary{background:#F08F04;min-width:0;padding:13px 20px;font-size:16px;gap:0}
#cotizar .fine{margin-top:16px;font-size:13px;line-height:1.45;max-width:700px}
@media(max-width:720px){#cotizar{padding-top:36px;padding-bottom:36px}#cotizar .section-heading h2{font-size:34px}#cotizar .section-heading>p:last-child{font-size:16px}#cotizar .checklist strong{font-size:16px}#cotizar .checklist li{padding:13px 0}}
/* Navegación móvil: controles táctiles y pantallas angostas. */
html{scroll-padding-top:20px}section[id]{scroll-margin-top:20px}
button,input,summary,a{-webkit-tap-highlight-color:rgba(0,68,129,.14)}
.code-controls input{font-size:16px;min-height:48px}
.code-entry summary,.copy-secondary,#lock-again{min-height:44px}
.code-entry summary{display:flex;align-items:center}
button:disabled{opacity:.65;cursor:wait}
#cotizar .checklist label{min-height:44px}
.site-footer .footer-social nav a{min-height:44px}
#contacto .contact-link{display:inline-flex;align-items:center;min-height:44px}
.product-list>a{display:inline-flex;align-items:center;min-height:44px}
.base-prompt-card summary{min-height:56px}
@media(max-width:720px){
 .topbar{padding-left:12px;padding-right:12px;gap:12px}.logo-orv{width:min(43vw,164px);flex-shrink:1}.bbva-logo{flex-shrink:0;width:130px}.bbva-logo img{left:-64px}.brand-divider{flex-shrink:0}
 .quick-nav{width:92vw}.quick-nav a{min-height:50px;display:flex;align-items:center;line-height:1.3}.quick-nav a:nth-child(odd){border-right:1px solid #eee}
 .hero-art{max-width:290px}.hero-cta{min-height:48px}
 .section-heading,.team-copy,.federico-identity>div,.federico-contact,.products-copy,.product-list{min-width:0}
 #contacto .contact-link{overflow-wrap:anywhere}
 .base-prompt-card summary{gap:12px}.base-prompt-card summary>span:first-child{min-width:0}.base-prompt-card pre{overflow-wrap:anywhere}
 #unlocked-bar{align-items:flex-start;flex-direction:column;gap:10px}
 #lock-again{width:100%}.code-controls button{min-height:48px;width:100%}
 .copy-secondary{max-width:calc(100% - 38px)}
 .before-after img{height:auto;aspect-ratio:4/3}.video-card video{height:auto;aspect-ratio:16/9}
 .product-list h3{overflow-wrap:normal}.site-footer .footer-main{min-width:0}
}
@media(max-width:380px){
 .topbar{gap:8px;padding-left:8px;padding-right:8px}.logo-orv{width:140px}.bbva-logo{width:126px}
 .hero h1{font-size:40px}.section-heading h2{font-size:36px}
 #contacto .federico-identity{gap:14px}#contacto .federico-photo{width:88px;height:112px}#contacto .federico h2{font-size:30px}
 .lock-heading{flex-direction:column}.ai-gate{padding:18px}.product-list h3{font-size:19px}
 .site-footer .footer-main{grid-template-columns:1fr;gap:18px}.site-footer .footer-social{justify-self:start}.site-footer .footer-main>p{grid-column:auto;justify-self:start;text-align:left}
}
