/* Candidate 0.2: content layout shared by static preview and future native runtime. */
figure { margin: 0; }
h1,h2,h3,h4,h5,h6 { text-wrap: balance; line-height: 1.18; letter-spacing: -.025em; }
h1 { font-size: clamp(2rem, 4.5vw, 3.6rem); }
h2 { font-size: clamp(1.55rem, 2.7vw, 2.35rem); }
p { margin-block: 0 1.1em; }
ul,ol { padding-left: 1.35em; }
a { color: #a70c20; }
.dn-section--dark a { color: #fff; }
.dn-section--dark .dn-button { color: #fff; }
.dn-section--dark h2 { color: #fff; }
.dn-hero__copy h1 { max-width: 12ch; margin-top: 0; }
.dn-hero-lead p { font-size: clamp(1.22rem,2vw,1.55rem); color: #f2f3f3; max-width: 26ch; }
.dn-hero-label { margin-top: 1.9rem; color: #d4dbdf; font-size: .87rem; }
.dn-hero-label p { margin-bottom: .6rem; }
.dn-hero-phone { margin-top: .85rem; font-weight: 750; }
.dn-hero-phone p { margin-bottom: 0; }
.dn-hero .wp-block-button a { text-decoration: none; }
.dn-new-media img { display: block; width: 100%; height: auto; }
.dn-hero__media { aspect-ratio: 16/10; align-self:center; }
.dn-hero__media figure { height: 100%; }
.dn-hero__media img { object-position: 52% center; }
.dn-hero__media .dn-new-media img { height:100%; }
.wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-height:48px; padding:.78rem 1.25rem; border:2px solid #087f43; border-radius:.7rem; background:#087f43; color:#fff; font-size:.95rem; font-weight:800; line-height:1.2; text-align:center; text-decoration:none; }
.dn-hero-actions .wp-block-button__link::before { content:''; display:inline-block; width:24px; height:24px; background:url('../images/whatsapp.svg') center / contain no-repeat; }
.dn-intro { grid-template-columns: 1.4fr .6fr; align-items: center; }
.dn-source-brand { max-width: 260px; justify-self: center; }
.dn-source-brand img { display:block; }
.dn-intro h2 { margin-top: 0; }
.dn-prose a { overflow-wrap: anywhere; }
.dn-minifletes { background: #102b40; }
.dn-minifletes h2 { margin-top: 0; }
.dn-minifletes .dn-subtitle p { font-size: 1.2rem; color: #d8e7ee; }
.dn-vehicle-media { align-self: center; min-width:0; }
.dn-vehicle-media .dn-new-media { margin-bottom: 2rem; }
.dn-indexed-mini { max-width: 200px; margin: 0 auto; }
.dn-indexed-mini img { border-radius: 14px; }
.dn-account { align-items: center; }
.dn-account h2 { margin-top: 0; }
.dn-feature-image { max-width: 410px; justify-self: center; }
.dn-feature-image img { display:block; border-radius: 16px; }
.dn-information-grid { gap: 1.5rem; }
.dn-card-media { float: right; width: 125px; margin: 0 0 1rem 1.25rem; }
.dn-card-media img { display:block; border-radius: 10px; }
.dn-information-card h2 { font-size: 1.6rem; }
.dn-information-card p:last-child { margin-bottom: 0; }
.dn-page-heading { background: #eef0eb; padding-block: 3.8rem; border-bottom: 1px solid #d8dfe1; }
.dn-page-heading h1 { max-width: 25ch; margin: 0; }
.dn-page-heading .dn-container { border-left: 5px solid #cb1428; padding-left: 1.6rem; }
.dn-service-list { padding-top: 2.5rem; }
.dn-card-number { display: block; margin-bottom: 1.5rem; color: #cb1428; font-size: .9rem; font-weight: 850; letter-spacing: .1em; }
.dn-service-card h2 { margin-top: 0; }
.dn-service-card p { font-size: 1rem; }
.dn-section-end { margin-top: 2rem; text-align: center; }
.dn-centered-prose { margin-inline: auto; }
.dn-contact-aside { padding-top: .5rem; }
.dn-contact-aside h2 { font-size: 2rem; }
.dn-field { display: grid; gap: .4rem; margin-bottom: 1.2rem; }
.dn-field label { font-weight: 700; font-size: .93rem; }
.dn-field input,.dn-field textarea { width: 100%; border: 1px solid #8c9da5; border-radius: .5rem; padding: .75rem; background: #fff; color: #14202c; min-height: 48px; }
.dn-field textarea { resize: vertical; }
.dn-form-status { margin: 1rem 0 0; font-weight: 700; }
.dn-legal details { padding: 1.25rem 0; border-bottom: 1px solid #bac5c9; }
.dn-legal summary { font-size: 1.08rem; font-weight: 750; cursor: pointer; padding-right: 1rem; }
.dn-legal details[open] summary { margin-bottom: 1.2rem; }
.dn-legal table { border-collapse: collapse; width: 100%; }
.dn-legal td { border: 1px solid #bac5c9; padding:.5rem; }
.dn-price-image h2 { margin-top: 0; }
.dn-price-image img { width: 100%; height:auto; }
.dn-sticky-media { position: sticky; top: 24px; }
.dn-sticky-media > .wp-block-image { max-width: 310px; margin: auto; }
.dn-thanks { min-height: 55vh; display: flex; align-items: center; }
.dn-preview-note { padding: .35rem 1rem; background: #e2e8df; color: #344535; text-align:center; font-size:.7rem; line-height:1.5; }
.dn-floating-whatsapp { position:fixed; bottom:24px; right:24px; display:grid; place-items:center; width:58px; height:58px; border:3px solid white; border-radius:50%; background:#087f43; box-shadow:0 5px 20px #0003; z-index:30; }
.dn-back-to-top{position:fixed;bottom:96px;right:28px;z-index:29;display:grid;place-items:center;width:50px;height:50px;border:1px solid #cbd8d8;border-radius:50%;background:#fff;color:#172832;font:700 25px/1 system-ui;box-shadow:0 5px 20px #0002;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.dn-back-to-top.is-visible{opacity:1;visibility:visible;transform:none}
.dn-back-to-top:focus-visible{outline:3px solid #b32d3f;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.dn-back-to-top{transition:none}}
.dn-preview-toast { position:fixed; bottom:94px; right:20px; width:min(330px,calc(100% - 40px)); padding:1rem; background:#fff; border:2px solid #087f43; border-radius:12px; box-shadow:0 8px 20px #0002; z-index:40; font-size:.9rem; }
.dn-preview-toast[hidden] { display:none; }
@media(max-width:780px) {
  .dn-hero__copy { order:0; }
  .dn-hero__media { order:1; aspect-ratio:16/9; }
  .dn-hero__copy h1 { max-width:14ch; font-size:clamp(2.2rem,8.7vw,3.2rem); }
  .dn-hero { padding-block:2rem; }
  .dn-hero__grid { gap:1.7rem; }
  .dn-hero-label { margin-top:1.3rem; }
  .dn-hero-actions .wp-block-button__link { width:100%; }
  .dn-intro { grid-template-columns:1fr; }
  .dn-source-brand { max-width:190px; }
  .dn-section { padding-block:2.8rem; }
  .dn-page-heading { padding-block:2.5rem; }
  .dn-page-heading .dn-container { padding-left:1rem; }
  .dn-vehicle-media { width:100%; }
  .dn-sticky-media { position:static; }
  .dn-information-card h2 { font-size:1.4rem; }
  .dn-card-media { width:88px; margin-left:.8rem; }
  .dn-floating-whatsapp { right:18px; bottom:18px; }
  .dn-back-to-top{right:22px;bottom:88px}
  .dn-footer__contact { padding-bottom:3.5rem; }
}
