.dv-contact { background:#f1ece4; color:#28231f; min-height:100vh; padding:0 20px 130px; font-family:Inter,system-ui,sans-serif; }
body:has(.dv-contact) { margin:0; }
.dv-contact * { box-sizing:border-box; }
.dv-contact a { color:inherit; text-decoration:none; }
.dv-contact p,.dv-contact h1,.dv-contact h2,.dv-contact h3 { margin-top:0; }
.dv-contact .dv-contact-primary { color:#fff7ed; }
.dv-contact-consent { position:fixed; bottom:12px; left:12px; right:12px; max-width:620px; margin:auto; background:#fffaf3; color:#28231f; border:1px solid #cec4b8; border-radius:12px; padding:15px; box-shadow:0 5px 25px #0002; font:12px/1.6 system-ui,sans-serif; }
.dv-contact-consent p { margin:0 0 10px; }
.dv-contact-consent button { border:1px solid #cec4b8; background:transparent; padding:10px; border-radius:8px; margin-right:8px; cursor:pointer; }
.dv-contact-consent button:last-child { background:#29231e; color:#fff7ed; }
.dv-contact-shell { max-width:760px; margin:auto; }
.dv-contact a { -webkit-tap-highlight-color:transparent; }
.dv-contact a:focus-visible { outline:3px solid #a14b27; outline-offset:5px; }
.dv-contact-top { display:flex; align-items:center; justify-content:space-between; padding:28px 0; font-size:10px; letter-spacing:.17em; }
.dv-contact-top>a { font-weight:800; font-size:20px; letter-spacing:-.04em; }
.dv-contact-top>a span { color:#a14b27; }
.dv-contact h1,.dv-contact h2,.dv-contact h3 { font-family:Inter,sans-serif; text-transform:none; }
.dv-contact-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:32px; }
.dv-contact-portrait { position:relative; overflow:hidden; border-radius:120px 120px 8px 8px; background:#b79270; }
.dv-contact-portrait img { width:100%; height:auto; display:block; }
.dv-contact-portrait>span { position:absolute; bottom:0; left:0; right:0; padding:28px 15px 16px; color:#fff; font-size:8px; font-weight:600; letter-spacing:.12em; background:linear-gradient(transparent,rgba(0,0,0,.7)); text-align:center; }
.dv-contact-eyebrow { font-size:9px; line-height:1.7; font-weight:700; letter-spacing:.15em; color:#794324; margin:0 0 14px; }
.dv-contact-intro h1 { font-size:clamp(32px,6vw,44px); font-weight:700; line-height:1.08; letter-spacing:-.06em; margin:0 0 22px; }
.dv-contact-intro h1>span { display:block; font-size:22px; font-weight:400; line-height:1.3; letter-spacing:-.025em; margin-top:20px; }
.dv-contact-intro>p:not(.dv-contact-eyebrow) { font-size:13px; line-height:1.8; color:#62564b; margin-bottom:22px; }
.dv-contact-button { display:flex; align-items:center; gap:12px; min-height:64px; padding:16px 19px; border:1px solid #cec4b8; border-radius:12px; font-size:14px; font-weight:600; transition:background .15s; }
.dv-contact-button>svg:last-child { margin-left:auto; flex-shrink:0; }
.dv-contact-button:hover { background:#e6ddd1; }
.dv-contact-primary { background:#29231e; color:#fff7ed; border-color:#29231e; }
.dv-contact-primary:hover { background:#47392d; }
.dv-contact-intro>small { display:block; font-size:10px; line-height:1.6; color:#6b5c50; margin:10px 2px 0; }
.dv-contact-actions { display:grid; gap:12px; padding:32px 0 42px; }
.dv-contact-button small { display:block; font-size:11px; color:#6b5c50; font-weight:400; margin-top:4px; }
.dv-contact-secondary { display:flex; justify-content:center; gap:30px; }
.dv-contact-secondary a { display:flex; gap:8px; align-items:center; font-size:12px; min-height:44px; }
.dv-contact-projects { border-top:1px solid #d7cdbf; padding-top:36px; }
.dv-contact h2 { font-size:34px; font-weight:500; letter-spacing:-.045em; line-height:1.12; margin-bottom:16px; }
.dv-contact-section-note { font-size:13px; line-height:1.7; color:#62564b; margin-bottom:26px; }
.dv-contact-project { background:#f9f5ef; padding:25px; border-radius:14px; border:1px solid #e2d9cd; margin-bottom:12px; }
.dv-contact-project h3 { font-size:21px; font-weight:600; letter-spacing:-.035em; margin-bottom:12px; }
.dv-contact-project>p:not(.dv-contact-eyebrow) { font-size:13px; line-height:1.75; color:#62564b; }
.dv-contact-project .dv-contact-evidence { border-left:2px solid #ae8263; padding-left:12px; margin-top:16px; font-size:11px!important; }
.dv-contact-project>a { display:inline-flex; align-items:center; gap:9px; min-height:44px; font-size:12px; font-weight:600; margin-top:12px; }
.dv-contact-videos { display:grid; gap:8px; margin-top:16px; }
.dv-contact-videos a { display:flex; justify-content:space-between; gap:12px; align-items:center; min-height:48px; padding:12px; border:1px solid #d7cdbf; border-radius:8px; font-size:12px; font-weight:600; }
.dv-contact-offers { padding-top:32px; }
.dv-contact-offers article { border-bottom:1px solid #d7cdbf; padding:24px 0; }
.dv-contact-offers h3 { font-size:20px; font-weight:500; line-height:1.35; margin-bottom:12px; }
.dv-contact-offers article p { font-size:13px; line-height:1.8; color:#62564b; }
.dv-contact-offers article a { display:flex; align-items:center; gap:9px; font-size:12px; font-weight:600; min-height:48px; }
.dv-contact-offers>.dv-contact-section-note { margin-top:20px; font-size:11px; }
.dv-contact-social { padding:35px 0 25px; }
.dv-contact-social>div { display:flex; gap:12px; }
.dv-contact-social a { display:flex; align-items:center; justify-content:center; gap:9px; border:1px solid #cec4b8; border-radius:10px; padding:14px; font-size:12px; flex:1; }
.dv-contact-footer { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #d7cdbf; padding-top:20px; font-size:10px; color:#62564b; }
.dv-contact-footer a { display:flex; align-items:center; gap:6px; }
@media(max-width:560px) { .dv-contact { padding-inline:20px; } .dv-contact-top { padding:20px 0; } .dv-contact-hero { display:flex; flex-direction:column; gap:20px; } .dv-contact-portrait { width:100%; max-width:200px; border-radius:100px 100px 8px 8px; } .dv-contact-portrait img { aspect-ratio:4/4.3; object-fit:cover; object-position:center 22%; } .dv-contact-portrait>span { font-size:6px; padding-inline:5px; } .dv-contact-intro { width:100%; } .dv-contact-intro h1 { font-size:38px; margin-bottom:14px; } .dv-contact-intro h1>span { font-size:22px; margin-top:12px; } .dv-contact-intro h1>span br { display:none; } .dv-contact-intro>p:not(.dv-contact-eyebrow) { font-size:13px; line-height:1.7; margin-bottom:17px; } .dv-contact-actions { padding-top:16px; } .dv-contact-project { padding:20px; } }
@media(max-width:360px) { .dv-contact { padding-inline:16px; } .dv-contact-top { font-size:8px; } .dv-contact-button { font-size:13px; padding-inline:14px; } .dv-contact-intro h1 { font-size:34px; } .dv-contact-footer { flex-direction:column; gap:12px; } }
@media(prefers-reduced-motion:reduce) { .dv-contact-button { transition:none; } }

/* Identidad DanteMVP: editorial oscura, cobre/naranja y movimiento ligero. */
.dv-contact-process,.dv-contact-brief { margin-top:44px; padding-top:30px; border-top:1px solid #ffffff1c; }
.dv-contact-process ol { padding:0; list-style:none; counter-reset:steps; }
.dv-contact-process li { counter-increment:steps; display:grid; grid-template-columns:32px 1fr; gap:7px 12px; margin:23px 0; }
.dv-contact-process li::before { content:"0" counter(steps); color:#ff985f; grid-row:span 2; font-size:13px; padding-top:3px; }
.dv-contact-process li span,.dv-contact-brief>p:not(.dv-contact-eyebrow) { color:#bfb4a9; line-height:1.65; font-size:14px; }
.dv-contact-brief { scroll-margin-top:24px; }
.dv-contact-brief form { background:#ffffff04; border:1px solid #ffffff20; border-radius:16px; padding:24px; margin-top:22px; }
.dv-contact-brief label { display:block; font-size:14px; font-weight:600; margin:18px 0 9px; }
.dv-contact-brief label:first-child { margin-top:0; }
.dv-contact-brief select,.dv-contact-brief textarea { display:block; width:100%; box-sizing:border-box; font:inherit; font-size:16px; color:#fff5eb; background:#20201e; border:1px solid #ffffff40; border-radius:9px; padding:13px; }
.dv-contact-brief textarea { resize:vertical; }
.dv-contact-brief form p { font-size:12px; color:#bfb4a9; line-height:1.6; }
.dv-contact-brief form .dv-contact-button { width:100%; box-sizing:border-box; justify-content:space-between; cursor:pointer; margin-top:15px; font:inherit; font-size:14px; }
.dv-contact-brief [hidden] { display:none!important; }
.dv-contact-brief button:disabled { opacity:.5; cursor:not-allowed; }
.dv-contact-brief :is(select,textarea,button):focus-visible { outline:2px solid #ff985f; outline-offset:4px; }
.dv-contact-brief-agenda { display:flex; gap:10px; color:#ff985f; font-size:13px; line-height:1.5; margin-top:20px; }
.dv-contact-result { margin:22px 0; padding:18px; border-left:3px solid #ff763f; background:#ff763f0d; }
.dv-contact-result strong { display:block; color:#ff985f; font-size:42px; letter-spacing:-.05em; }
.dv-contact-result span { display:block; font-size:16px; }
.dv-contact-result small { display:block; color:#bfb4a9; font-size:11px; line-height:1.6; margin-top:9px; }
.dv-case-video { width:100%; min-width:0; }
.dv-video-trigger { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#ff763f12; color:#ff985f; border:1px solid #ff763f66; border-radius:9px; padding:14px; width:100%; font:inherit; font-size:13px; cursor:pointer; transition:background .2s; }
.dv-video-trigger:hover { background:#ff763f25; }
.dv-video-trigger:focus-visible { outline:2px solid #ff985f; outline-offset:3px; }
.dv-video-trigger:disabled { opacity:.5; cursor:not-allowed; }
.dv-case-player { width:100%; max-width:320px; aspect-ratio:9/16; margin:12px auto; background:#090909; border-radius:12px; overflow:hidden; }
.dv-case-player-wide { max-width:none; aspect-ratio:16/9; min-height:200px; }
.dv-case-player iframe { border:0; width:100%; height:100%; }
.dv-case-player[hidden] { display:none; }
.dv-contact { color:#f5f0e9; background-color:#121211; background-image:radial-gradient(ellipse at 95% 0%,#b34d192e,transparent 38%),linear-gradient(125deg,transparent 48.8%,#ffffff05 49%,transparent 49.2%),repeating-linear-gradient(90deg,#ffffff03 0 1px,transparent 1px 80px); }
.dv-contact-top { border-bottom:1px solid #ffffff1c; margin-bottom:28px; color:#c5bab0; }
.dv-contact-top>a { color:#fff9f1; font-size:23px; }
.dv-contact-top>a span { color:#ff763f; }
.dv-contact-portrait { border-radius:14px; box-shadow:10px 10px 0 -1px #ff763f,0 24px 65px #0005; transform:rotate(-2deg); border:1px solid #f3d4ba55; }
.dv-contact-portrait img { filter:contrast(1.03); }
.dv-contact-portrait>span { letter-spacing:.18em; padding-bottom:20px; }
.dv-contact-eyebrow { color:#ff985f; font-size:9px; }
.dv-contact-intro h1 { font-weight:800; letter-spacing:-.055em; }
.dv-contact-intro h1>span { color:#d9c6b4; font-weight:500; }
.dv-contact-intro>p:not(.dv-contact-eyebrow),.dv-contact-section-note { color:#bfb4a9; }
.dv-contact-intro>small { color:#a89d92; }
.dv-contact-button { position:relative; overflow:hidden; background:#ffffff06; border-color:#ffffff25; border-radius:13px; min-height:68px; transition:transform .2s,border-color .2s,background .2s,box-shadow .2s; }
.dv-contact-button>svg { color:#ff985f; }
.dv-contact-button:hover { transform:translateY(-3px); background:#ffffff0d; border-color:#ff763f99; box-shadow:0 10px 30px #0003; }
.dv-contact-button:active { transform:scale(.98); }
.dv-contact-button small { color:#b8aa9e; }
.dv-contact .dv-contact-primary { background:linear-gradient(110deg,#ff763f,#e35b22); border-color:#ff985f; color:#16100d; box-shadow:0 6px 25px #fb692526; font-weight:800; }
.dv-contact-primary>svg { color:#16100d; }
.dv-contact-primary::before { content:""; position:absolute; top:-50%; bottom:-50%; width:35%; left:-55%; background:linear-gradient(90deg,transparent,#fff7,transparent); transform:skewX(-20deg); transition:left .65s; }
.dv-contact-primary:hover::before { left:130%; }
.dv-contact-primary:hover { background:linear-gradient(110deg,#ff925f,#f47739); }
.dv-contact-secondary { border-bottom:1px solid #ffffff18; padding-bottom:14px; }
.dv-contact-secondary a { color:#cbbdb0; }
.dv-contact-secondary a:hover { color:#ff985f; }
.dv-contact-projects { border-color:#ffffff1c; }
.dv-contact h2 { font-weight:600; font-size:36px; }
.dv-contact-project { position:relative; overflow:hidden; background:linear-gradient(130deg,#24211e,#181817); border-color:#ffffff1b; border-radius:16px; padding:30px; transition:border-color .2s,transform .2s; }
.dv-contact-project:hover { border-color:#b96b42; transform:translateY(-2px); }
.dv-contact-project-number { position:absolute; right:17px; top:12px; font-size:55px; font-weight:800; letter-spacing:-.08em; color:#ffffff06; line-height:1; pointer-events:none; }
.dv-contact-project h3 { font-size:24px; color:#fff5eb; position:relative; }
.dv-contact-project>.dv-contact-eyebrow { max-width:85%; }
.dv-contact-project>p:not(.dv-contact-eyebrow) { color:#bdb0a3; }
.dv-contact-project>a { color:#ff985f; }
.dv-contact-videos a { background:#ffffff05; border-color:#ffffff23; transition:background .2s,border-color .2s; }
.dv-contact-videos a:hover { background:#ffffff0c; border-color:#ff763f; }
.dv-contact-videos a::before { content:"▶"; color:#ff985f; font-size:12px; }
.dv-contact-offers article { border-color:#ffffff1c; }
.dv-contact-offers article p { color:#bdb0a3; }
.dv-contact-offers article a { color:#ff985f; }
.dv-contact-social a { background:#ffffff06; border-color:#ffffff25; transition:transform .2s,border-color .2s; }
.dv-contact-social a:hover { transform:translateY(-2px); border-color:#ff763f; }
.dv-contact-footer { border-color:#ffffff1c; color:#a99b8d; }
.dv-contact a:focus-visible { outline-color:#ff985f; }
@media(max-width:560px) { .dv-contact-top { margin-bottom:25px; padding-block:19px; } .dv-contact-portrait { max-width:175px; margin-bottom:6px; } .dv-contact-intro h1 { font-size:39px; } .dv-contact-intro h1>span { font-size:21px; line-height:1.25; } .dv-contact-project { padding:24px; } .dv-contact h2 { font-size:31px; } }
@media(prefers-reduced-motion:reduce) { .dv-contact-button,.dv-contact-primary::before,.dv-contact-project,.dv-contact-videos a,.dv-contact-social a { transition:none; } .dv-contact-button:hover,.dv-contact-button:active,.dv-contact-project:hover,.dv-contact-social a:hover { transform:none; } }

/* Apertura de marca y portafolio visual, sin simular series de analítica. */
.dv-tools { margin-top:44px; padding-top:30px; border-top:1px solid #ffffff1c; }
.dv-tools-hint { color:#bfb4a9; font-size:11px; line-height:1.65; }
.dv-tools-track { display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; padding:10px 2px 20px; scrollbar-color:#ff985f #24211e; }
.dv-tools-track:focus-visible { outline:2px solid #ff985f; outline-offset:4px; }
.dv-tool { flex:0 0 min(350px,85%); min-width:0; scroll-snap-align:start; background:#201e1b; border:1px solid #ffffff25; border-radius:16px; overflow:hidden; }
.dv-tool>.dv-contact-eyebrow,.dv-tool>h3,.dv-tool>p:not(.dv-contact-eyebrow),.dv-tool>a { margin-inline:22px; }
.dv-tool>.dv-contact-eyebrow { margin-top:24px; }
.dv-tool h3 { font-size:22px; line-height:1.2; min-height:54px; }
.dv-tool>p:not(.dv-contact-eyebrow) { font-size:13px; line-height:1.7; color:#bfb4a9; }
.dv-tool>a { display:flex; align-items:center; justify-content:space-between; color:#ff985f; font-size:12px; margin-block:22px; gap:8px; }
.dv-tool-screen { position:relative; border-bottom:1px solid #ffffff20; background:radial-gradient(ellipse at 80% 80%,#d5672633,transparent 60%),#101313; }
.dv-tool-chrome { display:flex; gap:5px; align-items:center; padding:13px; background:#ffffff06; }
.dv-tool-chrome>i { width:5px; height:5px; border-radius:50%; background:#ff985f99; }
.dv-tool-chrome>span { font-size:9px; color:#a99b8d; margin-left:10px; }
.dv-tool-canvas { height:210px; position:relative; padding:20px; }
.dv-tool-symbol { position:absolute; right:10px; top:0; color:#ffffff07; font-size:100px; font-weight:800; }
.dv-tool-diagram { position:relative; display:grid; gap:13px; }
.dv-tool-node { display:flex; align-items:center; gap:10px; border:1px solid #ff985f38; border-radius:7px; padding:10px; background:#24211eee; font-size:11px; }
.dv-tool-node b { color:#ff985f; font-size:10px; border:1px solid #ff985f55; padding:3px 6px; border-radius:4px; }
.dv-tool-node>i { margin-left:auto; width:6px; height:6px; border-radius:50%; background:#79ab90; }
.dv-tool-stamp { position:absolute; bottom:10px; right:15px; color:#9f9488; font-size:7px; letter-spacing:.18em; }
.dv-tool-funnel .dv-tool-node:nth-child(2) { margin-inline:15px; }.dv-tool-funnel .dv-tool-node:nth-child(3) { margin-inline:30px; }
.dv-tool-crm .dv-tool-diagram { grid-template-columns:repeat(3,1fr); }.dv-tool-crm .dv-tool-node { flex-direction:column; height:132px; justify-content:center; padding:7px; }.dv-tool-crm .dv-tool-node>i { margin:0; }
.dv-tool-edit .dv-tool-node { border-left:7px solid #ff985f; }.dv-tool-edit .dv-tool-node:nth-child(2) { margin-left:20px; border-left-color:#79ab90; }.dv-tool-edit .dv-tool-node:nth-child(3) { margin-left:40px; }
.dv-tool-loyalty .dv-tool-node { border-radius:25px; }.dv-tool-loyalty .dv-tool-node b { border-radius:50%; }
@media(max-width:560px) { .dv-tool { flex-basis:88%; }.dv-tool h3 { font-size:20px; } }
.dv-contact-intro h1 { font-size:40px; line-height:1.09; letter-spacing:-.055em; }
.dv-contact-intro h1>span { font-size:inherit; color:#ff985f; font-weight:800; margin-top:0; }
.dv-contact-intro>.dv-contact-remate { color:#fff5eb!important; font-weight:650; line-height:1.35!important; font-size:19px!important; margin:18px 0; }
.dv-contact-media-notice { font-size:11px; color:#a99b8e; line-height:1.6; }
.dv-contact-project-description { margin-top:20px; }
.dv-contact-result { position:relative; padding:22px; background:radial-gradient(ellipse at 90% 20%,#ff763f29,transparent 70%),#ff763f0b; border-radius:0 12px 12px 0; }
.dv-contact-result>svg { position:absolute; right:18px; top:22px; color:#ff985f; }
.dv-contact-result strong { font-size:60px; padding-right:34px; }
.dv-video-cover { position:relative; display:block; padding:0; max-width:320px; margin:0 auto; aspect-ratio:9/16; overflow:hidden; border-radius:14px; background:#111; }
.dv-video-cover>img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.dv-video-cover:hover>img { transform:scale(1.035); }
.dv-video-cover::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 60%,#000c); pointer-events:none; }
.dv-video-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:1; display:grid; place-items:center; width:62px; height:62px; border-radius:50%; background:#ff763f; color:#18120d; box-shadow:0 8px 30px #0005; }
.dv-video-caption { position:absolute; left:16px; right:16px; bottom:16px; z-index:1; display:flex; justify-content:space-between; color:#fff; }
.dv-video-cover-wide { max-width:none; aspect-ratio:16/9; }
.dv-case-video>[hidden] { display:none!important; }
.dv-video-cover:disabled { opacity:1; }
.dv-case-video>a { margin-top:10px; }
.dv-site-preview { margin:20px 0; border:1px solid #ffffff25; border-radius:12px; overflow:hidden; background:#111; }
.dv-site-preview-bar { display:flex; gap:5px; align-items:center; padding:10px 12px; background:#ffffff08; }
.dv-site-preview-bar i { width:6px; height:6px; border-radius:50%; background:#ff985f80; }
.dv-site-preview-bar span { color:#bfb4a9; font-size:10px; margin:auto; padding-right:26px; }
.dv-site-preview img { display:block; width:100%; height:auto; }
.dv-site-preview figcaption { padding:10px 12px; font-size:10px; color:#bfb4a9; line-height:1.5; }
@media(min-width:560px) { .dv-project-bianca .dv-contact-videos { grid-template-columns:1fr 1fr; align-items:start; } }
@media(max-width:560px) { .dv-contact-portrait { max-width:135px; } .dv-contact-intro h1 { font-size:34px; } .dv-contact-intro h1>span { font-size:inherit; line-height:inherit; } .dv-contact-intro>.dv-contact-remate { font-size:17px!important; } .dv-contact-project { padding:20px; } .dv-contact-result strong { font-size:53px; } }
@media(prefers-reduced-motion:reduce) { .dv-video-cover>img { transition:none; } .dv-video-cover:hover>img { transform:none; } }
