:root {
  --bg:#0a0a0a;
  --text:#f4f2ed;
  --muted:#86837d;
  --line:rgba(244,242,237,.16);
  --soft:#151515;
}

* {
  box-sizing:border-box;
}

html,
body {
  margin:0;
  min-height:100%;
}

body {
  color:var(--text);
  background:var(--bg);

  font-family:
    Arial,
    Helvetica,
    sans-serif;

  -webkit-font-smoothing:antialiased;
}

button,
input,
textarea {
  font:inherit;
}

button {
  cursor:pointer;
}

[hidden] {
  display:none !important;
}

.nav,
main,
footer {
  width:min(1120px,calc(100% - 48px));
  margin:auto;
}

.nav {
  height:88px;

  display:flex;
  align-items:center;

  border-bottom:1px solid var(--line);
}

.logo {
  font-size:29px;
  font-weight:800;
  letter-spacing:-.07em;
}

.nav-right {
  margin-left:auto;

  display:flex;
  align-items:center;

  gap:8px;

  color:var(--muted);
  font-size:11px;
}

.status-dot {
  width:6px;
  height:6px;

  border-radius:50%;

  background:#68df9d;

  box-shadow:
    0 0 10px rgba(104,223,157,.5);
}

.quote-view {
  padding:72px 0 82px;
}

.kicker,
.section-label {
  margin-bottom:19px;

  color:var(--muted);

  font-size:10px;
  font-weight:700;

  letter-spacing:.16em;
}

.intro h1 {
  max-width:850px;

  margin:0;

  font-size:
    clamp(48px,7vw,86px);

  line-height:.94;

  font-weight:500;

  letter-spacing:-.06em;
}

.intro h1 span {
  display:block;

  color:#77736d;
}

.intro p {
  max-width:520px;

  margin:25px 0 53px;

  color:var(--muted);

  font-size:15px;
  line-height:1.65;
}

.services {
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  border-top:1px solid var(--line);
}

.services button {
  position:relative;

  min-height:155px;

  padding:25px 60px 25px 0;

  border:0;
  border-bottom:1px solid var(--line);

  color:var(--text);

  background:transparent;

  text-align:left;
}

.services button:nth-child(odd) {
  border-right:1px solid var(--line);
}

.services button:nth-child(even) {
  padding-left:30px;
}

.services span {
  display:block;

  margin-bottom:28px;

  color:#696660;

  font-size:10px;
}

.services strong {
  display:block;

  margin-bottom:8px;

  font-size:21px;
  font-weight:500;

  letter-spacing:-.025em;
}

.services small {
  color:var(--muted);

  font-size:12px;
}

.services b {
  position:absolute;

  top:25px;
  right:19px;

  font-size:20px;
  font-weight:400;

  transition:transform .2s ease;
}

.services button:hover {
  background:#111;
}

.services button:hover b {
  transform:
    translate(4px,-4px);
}

.back {
  padding:0;

  border:0;

  color:var(--muted);
  background:transparent;

  font-size:11px;
}

.details-layout {
  display:grid;

  grid-template-columns:
    .85fr 1.15fr;

  gap:90px;

  margin-top:55px;
}

.details-copy h2,
.result-view h2 {
  margin:0;

  font-size:
    clamp(40px,5vw,65px);

  line-height:.98;

  font-weight:500;

  letter-spacing:-.055em;
}

.details-copy p {
  max-width:360px;

  margin:22px 0;

  color:var(--muted);

  font-size:13px;
  line-height:1.65;
}

.selected {
  display:inline-block;

  margin-top:10px;

  padding:9px 12px;

  border:1px solid var(--line);

  color:#c9c6bf;

  font-size:11px;
}

#quote-form {
  display:grid;
  gap:27px;
}

#quote-form label {
  display:grid;
  gap:9px;
}

#quote-form label span {
  color:var(--muted);

  font-size:10px;

  letter-spacing:.1em;
  text-transform:uppercase;
}

input,
textarea {
  width:100%;

  padding:13px 0;

  border:0;
  border-bottom:1px solid var(--line);

  outline:0;

  border-radius:0;

  color:var(--text);
  background:transparent;
}

input {
  font-size:19px;
}

textarea {
  min-height:100px;

  resize:none;

  font-size:19px;
  line-height:1.45;
}

input::placeholder,
textarea::placeholder {
  color:#484641;
}

input:focus,
textarea:focus {
  border-color:#ddd9d1;
}

.two {
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:30px;
}

details {
  border-bottom:1px solid var(--line);
}

summary {
  display:flex;
  justify-content:space-between;

  padding:15px 0;

  list-style:none;

  color:var(--muted);

  cursor:pointer;

  font-size:11px;
}

summary::-webkit-details-marker {
  display:none;
}

.extra {
  padding:10px 0 24px;
}

.form-status {
  min-height:17px;

  margin:0;

  color:#d99999;

  font-size:11px;
}

.quote-submit,
.primary {
  min-height:55px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  padding:0 20px;

  border:0;

  color:#0a0a0a;
  background:#f4f2ed;

  text-decoration:none;

  font-weight:700;
  font-size:12px;
}

.quote-submit:hover,
.primary:hover {
  background:#dcd9d2;
}

.quote-submit:disabled {
  opacity:.55;
}

.result-view {
  max-width:900px;
}

.result-summary {
  max-width:650px;

  margin:22px 0 38px;

  color:var(--muted);

  line-height:1.7;
}

.price-box {
  margin:0 0 50px;

  border-top:1px solid var(--line);
}

.price-row {
  min-height:60px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  border-bottom:1px solid var(--line);

  color:var(--muted);

  font-size:12px;
}

.price-row strong {
  color:var(--text);

  font-size:18px;
  font-weight:500;
}

.price-row.highlight strong {
  font-size:27px;
}

.result-grid {
  display:grid;

  grid-template-columns:
    1fr 1fr;

  gap:70px;

  margin-bottom:50px;
}

.result-grid ul {
  margin:0;
  padding-left:18px;

  color:var(--muted);

  font-size:12px;
  line-height:1.9;
}

#opportunity {
  margin:0;

  color:var(--muted);

  font-size:12px;
  line-height:1.7;
}

.result-actions {
  display:flex;
  align-items:center;

  gap:24px;

  border-top:1px solid var(--line);

  padding-top:30px;
}

.primary {
  min-width:260px;
}

.secondary {
  padding:13px 0;

  border:0;

  color:var(--muted);
  background:transparent;

  font-size:11px;
}

footer {
  padding:22px 0 35px;

  border-top:1px solid var(--line);

  color:#55524d;

  font-size:9px;

  letter-spacing:.15em;
}

@media(max-width:720px) {

  .nav,
  main,
  footer {
    width:calc(100% - 34px);
  }

  .quote-view {
    padding:50px 0 60px;
  }

  .intro h1 {
    font-size:49px;
  }

  .services {
    grid-template-columns:1fr;
  }

  .services button:nth-child(odd),
  .services button:nth-child(even) {
    min-height:125px;

    padding:
      20px 50px 20px 0;

    border-right:0;
  }

  .services span {
    margin-bottom:19px;
  }

  .details-layout {
    grid-template-columns:1fr;

    gap:50px;

    margin-top:40px;
  }

  .two,
  .result-grid {
    grid-template-columns:1fr;
  }

  .result-grid {
    gap:40px;
  }

  .result-actions {
    flex-direction:column;

    align-items:stretch;
  }

  .primary {
    min-width:0;
  }
}


/* ========================================
   DIGIARTIFY QUICK QUOTE v0.7
======================================== */

.language {
  margin-left: 10px;

  min-width: 39px;
  height: 32px;

  border: 1px solid var(--line);

  color: var(--text);
  background: transparent;

  font-size: 10px;
  font-weight: 700;

  letter-spacing: .08em;

  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease;
}

.language:hover {
  color: var(--bg);
  background: var(--text);
  border-color: var(--text);
}


.unsure {
  width: 100%;

  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 19px 0;

  border: 0;
  border-bottom: 1px solid var(--line);

  background: transparent;
  color: var(--muted);

  font-size: 11px;

  text-align: left;
}

.unsure:hover {
  color: var(--text);
}


.trust-row {
  margin-top: -8px;

  color: #5f5c57;

  font-size: 9px;
  letter-spacing: .04em;
}


.loading-view {
  min-height: 570px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  max-width: 760px;
}


.loading-mark {
  margin-bottom: 55px;

  font-size: 27px;
  font-weight: 800;

  letter-spacing: -.07em;
}


.loading-view h2 {
  max-width: 650px;

  margin: 0;

  font-size:
    clamp(46px, 6vw, 72px);

  line-height: .98;

  font-weight: 500;

  letter-spacing: -.055em;
}


.loading-view p {
  max-width: 500px;

  margin: 22px 0 40px;

  color: var(--muted);

  line-height: 1.65;

  font-size: 13px;
}


.loader-line {
  height: 1px;
  width: 100%;

  overflow: hidden;

  background: var(--line);
}


.loader-line span {
  display: block;

  width: 35%;
  height: 100%;

  background: var(--text);

  animation:
    quoteLoading
    1.25s
    ease-in-out
    infinite;
}


@keyframes quoteLoading {

  0% {
    transform:
      translateX(-120%);
  }

  100% {
    transform:
      translateX(390%);
  }
}


.result-meta {
  margin-top: -25px;
  margin-bottom: 35px;

  color: #55524d;

  font-size: 9px;

  letter-spacing: .1em;
}


.quote-submit b,
.primary b {
  font-weight: 400;
}


@media(max-width:720px) {

  .nav-right {
    gap: 6px;
  }

  #nav-label {
    display: none;
  }

  .language {
    margin-left: 3px;
  }

  .loading-view {
    min-height:
      calc(100vh - 150px);
  }
}

.language-toggle {
  min-width: 40px;
  height: 32px;
  margin-left: 7px;

  border: 1px solid var(--line);

  background: transparent;
  color: var(--text);

  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
}

.language-toggle:hover {
  background: var(--text);
  color: var(--bg);
}

.quote-submit:disabled {
  opacity: .55;
  cursor: wait;
}


/* =========================================
   DIGIARTIFY QUICK QUOTE — FINAL V0.8
========================================= */

#nav-label {
  white-space: nowrap;
}

.language-toggle {
  cursor: pointer;
  border-radius: 0;
  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease;
}

.selected {
  display: inline-flex;
  align-items: center;

  min-height: 29px;
  padding: 0 12px;

  border: 1px solid #292927;

  color: #8e8a83;

  font-size: 9px;
  font-weight: 600;
  letter-spacing: .12em;

  text-transform: uppercase;
}


.proposal-status {
  display: inline-flex;
  align-items: center;

  min-height: 34px;

  margin:
    8px 0
    24px;

  padding:
    0 14px;

  border: 1px solid #34322f;

  color: #8c8983;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: .08em;

  text-transform: uppercase;
}


.proposal-status.sent {
  color: #c9d9c6;
  border-color: #40543f;
}


.proposal-status.warning {
  color: #d5c5a6;
  border-color: #554d3d;
}


.price-row.highlight {
  background: #f1f0eb;
  color: #090909;

  padding-left: 18px;
  padding-right: 18px;
}


.result-actions .primary {
  transition:
    transform .2s ease,
    opacity .2s ease;
}


.result-actions .primary:hover {
  transform: translateY(-2px);
}


.services button {
  transition:
    background .22s ease,
    padding-left .22s ease;
}


.services button:hover {
  background: #0f0f0e;
}


.services button:hover strong {
  transform: translateX(3px);
}


.services button strong {
  transition:
    transform .22s ease;
}


input:focus,
textarea:focus {
  outline: none;

  border-color: #77736c !important;

  background: #0d0d0c;
}


@media(max-width:720px) {

  #nav-label {
    display: none;
  }

  .language-toggle {
    margin-left: 5px;
  }

  .proposal-status {
    width: 100%;

    box-sizing: border-box;

    justify-content: center;

    text-align: center;
  }

}


/* =========================================
   DIGIARTIFY QUICK QUOTE — FINAL V0.8
========================================= */

#nav-label {
  white-space: nowrap;
}

.language-toggle {
  cursor: pointer;
  border-radius: 0;
  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease;
}

.selected {
  display: inline-flex;
  align-items: center;

  min-height: 29px;
  padding: 0 12px;

  border: 1px solid #292927;

  color: #8e8a83;

  font-size: 9px;
  font-weight: 600;
  letter-spacing: .12em;

  text-transform: uppercase;
}


.proposal-status {
  display: inline-flex;
  align-items: center;

  min-height: 34px;

  margin:
    8px 0
    24px;

  padding:
    0 14px;

  border: 1px solid #34322f;

  color: #8c8983;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: .08em;

  text-transform: uppercase;
}


.proposal-status.sent {
  color: #c9d9c6;
  border-color: #40543f;
}


.proposal-status.warning {
  color: #d5c5a6;
  border-color: #554d3d;
}


.price-row.highlight {
  background: #f1f0eb;
  color: #090909;

  padding-left: 18px;
  padding-right: 18px;
}


.result-actions .primary {
  transition:
    transform .2s ease,
    opacity .2s ease;
}


.result-actions .primary:hover {
  transform: translateY(-2px);
}


.services button {
  transition:
    background .22s ease,
    padding-left .22s ease;
}


.services button:hover {
  background: #0f0f0e;
}


.services button:hover strong {
  transform: translateX(3px);
}


.services button strong {
  transition:
    transform .22s ease;
}


input:focus,
textarea:focus {
  outline: none;

  border-color: #77736c !important;

  background: #0d0d0c;
}


@media(max-width:720px) {

  #nav-label {
    display: none;
  }

  .language-toggle {
    margin-left: 5px;
  }

  .proposal-status {
    width: 100%;

    box-sizing: border-box;

    justify-content: center;

    text-align: center;
  }

}


/* =========================================
   DIGIARTIFY v0.8.1 — PREMIUM POLISH
========================================= */

body {
  background:
    radial-gradient(
      circle at 78% 18%,
      rgba(255,255,255,.025),
      transparent 31%
    ),
    #080808;
}


/* Hero */

.intro {
  position: relative;
}

.intro::before {
  content: "";

  position: absolute;

  top: 20px;
  right: 4%;

  width: 210px;
  height: 210px;

  border: 1px solid rgba(255,255,255,.035);

  border-radius: 50%;

  pointer-events: none;

  opacity: .8;
}


.intro h1 {
  text-wrap: balance;
}


.intro p {
  max-width: 620px;

  font-size: 13px;
  line-height: 1.7;

  color: #8d8983;
}


/* Service cards */

.services button {
  overflow: hidden;

  min-height: 154px;

  transition:
    background .25s ease,
    transform .25s ease,
    border-color .25s ease;
}


.services button::after {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 0;
  height: 1px;

  background: #eae8e2;

  transition:
    width .35s ease;
}


.services button:hover {
  background: #10100f;

  transform:
    translateY(-2px);
}


.services button:hover::after {
  width: 100%;
}


.services button b {
  transition:
    transform .25s ease;
}


.services button:hover b {
  transform:
    translate(4px,-4px);
}


.services button strong {
  font-weight: 500;

  letter-spacing: -.02em;
}


.services button small {
  line-height: 1.55;
}


/* Language button */

.language-toggle {
  backdrop-filter:
    blur(10px);

  -webkit-backdrop-filter:
    blur(10px);
}


/* Result */

.result-view h2 {
  text-wrap: balance;
}


.price-box {
  margin-top: 34px;
}


.price-row strong {
  letter-spacing: -.03em;
}


.proposal-status.sent {
  background:
    rgba(99,130,96,.08);
}


/* Mobile */

@media(max-width:720px) {

  .intro::before {
    display: none;
  }

  .services button {
    min-height: 130px;
  }

}


/* =============================================
   DIGIARTIFY v0.8.1 — AMBIENT MOTION
============================================= */

html,
body {
  min-height: 100%;
}


body {
  position: relative;

  background:
    #080808;

  overflow-x: hidden;
}


#ambient-bg {
  position: fixed;

  inset: 0;

  width: 100%;
  height: 100%;

  z-index: 0;

  pointer-events: none;

  opacity: .95;
}


body::before {
  content: "";

  position: fixed;

  inset: 0;

  z-index: 1;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(8,8,8,.94) 0%,
      rgba(8,8,8,.82) 38%,
      rgba(8,8,8,.56) 68%,
      rgba(8,8,8,.75) 100%
    ),
    linear-gradient(
      180deg,
      rgba(8,8,8,.22) 0%,
      rgba(8,8,8,.04) 45%,
      rgba(8,8,8,.62) 100%
    );
}


body > header,
body > main,
body > footer {
  position: relative;

  z-index: 2;
}


.nav {
  backdrop-filter:
    blur(7px);

  -webkit-backdrop-filter:
    blur(7px);
}


.services {
  background:
    rgba(8,8,8,.31);

  backdrop-filter:
    blur(5px);

  -webkit-backdrop-filter:
    blur(5px);
}


.services button {
  background:
    rgba(7,7,7,.42);
}


.services button:hover {
  background:
    rgba(20,19,17,.68);
}


.details-layout form,
.result-view {
  position: relative;
}


.details-layout form::before,
.result-view::before {
  content: "";

  position: absolute;

  inset: -28px;

  z-index: -1;

  background:
    rgba(8,8,8,.42);

  backdrop-filter:
    blur(8px);

  -webkit-backdrop-filter:
    blur(8px);

  pointer-events: none;
}


@media(max-width:720px) {

  #ambient-bg {
    opacity: .62;
  }

  body::before {
    background:
      rgba(8,8,8,.72);
  }

  .details-layout form::before,
  .result-view::before {
    inset: -14px;
  }

}


@media(
  prefers-reduced-motion: reduce
) {

  #ambient-bg {
    opacity: .52;
  }

}


/* ============================================
   VISUAL MESH OVERRIDE
   SOLO APARIENCIA — NO CAMBIA FUNCIONALIDAD
============================================ */


/* quitar círculo decorativo anterior */

.intro::before {
  display: none !important;
}


/* hacer visible la malla */

#ambient-bg {
  opacity: 1 !important;

  filter:
    contrast(1.1)
    brightness(1.12);
}


/* overlay menos agresivo */

body::before {
  background:
    linear-gradient(
      90deg,
      rgba(8,8,8,.91) 0%,
      rgba(8,8,8,.82) 28%,
      rgba(8,8,8,.45) 64%,
      rgba(8,8,8,.31) 100%
    ),
    linear-gradient(
      180deg,
      rgba(8,8,8,.14) 0%,
      rgba(8,8,8,.05) 45%,
      rgba(8,8,8,.48) 100%
    ) !important;
}


/* mantener hero perfectamente legible */

.intro {
  text-shadow:
    0 2px 30px
    rgba(0,0,0,.42);
}


/* cards ligeramente transparentes */

.services {
  background:
    rgba(7,7,7,.46) !important;

  backdrop-filter:
    blur(7px);

  -webkit-backdrop-filter:
    blur(7px);
}


.services button {
  background:
    rgba(8,8,8,.48) !important;
}


.services button:hover {
  background:
    rgba(18,17,15,.73) !important;
}


/* formulario */

.details-layout form::before {
  background:
    rgba(8,8,8,.64) !important;

  backdrop-filter:
    blur(13px);

  -webkit-backdrop-filter:
    blur(13px);
}


/* resultado */

.result-view::before {
  background:
    rgba(8,8,8,.69) !important;

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);
}


/* Mobile */

@media(max-width:720px) {

  #ambient-bg {
    opacity: .70 !important;

    filter:
      brightness(.92);
  }

  body::before {
    background:
      rgba(8,8,8,.63)
      !important;
  }

}


/* ==================================================
   DIGIARTIFY v0.8.3 — VISUAL SIGNATURE
   PREMIUM CINEMATIC LAYER
================================================== */

:root {
  --champagne: #d4bd97;
  --champagne-soft: #9f8969;
  --ivory: #f3f1eb;
  --black-premium: #070707;
}


/* Fondo */

#ambient-bg {
  opacity: 1 !important;

  filter:
    contrast(1.08)
    brightness(1.16)
    saturate(.88);
}


body::before {
  background:
    radial-gradient(
      circle at 73% 40%,
      rgba(8,8,8,.06) 0%,
      rgba(8,8,8,.18) 30%,
      rgba(8,8,8,.52) 74%,
      rgba(8,8,8,.73) 100%
    ),
    linear-gradient(
      90deg,
      rgba(7,7,7,.94) 0%,
      rgba(7,7,7,.82) 33%,
      rgba(7,7,7,.36) 69%,
      rgba(7,7,7,.20) 100%
    ) !important;
}


/* Header */

.nav {
  background:
    linear-gradient(
      180deg,
      rgba(7,7,7,.48),
      rgba(7,7,7,.14)
    );

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);
}


.logo {
  text-shadow:
    0 0 24px
    rgba(255,255,255,.06);
}


.status-dot {
  box-shadow:
    0 0 12px
    rgba(92,255,164,.55);
}


/* Hero */

.intro {
  position: relative;
}


.intro h1 {
  letter-spacing:
    -.055em;

  text-shadow:
    0 14px 50px
    rgba(0,0,0,.36);
}


.intro h1 span {
  background:
    linear-gradient(
      100deg,
      #77736d,
      #aaa49b 45%,
      #77736d
    );

  -webkit-background-clip:
    text;

  background-clip:
    text;

  color: transparent;
}


.kicker {
  letter-spacing:
    .24em;
}


.intro p {
  color:
    #9a958e;

  max-width:
    640px;
}


/* Cards */

.services {
  position: relative;

  overflow: hidden;

  background:
    rgba(7,7,7,.39)
    !important;

  border-top:
    1px solid
    rgba(255,255,255,.12);

  border-bottom:
    1px solid
    rgba(255,255,255,.12);

  backdrop-filter:
    blur(11px);

  -webkit-backdrop-filter:
    blur(11px);

  box-shadow:
    0 25px 80px
    rgba(0,0,0,.22);
}


.services::before {
  content: "";

  position: absolute;

  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,.018),
      transparent 35%,
      rgba(212,189,151,.025)
    );
}


.services button {
  position: relative;

  min-height:
    152px;

  background:
    rgba(7,7,7,.40)
    !important;

  transition:
    background .28s ease,
    transform .28s ease,
    box-shadow .28s ease;
}


.services button::before {
  content: "";

  position: absolute;

  inset: 0;

  opacity: 0;

  pointer-events: none;

  background:
    radial-gradient(
      circle at 82% 24%,
      rgba(212,189,151,.10),
      transparent 42%
    );

  transition:
    opacity .32s ease;
}


.services button:hover {
  z-index: 2;

  background:
    rgba(16,15,13,.68)
    !important;

  transform:
    translateY(-3px);

  box-shadow:
    0 22px 70px
    rgba(0,0,0,.30);
}


.services button:hover::before {
  opacity: 1;
}


.services button strong {
  position: relative;

  z-index: 2;

  font-weight: 500;

  letter-spacing:
    -.028em;
}


.services button small {
  position: relative;

  z-index: 2;

  color:
    #8f8b84;
}


.services button > span {
  color:
    #68645e;
}


.services button b {
  color:
    #cfc9bf;

  transition:
    color .25s ease,
    transform .25s ease;
}


.services button:hover b {
  color:
    var(--champagne);

  transform:
    translate(5px,-5px);
}


/* línea premium */

.services button::after {
  height: 1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      var(--champagne),
      transparent
    );

  box-shadow:
    0 0 12px
    rgba(212,189,151,.22);
}


/* Idioma */

.language-toggle {
  background:
    rgba(255,255,255,.018);

  border-color:
    rgba(255,255,255,.15);

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);
}


.language-toggle:hover {
  background:
    var(--ivory);

  color:
    #080808;
}


/* Formulario */

.details-layout form {
  position: relative;
}


.details-layout form::before {
  background:
    rgba(7,7,7,.72)
    !important;

  border:
    1px solid
    rgba(255,255,255,.055);

  backdrop-filter:
    blur(18px);

  -webkit-backdrop-filter:
    blur(18px);

  box-shadow:
    0 30px 110px
    rgba(0,0,0,.34);
}


input,
textarea {
  transition:
    border-color .2s ease,
    background .2s ease,
    box-shadow .2s ease;
}


input:focus,
textarea:focus {
  background:
    rgba(14,14,13,.82)
    !important;

  border-color:
    rgba(212,189,151,.54)
    !important;

  box-shadow:
    0 8px 30px
    rgba(0,0,0,.16);
}


/* Resultado */

.result-view::before {
  background:
    rgba(7,7,7,.75)
    !important;

  border:
    1px solid
    rgba(255,255,255,.055);

  backdrop-filter:
    blur(19px);

  -webkit-backdrop-filter:
    blur(19px);

  box-shadow:
    0 35px 130px
    rgba(0,0,0,.38);
}


.price-box {
  border-color:
    rgba(255,255,255,.13);
}


.price-row.highlight {
  background:
    linear-gradient(
      100deg,
      #f4f1ea,
      #e9e3d8
    );

  color:
    #080808;

  box-shadow:
    0 12px 36px
    rgba(0,0,0,.16);
}


.proposal-status.sent {
  background:
    rgba(106,140,101,.08);

  box-shadow:
    inset 0 0 25px
    rgba(106,140,101,.025);
}


/* WhatsApp CTA */

.result-actions .primary {
  position: relative;

  overflow: hidden;

  transition:
    transform .24s ease,
    box-shadow .24s ease;
}


.result-actions .primary::before {
  content: "";

  position: absolute;

  top: 0;
  left: -120%;

  width: 80%;
  height: 100%;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,.12),
      transparent
    );

  transform:
    skewX(-20deg);

  transition:
    left .65s ease;
}


.result-actions .primary:hover {
  transform:
    translateY(-3px);

  box-shadow:
    0 18px 45px
    rgba(0,0,0,.24);
}


.result-actions .primary:hover::before {
  left: 140%;
}


/* Footer */

footer {
  opacity: .78;

  backdrop-filter:
    blur(8px);

  -webkit-backdrop-filter:
    blur(8px);
}


/* móviles */

@media(max-width:720px) {

  #ambient-bg {
    opacity:
      .70 !important;

    filter:
      brightness(.92)
      contrast(1.04);
  }


  body::before {
    background:
      rgba(7,7,7,.67)
      !important;
  }


  .services {
    backdrop-filter:
      blur(7px);

    -webkit-backdrop-filter:
      blur(7px);
  }


  .services button {
    min-height:
      128px;
  }

}

.trust-strip {
  display: flex;
  align-items: center;
  gap: 18px;

  margin:
    34px 0
    28px;

  color:
    #817c74;

  font-size:
    8px;

  font-weight:
    600;

  letter-spacing:
    .19em;
}


.trust-strip i {
  width: 3px;
  height: 3px;

  border-radius:
    50%;

  background:
    #8e7b60;

  box-shadow:
    0 0 8px
    rgba(212,189,151,.22);
}


@media(max-width:720px) {

  .trust-strip {
    gap: 10px;

    font-size:
      7px;

    letter-spacing:
      .12em;

    flex-wrap:
      wrap;
  }

}
