    :root { font-family:"Instrument Sans","Avenir Next",Arial,sans-serif; color-scheme:light; --ink:#171d29; --quiet:#626a78; --blue:#becfff; --paper:#f4f4f0; --snap-offset:0px; --header-height:82px; }
    *,*::before,*::after { box-sizing:border-box; }
    html { scroll-behavior:smooth; scroll-padding-top:var(--snap-offset); }
    body { margin:0; color:var(--ink); background:var(--paper); -webkit-font-smoothing:antialiased; }
    button { font:inherit; }
    a { color:inherit; text-decoration:none; }
    a:focus-visible,button:focus-visible { outline:2px solid #849ce9; outline-offset:4px; }
    .review { position:sticky; z-index:30; top:0; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:10px max(20px,calc((100vw - 1240px)/2)); color:#dce4f7; background:#172238; border-bottom:1px solid #ffffff32; font-size:12px; }
    .review strong { font-weight:600; }
    .review p { margin:2px 0 0; color:#abbad2; font-size:11px; }
    .review-controls { display:flex; gap:5px; padding:4px; border:1px solid #ffffff2c; border-radius:9px; background:#0a1222; white-space:nowrap; }
    .review-controls button { padding:8px 13px; border:0; border-radius:6px; color:#c3cee0; background:transparent; cursor:pointer; font-size:11px; font-weight:700; }
    html[data-installation="client"] .review,html[data-installation="client"] .showcase-actions { display:none; }
    html[data-concept="a"] #show-a,html[data-concept="b"] #show-b { color:#14203c; background:#d7e3fc; }
    .page { overflow:clip; }
    .wrap { width:min(100% - 64px,1240px); margin-inline:auto; }
    .site-header { position:relative; z-index:2; color:#f2f5fc; background:#0d1421; }
    .site-header-inner { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:28px; border-bottom:1px solid #ffffff20; }
    .brand { display:inline-flex; align-items:center; gap:10px; font-size:20px; font-weight:700; letter-spacing:.16em; white-space:nowrap; }
    .brand img { width:26px; height:26px; flex:none; }
    html[data-installation="client"] [data-estoc-mark] { display:none; }
    .nav { display:flex; gap:32px; align-items:center; color:#cad4e8; font-size:12px; font-weight:500; }
    .nav a:hover { color:#fff; }
    .nav-cta { padding:11px 17px; border:1px solid #b9caff70; border-radius:7px; color:#eff3fc; background:#ffffff0b; font-size:12px; font-weight:600; white-space:nowrap; }
    .hero { position:relative; isolation:isolate; color:#f2f5fc; background:#0d1421; }
    .hero::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse 39% 45% at 72% 50%,#6074a038,transparent 80%),linear-gradient(120deg,#0d1421,#111d31); }
    .hero-inner { min-height:max(640px,calc(100vh - var(--snap-offset) - var(--header-height))); min-height:max(640px,calc(100svh - var(--snap-offset) - var(--header-height))); display:grid; grid-template-columns:.95fr 1.05fr; align-items:center; gap:34px; padding:70px 0 100px; }
    .hero-copy { position:relative; z-index:2; }
    .eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 26px; color:#bbcae4; font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
    .eyebrow::before { content:""; width:20px; height:1px; background:#b7caff; }
    h1,h2,h3,p { margin-top:0; }
    h1 { max-width:630px; margin-bottom:23px; font-size:clamp(52px,5.3vw,78px); line-height:1.02; letter-spacing:-.075em; font-weight:500; }
    h1 em { color:#becfff; font-style:normal; }
    .hero-sub { max-width:500px; margin-bottom:30px; color:#b9c6db; font-size:17px; line-height:1.58; }
    .hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:21px; }
    .button { display:inline-flex; min-height:51px; align-items:center; justify-content:center; gap:23px; padding:0 20px; border-radius:8px; color:#142039; background:#d5e2fc; font-size:13px; font-weight:700; }
    .button:hover { background:#eff4ff; }
    .button,.nav-cta,.review-controls button,.showcase-actions button { transition:background .28s ease-out,color .28s ease-out,transform .28s ease-out,box-shadow .28s ease-out; }
    .button:active,.nav-cta:active,.review-controls button:active,.showcase-actions button:active { transform:scale(.98); }
    .quiet-link { color:#dce5f5; border-bottom:1px solid #91a7ca; padding:8px 0; font-size:13px; font-weight:600; }
    .hero-aside { margin-top:28px; color:#8d9db7; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
    .device-scene { position:relative; height:470px; display:flex; align-items:center; justify-content:center; }
    .device-glow { position:absolute; width:490px; height:370px; border-radius:50%; background:#7185c955; filter:blur(84px); }
    .desktop { position:absolute; width:min(100%,630px); aspect-ratio:1.49; border:8px solid #222c3c; border-radius:19px 19px 12px 12px; overflow:hidden; background:#edece8; box-shadow:0 35px 80px #02040b99,0 0 0 1px #8091b355; transform:perspective(1100px) rotateY(-8deg) rotateX(3deg); }
    .desktop::after { content:""; position:absolute; inset:0; border-radius:10px; box-shadow:inset 0 1px 2px #fff9; pointer-events:none; }
    .screen-top { height:33px; padding:0 14px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #cdd3dc; color:#293145; background:#f9f9f7; }
    .screen-dots { display:flex; gap:4px; }
    .screen-dots i { width:5px; height:5px; border-radius:50%; background:#bbc3d0; }
    .screen-url { font-size:7px; letter-spacing:.06em; color:#8792a1; }
    .screen-page { height:calc(100% - 33px); background:#f6f5f0; }
    .screen-nav { height:48px; padding:0 29px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #d4d8db; color:#27303e; font-size:8px; }
    .screen-nav strong { font-size:12px; letter-spacing:.14em; }
    .screen-nav span { color:#687482; }
    .screen-main { height:calc(100% - 48px); display:grid; grid-template-columns:1fr .9fr; }
    .screen-copy { padding:48px 10px 20px 33px; }
    .screen-copy small { color:#67758e; font-size:7px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
    .screen-copy h3 { max-width:225px; margin:14px 0 12px; color:#293344; font-size:clamp(20px,2vw,32px); line-height:1.05; letter-spacing:-.06em; font-weight:500; }
    .screen-copy p { max-width:200px; color:#6f7781; font-size:8px; line-height:1.55; }
    .screen-mini-button { display:inline-flex; margin-top:12px; padding:8px 10px; border-radius:3px; background:#293a61; color:#e8efff; font-size:7px; font-weight:700; }
    .screen-art { position:relative; margin:16px 18px 16px 0; overflow:hidden; border-radius:2px; background:linear-gradient(145deg,#a4b1c2,#e0e3df 45%,#5e6f83); }
    .screen-art::before { content:""; position:absolute; width:180px; height:240px; top:46px; left:13px; transform:rotate(22deg); border:1px solid #ffffff90; background:linear-gradient(118deg,#e5e9e6,#8295ad 54%,#d5dedc); box-shadow:17px 12px 25px #22374c7a; }
    .screen-art::after { content:""; position:absolute; width:95px; height:95px; right:12px; top:26px; border-radius:50%; border:1px solid #fff9; background:radial-gradient(circle at 29% 22%,#f4f6f2,#7186a4 63%,#3d506e); box-shadow:8px 12px 25px #293c586b; }
    .phone { position:absolute; width:143px; height:286px; right:-15px; bottom:-3px; border:6px solid #202a3c; border-radius:24px; background:#f3f1eb; box-shadow:0 20px 45px #0009,0 0 0 1px #7f91af66; overflow:hidden; transform:rotate(7deg); }
    .phone::before { content:""; position:absolute; z-index:2; top:4px; left:40px; right:40px; height:8px; border-radius:10px; background:#202a3c; }
    .phone-top { height:31px; padding:13px 11px 0; color:#243249; font-size:7px; font-weight:700; letter-spacing:.1em; }
    .phone-head { padding:19px 11px 9px; color:#283345; font-size:20px; line-height:1.05; letter-spacing:-.07em; }
    .phone-art { height:112px; margin:0 10px; border-radius:3px; background:linear-gradient(135deg,#d4dae0,#8192ac 50%,#e0e5df); overflow:hidden; }
    .phone-art::after { content:""; display:block; width:75px; height:120px; margin:12px 0 0 52px; transform:rotate(25deg); border:1px solid #fff8; background:linear-gradient(110deg,#f5f4ed,#68809c); }
    .phone-line { height:5px; margin:12px 10px 0; background:#acb3ba; }
    .phone-line.short { width:70%; margin-top:5px; }
    .phone-button { display:none; }
    .scene-note { position:absolute; left:4px; bottom:-17px; color:#a9b8d0; font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
    .light { display:grid; align-items:center; min-height:calc(100vh - var(--snap-offset)); min-height:calc(100svh - var(--snap-offset)); background:#f4f4f0; }
    .intro { display:flex; align-items:end; justify-content:space-between; gap:40px; padding:93px 0 50px; }
    .section-label { color:#485b82; font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
    .intro h2 { max-width:730px; margin:18px 0 0; color:#1f293b; font-size:clamp(38px,4.1vw,59px); line-height:1.08; letter-spacing:-.065em; font-weight:500; }
    .intro p { max-width:286px; margin:0 0 5px; color:#5f6976; font-size:14px; line-height:1.55; }
    .services { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; padding-bottom:100px; }
    .service { min-height:236px; padding:25px; display:flex; flex-direction:column; border:1px solid #d9dcd9; border-radius:12px; background:#fcfcfa; }
    .service-number { color:#60708b; font-size:11px; letter-spacing:.08em; }
    .service h3 { margin:auto 0 10px; color:#243148; font-size:26px; line-height:1.1; letter-spacing:-.05em; font-weight:500; }
    .service p { max-width:265px; margin:0; color:#596574; font-size:13px; line-height:1.5; }
    .showcase { display:grid; align-items:center; min-height:calc(100svh - var(--snap-offset)); padding:94px 0; color:#f2f5fc; background:radial-gradient(ellipse 55% 75% at 74% 48%,#647ba135,transparent 82%),#152039; }
    .showcase-inner { display:grid; grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr); align-items:center; gap:clamp(36px,6vw,100px); }
    .showcase .section-label { color:#b9cafd; }
    .showcase h2 { max-width:570px; margin:20px 0 21px; font-size:clamp(37px,4vw,57px); line-height:1.08; letter-spacing:-.062em; font-weight:500; }
    .showcase-copy>p { max-width:460px; color:#b7c4d7; font-size:15px; line-height:1.62; }
    .showcase-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:34px; }
    .showcase-actions[hidden] { display:none; }
    .showcase-actions button { display:flex; align-items:center; gap:12px; min-height:49px; padding:8px 16px 8px 9px; border:1px solid #b9c8e64d; border-radius:9px; color:#c7d3e8; background:#ffffff0a; cursor:pointer; }
    .showcase-actions button:hover { border-color:#c8d9f8; }
    .showcase-actions strong { display:grid; place-items:center; width:31px; height:31px; border-radius:6px; color:#14223c; background:#bccdfa; font-size:12px; }
    .showcase-actions span { font-size:12px; font-weight:600; }
    .showcase-actions button[aria-pressed="true"] { color:#fff; border-color:#d5e3fc; background:#d4e1fa26; }
    .showcase-browser { overflow:hidden; border:7px solid #293753; border-radius:16px; background:#f5f5f0; box-shadow:0 30px 65px #050a18a1,0 0 0 1px #b5c5e44d; }
    .showcase-browser-bar { display:flex; align-items:center; gap:4px; height:28px; padding:0 11px; color:#4c586c; background:#e8ebed; border-bottom:1px solid #cad1d8; }
    .showcase-browser-bar i { width:5px; height:5px; border-radius:50%; background:#afb8c5; }
    .showcase-browser-bar span { margin-left:9px; font-size:8px; letter-spacing:.04em; }
    .showcase-browser-body { min-height:325px; padding:0 22px 22px; transition:background .35s ease; }
    .showcase-browser-head { display:flex; align-items:center; justify-content:space-between; height:43px; color:#243248; border-bottom:1px solid #d2d8df; font-size:8px; font-weight:700; letter-spacing:.09em; }
    .showcase-browser-head span+span { color:#536176; font-size:7px; font-weight:500; letter-spacing:0; }
    .showcase-browser-layout { display:grid; grid-template-columns:1fr .85fr; align-items:center; gap:15px; min-height:280px; }
    .showcase-browser-text { display:flex; flex-direction:column; align-items:flex-start; color:#253248; }
    .showcase-browser-text small { color:#4c5e80; font-size:7px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
    .showcase-browser-text strong { max-width:250px; margin:14px 0 10px; font-size:clamp(22px,2.25vw,32px); font-weight:500; letter-spacing:-.06em; line-height:1.08; }
    .showcase-browser-text em { color:#4a6192; font-style:normal; }
    .showcase-browser-text>span { max-width:220px; color:#525d6d; font-size:9px; line-height:1.5; }
    .showcase-browser-text b { margin-top:19px; padding:9px 11px; border-radius:4px; color:#e9f0ff; background:#293c63; font-size:8px; font-weight:600; }
    .showcase-browser-art { position:relative; height:215px; border-radius:5px; background:linear-gradient(135deg,#a7b6c7,#dfe5e6 55%,#8398b3); overflow:visible; }
    .showcase-art-desktop { position:absolute; inset:20px 28px 26px 18px; padding:15px; border:5px solid #28364c; border-radius:7px; background:linear-gradient(132deg,#f2f4f0 45%,#96a9bf 45%,#d5e0df); box-shadow:8px 14px 20px #24375667; transform:rotate(-5deg); }
    .showcase-art-desktop span { display:block; width:34%; height:7px; margin-bottom:8px; border-radius:2px; background:#71839d; }
    .showcase-art-desktop span:first-child { width:18%; height:4px; }
    .showcase-art-mobile { position:absolute; right:5px; bottom:-7px; width:58px; height:125px; padding:20px 6px; border:5px solid #26364b; border-radius:12px; background:#e9edf0; box-shadow:5px 8px 14px #18294166; transform:rotate(7deg); }
    .showcase-art-mobile span { display:block; height:6px; margin-bottom:7px; background:#7f91aa; }
    .showcase-art-mobile span+span { width:68%; }
    .showcase-note { margin:15px 0 0; color:#9eafc9; font-size:11px; line-height:1.5; }
    html[data-concept="b"] .showcase-browser-body { background:#eef0ed; }
    html[data-concept="b"] .showcase-browser-layout { display:flex; flex-direction:column; gap:18px; padding-top:19px; }
    html[data-concept="b"] .showcase-browser-text { align-items:center; text-align:center; }
    html[data-concept="b"] .showcase-browser-text strong { max-width:390px; margin:8px 0; font-size:clamp(24px,2.55vw,38px); }
    html[data-concept="b"] .showcase-browser-text b { margin-top:10px; }
    html[data-concept="b"] .showcase-browser-art { width:min(100%,380px); height:100px; align-self:center; }
    html[data-concept="b"] .showcase-art-desktop { inset:12px 35px -11px 29px; }
    html[data-concept="b"] .showcase-art-mobile { height:76px; width:42px; bottom:-8px; }
    .process { display:grid; align-items:center; min-height:calc(100svh - var(--snap-offset)); padding:95px 0 105px; background:#f4f4f0; }
    .process-intro { display:flex; align-items:start; justify-content:space-between; gap:32px; padding-bottom:54px; }
    .process-intro-body { display:flex; align-items:end; gap:34px; width:min(100%,980px); }
    .process h2 { max-width:650px; margin:0; font-size:clamp(38px,4vw,59px); font-weight:500; letter-spacing:-.062em; line-height:1.08; }
    .process-intro p { max-width:230px; margin:0 0 4px; color:#596776; font-size:13px; line-height:1.56; }
    .process-steps { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #cbd2d8; }
    .process-step { min-height:225px; padding:27px 29px 25px 0; border-right:1px solid #cbd2d8; }
    .process-step:not(:first-child) { padding-left:29px; }
    .process-step:last-child { border-right:0; }
    .process-step-number { display:block; margin-bottom:55px; color:#596f93; font-size:11px; font-weight:700; letter-spacing:.12em; }
    .process-step h3 { margin:0 0 10px; color:#243148; font-size:24px; line-height:1.16; letter-spacing:-.04em; font-weight:500; }
    .process-step p { max-width:300px; margin:0; color:#596776; font-size:13px; line-height:1.55; }
    .contact { display:grid; align-items:center; min-height:calc(100vh - var(--snap-offset)); min-height:calc(100svh - var(--snap-offset)); padding:89px 0 105px; background:#e8ebee; }
    .contact-inner { display:flex; align-items:end; justify-content:space-between; gap:36px; }
    .contact h2 { max-width:630px; margin:17px 0 0; font-size:clamp(39px,4.5vw,64px); line-height:1.07; letter-spacing:-.065em; font-weight:500; }
    .contact .button { color:#eaf0ff; background:#24395f; }
    .contact .button:hover { background:#314975; }
    .contact-note { padding:21px 0; color:#5e6874; background:#e8ebee; border-top:1px solid #c8ced5; font-size:11px; }
    html[data-concept="b"] .site-header,html[data-concept="b"] .hero { background:#101725; }
    html[data-concept="b"] .site-header-inner { min-height:90px; }
    html[data-concept="b"] .nav-cta { border-color:#d5e2fc; color:#17233b; background:#d5e2fc; }
    html[data-concept="b"] .hero::before { background:radial-gradient(ellipse 42% 30% at 51% 84%,#657bb353,transparent 82%),linear-gradient(180deg,#101725,#18253a); }
    html[data-concept="b"] .hero-inner { min-height:calc(100vh - var(--snap-offset) - var(--header-height)); min-height:calc(100svh - var(--snap-offset) - var(--header-height)); display:flex; flex-direction:column; gap:0; padding:84px 0 0; }
    html[data-concept="b"] #servicios { scroll-margin-top:78px; }
    html[data-concept="b"] .hero-copy { width:100%; text-align:center; }
    html[data-concept="b"] .eyebrow { justify-content:center; margin-bottom:19px; }
    html[data-concept="b"] h1 { max-width:1000px; margin:0 auto 17px; font-size:clamp(60px,7vw,105px); line-height:.98; }
    html[data-concept="b"] .hero-sub { max-width:580px; margin:0 auto 24px; font-size:16px; }
    html[data-concept="b"] .hero-actions { justify-content:center; }
    html[data-concept="b"] .hero-aside { margin-top:20px; }
    html[data-concept="b"] .device-scene { width:min(100%,930px); height:470px; margin:42px auto -79px; }
    html[data-concept="b"] .desktop { width:820px; aspect-ratio:1.85; transform:perspective(1100px) rotateX(4deg); border-radius:16px 16px 10px 10px; }
    html[data-concept="b"] .screen-copy { padding:46px 20px 20px 48px; }
    html[data-concept="b"] .screen-copy h3 { max-width:300px; font-size:37px; }
    html[data-concept="b"] .screen-art { margin:19px 24px 19px 0; }
    html[data-concept="b"] .phone { right:25px; bottom:0; transform:rotate(-5deg); }
    html[data-concept="b"] .scene-note { left:58px; bottom:-4px; }
    html[data-concept="b"] .intro { padding-top:171px; display:block; }
    html[data-concept="b"] .intro h2 { max-width:920px; font-size:clamp(43px,5vw,73px); }
    html[data-concept="b"] .intro p { max-width:540px; margin-top:20px; }
    html[data-concept="b"] .services { display:block; padding-bottom:110px; }
    html[data-concept="b"] .service { min-height:125px; display:grid; grid-template-columns:90px 1fr 1fr; align-items:center; gap:20px; padding:16px 0; border:0; border-top:1px solid #cbd0d2; border-radius:0; background:transparent; }
    html[data-concept="b"] .service:last-child { border-bottom:1px solid #cbd0d2; }
    html[data-concept="b"] .service h3 { margin:0; font-size:31px; }
    html[data-concept="b"] .service p { max-width:370px; }
    html[data-concept="b"] .showcase { background:radial-gradient(ellipse 62% 70% at 72% 50%,#a7bde432,transparent 82%),#182640; }
    html[data-concept="b"] .contact { background:#f4f4f0; }
    html[data-concept="b"] .contact-note { background:#f4f4f0; }
    @media (max-width:900px) {
      .nav { display:none; }
      .hero-inner { grid-template-columns:1fr; padding:65px 0 80px; }
      .hero-copy { max-width:700px; }
      .device-scene { width:min(100%,680px); margin-inline:auto; }
      .intro { align-items:start; flex-direction:column; gap:20px; }
      .services { grid-template-columns:1fr 1fr; }
      .showcase-inner { grid-template-columns:1fr; }
      .showcase-copy { max-width:680px; }
      .showcase-browser { max-width:700px; }
      .process-intro,.process-intro-body { align-items:start; flex-direction:column; gap:18px; }
      .process-intro p { max-width:520px; }
      html[data-concept="b"] .device-scene { width:min(100%,720px); }
      html[data-concept="b"] .desktop { width:min(100%,620px); }
    }
    @media (max-width:600px) {
      :root { --header-height:69px; }
      .review { padding:9px 14px; gap:8px; }
      .review strong { font-size:11px; }
      .review p { display:none; }
      .review-controls button { padding:8px 9px; font-size:10px; }
      .wrap { width:min(100% - 38px,1240px); }
      .site-header-inner { min-height:69px; }
      .brand { font-size:17px; }
      .brand svg { width:21px; height:21px; }
      .nav-cta { padding:9px 12px; font-size:11px; }
      .hero-inner { gap:4px; padding:60px 0 56px; }
      h1 { font-size:clamp(48px,12vw,64px); }
      .hero-sub { font-size:15px; }
      .hero-actions { gap:14px; }
      .button { min-height:46px; }
      .device-scene { height:clamp(535px,160vw,630px); width:100%; margin:26px 0 23px; }
      .desktop { display:none; }
      .device-glow { width:80%; height:65%; }
      .phone,html[data-concept="b"] .phone { display:block; width:min(75vw,280px); height:auto; aspect-ratio:.49; right:auto; bottom:auto; border-width:8px; border-radius:35px; box-shadow:0 35px 75px #02040ba8,0 0 0 1px #91a4c684; transform:rotate(-3deg); }
      .phone::before { top:7px; left:36%; right:36%; height:8px; }
      .phone-top { display:flex; align-items:end; justify-content:space-between; height:49px; padding:0 17px 10px; font-size:10px; }
      .phone-menu { width:17px; height:12px; border-top:2px solid #243249; border-bottom:2px solid #243249; }
      .phone-head { padding:24px 17px 16px; font-size:clamp(25px,7.6vw,32px); font-weight:500; line-height:1.02; }
      .phone-art { height:clamp(160px,47vw,210px); margin:0 15px; border-radius:8px; }
      .phone-art::after { width:70%; height:105%; margin:15px 0 0 40%; }
      .phone-line { height:6px; margin:16px 17px 0; border-radius:99px; }
      .phone-line.short { width:59%; margin-top:7px; }
      .phone-button { display:inline-flex; margin:21px 17px 0; padding:10px 12px; border-radius:5px; color:#eef3ff; background:#293a61; font-size:9px; font-weight:700; }
      .scene-note { left:0; bottom:-12px; font-size:9px; }
      .intro { padding:72px 0 33px; }
      .intro h2 { font-size:40px; }
      .services { display:block; padding-bottom:75px; }
      .service { min-height:185px; margin-bottom:10px; }
      .service h3 { font-size:25px; }
      .showcase { padding:73px 0 80px; }
      .showcase h2 { font-size:42px; }
      .showcase-browser-body { min-height:0; padding:0 12px 15px; }
      .showcase-browser-layout { min-height:225px; gap:8px; }
      .showcase-browser-text strong { font-size:22px; }
      .showcase-browser-art { height:160px; }
      .showcase-art-desktop { inset:18px 20px 20px 13px; padding:8px; }
      .showcase-art-mobile { width:42px; height:95px; }
      html[data-concept="b"] .showcase-browser-layout { padding-top:16px; }
      html[data-concept="b"] .showcase-browser-text strong { font-size:25px; }
      html[data-concept="b"] .showcase-browser-art { height:75px; }
      .process { padding:75px 0; }
      .process-intro { padding-bottom:35px; }
      .process h2 { font-size:42px; }
      .process-steps { grid-template-columns:1fr; }
      .process-step,.process-step:not(:first-child) { min-height:0; padding:24px 0; border-right:0; border-bottom:1px solid #cbd2d8; }
      .process-step-number { margin-bottom:22px; }
      .contact { padding:70px 0 78px; }
      .contact-inner { display:block; }
      .contact h2 { margin-bottom:25px; font-size:43px; }
      html[data-concept="b"] .hero-inner { padding:61px 0 70px; }
      html[data-concept="b"] #servicios { scroll-margin-top:52px; }
      html[data-concept="b"] h1 { font-size:clamp(50px,12vw,70px); }
      html[data-concept="b"] .device-scene { width:100%; height:clamp(535px,160vw,630px); margin:32px 0 23px; }
      html[data-concept="b"] .phone { transform:rotate(3deg); }
      html[data-concept="b"] .scene-note { left:0; bottom:-12px; }
      html[data-concept="b"] .intro { padding-top:72px; }
      html[data-concept="b"] .intro h2 { font-size:45px; }
      html[data-concept="b"] .service { min-height:0; display:grid; grid-template-columns:36px 1fr; gap:6px 12px; padding:24px 0; margin:0; }
      html[data-concept="b"] .service h3 { font-size:26px; }
      html[data-concept="b"] .service p { grid-column:2; }
    }
    @media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .showcase-browser-body,.button,.nav-cta,.review-controls button,.showcase-actions button { transition:none; } }
    .review[hidden] { display:none; }
    .contact-copy { max-width:540px; }
    .contact-copy p { max-width:440px; margin:20px 0 0; color:#536174; font-size:14px; line-height:1.55; }
    .contact-form { width:min(100%,570px); flex:none; padding:28px; border:1px solid #cbd2dc; border-radius:12px; background:#fafbf9; box-shadow:0 18px 42px #182f4b12; }
    .form-context-note { margin:0 0 24px; padding:12px 14px; border:1px solid #a8bce179; border-radius:6px; color:#36517a; background:#e9effa; font-size:12px; font-weight:600; }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
    .field { margin-bottom:17px; }
    .field label { display:block; margin-bottom:8px; color:#293954; font-size:12px; font-weight:700; }
    .field label small { color:#5d6877; font-size:11px; font-weight:400; }
    .field input,.field select,.field textarea { width:100%; min-height:45px; padding:11px 12px; border:1px solid #bcc6d4; border-radius:6px; outline:none; color:#1d2c46; background:#fff; font:inherit; font-size:13px; }
    .field textarea { min-height:105px; resize:vertical; }
    .field input:focus,.field select:focus,.field textarea:focus { border-color:#5978b4; box-shadow:0 0 0 3px #bdd1f06b; }
    .field input[aria-invalid="true"],.field textarea[aria-invalid="true"] { border-color:#bd4854; }
    .field-error { display:block; min-height:17px; margin-top:3px; color:#a53743; font-size:11px; }
    .form-end { display:flex; justify-content:space-between; align-items:center; gap:20px; }
    .form-end p { margin:0; color:#5d6877; font-size:11px; }
    .contact .button { border:0; cursor:pointer; white-space:nowrap; }
    .contact .button:disabled { opacity:.52; cursor:not-allowed; }
    .form-status { min-height:20px; margin:15px 0 0; color:#285277; font-size:12px; font-weight:600; }
    .form-status[data-state="error"] { color:#9b2f3f; }
    html[data-concept="b"] .contact-inner { align-items:start; }
    @media (max-width:1120px) {
      .contact-inner { align-items:start; flex-direction:column; }
      .contact-form { width:min(100%,650px); }
    }
    @media (max-width:600px) {
      .contact-form { margin-top:32px; padding:20px; }
      .form-row { grid-template-columns:1fr; gap:0; }
      .form-end { align-items:start; flex-direction:column; gap:12px; }
      .form-end .button { width:100%; }
    }
