/* Servicios: maquetación en código según diseño (lienzo 1024px) */
.sv-page { background:#fff; --or:#b0651b; --gold:#b3812f; --navy:#15233f; --sans:'Inter',-apple-system,sans-serif; --ser:'Playfair Display',Georgia,serif; --cor:'Cormorant Garamond',Georgia,serif;}
.sv-page main > section, .sv-page .sf { container-type:inline-size; position:relative; width:100%; overflow:hidden;}
.sv-page main > section > *, .sv-page .sf > * { margin:0;}
.sv-page .eb { display:flex; align-items:center; font:500 0.918cqw/1 var(--sans); letter-spacing:.28em; text-transform:uppercase; color:#5a6580;}
.sv-page .eb i { display:block; width:3.711cqw; height:0.156cqw; min-height:1px; background:var(--gold); margin-right:1.660cqw;}
.sv-page .sh > *, .sv-page .sv > *, .sv-page .sc > * { position:absolute;}
/* HERO */
.sh { aspect-ratio:1024/487; background:var(--img-sv-hero-bg) center/100% 100% no-repeat;}
.sh-rule { left:3.711cqw; top:4.688cqw; width:3.320cqw; height:0.195cqw; min-height:1px; background:#d08a2a;}
.sh-eb { left:8.789cqw; top:4.004cqw; font:400 0.938cqw/1.660cqw var(--sans); letter-spacing:.3em; text-transform:uppercase; color:#4e5a78; white-space:nowrap;}
.sh-h1 { left:4.590cqw; top:8.789cqw; font:500 4.180cqw/3.906cqw var(--ser); text-transform:uppercase; color:#15172a; white-space:nowrap;}
.sh-h1 span { display:block;}
.sh-lead { left:4.590cqw; top:21.582cqw; font:300 1.543cqw/1.953cqw var(--sans); color:#3f4a66; white-space:nowrap;}
.sh-q { left:77.246cqw; top:20.020cqw; font:italic 500 1.758cqw/2.148cqw var(--cor); color:#1c2b45; white-space:nowrap;}
.sh-q cite { display:block; font:500 0.957cqw/1 var(--sans); font-style:normal; letter-spacing:.32em; text-transform:uppercase; margin:1.074cqw 0 0 0.586cqw; color:#1c2b45;}
.sh-qr { position:absolute; left:0.586cqw; top:12.109cqw; width:3.320cqw; height:0.156cqw; background:#d08a2a;}
.sh-st { display:flex; align-items:center; gap:1.172cqw; top:40.137cqw; height:4.492cqw;}
.sh-st:nth-of-type(2) { left:3.906cqw;} .sh-st:nth-of-type(3) { left:16.113cqw;} .sh-st:nth-of-type(4) { left:30.078cqw;}
.sh-d { display:grid; place-items:center; width:4.297cqw; height:4.297cqw; border-radius:50%; background:#fff; color:var(--or); box-shadow:0 1px 4px rgba(0,0,0,.08);}
.sh-d svg { width:2.930cqw; height:2.930cqw;}
.sh-st p { font:400 1.045cqw/1.514cqw var(--sans); color:#2b3556; white-space:nowrap;}
/* SERVICIOS */
.sv { aspect-ratio:1024/317; background:#fff;}
.sv .eb i { display:none;}
.sv .eb { left:4.688cqw; top:1.367cqw;}
.sv h2 { left:4.492cqw; top:2.734cqw; font:500 2.500cqw/2.734cqw var(--ser); text-transform:uppercase; color:var(--navy); white-space:nowrap;}
.sv-all { right:4.883cqw; top:3.320cqw; display:flex; align-items:center; gap:0.879cqw; font:400 1.074cqw/1 var(--sans); color:#7a4f22; text-decoration:underline; text-underline-offset:3px;}
.sv-all svg { width:1.367cqw; height:1.367cqw; color:var(--or);}
.sv-g { left:0; right:0; top:6.836cqw; height:22.559cqw;}
.sv-c { position:absolute; top:0; height:22.559cqw; background:#fff; border-radius:0.293cqw; box-shadow:0 1px 5px rgba(60,40,20,.10); overflow:hidden; text-decoration:none; color:inherit;}
.sv-c:nth-child(1) { left:4.004cqw; width:14.844cqw;} .sv-c:nth-child(2) { left:19.531cqw; width:14.746cqw;} .sv-c:nth-child(3) { left:34.961cqw; width:14.746cqw;} .sv-c:nth-child(4) { left:50.391cqw; width:14.746cqw;} .sv-c:nth-child(5) { left:65.723cqw; width:14.844cqw;} .sv-c:nth-child(6) { left:81.250cqw; width:14.844cqw;}
.sv-c img { display:block; width:100%; height:7.129cqw; object-fit:cover;}
.sv-ic { position:absolute; left:1.465cqw; top:8.496cqw; width:3.125cqw; height:3.125cqw; border-radius:50%; background:#fcefdf; color:var(--or); display:grid; place-items:center;}
.sv-ic svg { width:2.441cqw; height:2.441cqw;}
.sv-c h3 { position:absolute; left:1.465cqw; top:12.109cqw; font:600 1.172cqw/1.562cqw var(--ser); text-transform:uppercase; color:var(--navy); white-space:nowrap;}
.sv-c p { position:absolute; left:1.465cqw; top:15.723cqw; font:400 1.055cqw/1.504cqw var(--sans); color:#5f6b86; white-space:nowrap;}
.sv-go { position:absolute; left:50%; bottom:0.781cqw; width:2.930cqw; height:2.930cqw; margin-left:-0.977cqw; border-radius:50%; background:#fcefdf; color:#15233f; display:grid; place-items:center;}
.sv-go svg { width:1.367cqw; height:1.367cqw;}
/* INSPIRACION */
.si { aspect-ratio:1024/273; display:grid; grid-template-columns:50.977cqw 1fr; background:#fff;}
.si-t { position:relative;} .si-t > * { position:absolute;}
.si-t .eb { left:4.297cqw; top:1.074cqw;}
.si-t h2 { left:4.297cqw; top:1.953cqw; font:600 4.297cqw/4.492cqw var(--cor); font-variant:small-caps; letter-spacing:.015em; color:#12182b; white-space:nowrap;}
.si-t p { left:4.297cqw; top:6.543cqw; font:400 1.162cqw/1.689cqw var(--sans); color:#3f4a66; white-space:nowrap;}
.si-i { position:relative; margin:0.293cqw 0 0; height:26.270cqw; background-size:100% 100%; background-repeat:no-repeat;}
.si-i > div { position:absolute; left:33.105cqw; display:flex; align-items:center; gap:1.367cqw;}
.si-i > div:nth-child(1) { top:1.270cqw;} .si-i > div:nth-child(2) { top:6.152cqw;} .si-i > div:nth-child(3) { top:11.230cqw;}
.si-i span { width:3.516cqw; height:3.516cqw; color:#efd083;} .si-i svg { width:100%; height:100%;}
.si-i p { font:500 1.016cqw/1.367cqw var(--sans); letter-spacing:.09em; text-transform:uppercase; color:#f3dca2; white-space:nowrap;}
/* VALOR */
.sw { aspect-ratio:1024/155; display:grid; grid-template-columns:21.680cqw 24.805cqw 24.219cqw 1fr; padding-left:3.906cqw; background:#fff;}
.sw > div { position:relative; text-align:center; padding-top:0.391cqw;}
.sw > div + div::before { content:''; position:absolute; left:0; top:1.172cqw; bottom:0.977cqw; width:1px; background:#ece6de;}
.sw > div > span { display:block; width:5.859cqw; height:5.859cqw; margin:0 auto 0.098cqw; color:var(--or);} .sw svg { width:100%; height:100%;}
.sw h3 { font:500 1.436cqw/1.758cqw var(--ser); text-transform:uppercase; color:#15233f; white-space:nowrap; margin-bottom:0.488cqw;}
.sw p { font:400 1.108cqw/1.533cqw var(--sans); color:#5f6b86; white-space:nowrap;}
/* CTA */
.sc { aspect-ratio:1024/138; background:#2a2a2a center/100% 100% no-repeat;}
.sc-bar { left:4.688cqw; top:1.367cqw; width:0.195cqw; height:10.547cqw; background:#d3a02f;}
.sc-eb { left:7.422cqw; top:2.344cqw; font:400 0.977cqw/1 var(--sans); letter-spacing:.17em; text-transform:uppercase; color:#fff;}
.sc h2 { left:7.324cqw; top:2.930cqw; font:600 4.443cqw/4.492cqw var(--cor); font-variant:small-caps; letter-spacing:.015em; color:#fff; white-space:nowrap;}
.sc p { left:7.422cqw; top:8.105cqw; font:400 1.328cqw/1.855cqw var(--sans); color:#fff; white-space:nowrap;}
.sc-btn { left:73.535cqw; top:6.445cqw; width:21.875cqw; height:3.516cqw; display:flex; align-items:center; justify-content:center; gap:1.758cqw; border:1.5px solid rgba(255,255,255,.9); border-radius:0.293cqw; background:rgba(30,26,22,.72); color:#fff; text-decoration:none; font:600 0.938cqw/1 var(--sans); letter-spacing:.1em; text-transform:uppercase;}
.sc-btn svg { width:1.465cqw; height:1.465cqw;}
/* PIE */
.sf { aspect-ratio:1024/100; background:#fbfaf8;}
.sf > * { position:absolute;}
.sf-logo { left:4.980cqw; top:2.344cqw; text-decoration:none; display:block;}
.sf-logo .n { display:block; font:500 2.510cqw/2.539cqw var(--ser); color:#141a2e; letter-spacing:.03em;}
.sf-logo .t { display:block; font:400 0.781cqw/1.074cqw var(--sans); color:#4e5a78; letter-spacing:.18em; text-transform:uppercase; margin-top:0.195cqw;}
.sf-logo i { display:block; width:3.027cqw; height:0.195cqw; background:#d08a2a; margin-top:0.977cqw;}
.sf-c { left:25.391cqw; width:45.898cqw; top:2.539cqw; text-align:center;}
.sf-c em { display:block; font:italic 500 1.465cqw/1.953cqw var(--cor); color:#1c2b45; margin-bottom:1.172cqw;}
.sf-c span { display:block; font:400 0.938cqw/1 var(--sans); letter-spacing:.3em; text-transform:uppercase; color:#c46b12; white-space:nowrap;}
.sf-c b { font-weight:400; padding:0 .3em;}
.sf-sep { left:72.461cqw; top:1.855cqw; height:5.664cqw; width:1px; background:#e6dfd6;}
.sf-r { left:74.707cqw; right:4.492cqw; top:2.734cqw; display:flex; align-items:center; gap:1.172cqw; text-decoration:none; color:#1c2b45;}
.sf-ic { width:2.344cqw; height:2.344cqw; color:var(--or); flex:none;} .sf-ic svg { width:100%; height:100%;}
.sf-r div { flex:1;}
.sf-r strong { display:block; font:500 0.938cqw/1.367cqw var(--sans); letter-spacing:.03em; text-transform:uppercase;}
.sf-r small { display:block; font:400 0.898cqw/1.367cqw var(--sans); color:#5f6b86;}
.sf-r > svg { width:1.562cqw; height:1.562cqw; color:var(--or); flex:none;}
/* MÓVIL */
@media (max-width:760px) {
  .sv-page main > section, .sv-page .sf { aspect-ratio:auto; container-type:normal; height:auto;}
  .sv-page br.bd { display:none;}
  .sv-page .eb { font-size:11px; margin-bottom:10px;} .sv-page .eb i { width:30px; margin-right:12px;}
  .sh { padding:26px 22px 0; background:#fff; display:flex; flex-direction:column; min-height:0;}
  .sh::after { content:''; display:block; order:9; aspect-ratio:1024/487; margin:18px -22px 0; background:var(--img-sv-hero-bg) center/100% 100% no-repeat;}
  .sh > * { position:static !important; white-space:normal !important;}
  .sh-rule, .sh-q { display:none;}
  .sh-eb { font-size:11px; line-height:18px; margin-bottom:14px;}
  .sh-h1 { font-size:36px; line-height:40px; margin-bottom:14px;}
  .sh-lead { font-size:17px; line-height:24px; max-width:340px; margin-bottom:18px;}
  .sh-st, .sh-st:nth-of-type(n) { display:flex !important; left:auto; margin:0 0 10px; height:auto;}
  .sh-d { width:40px; height:40px; box-shadow:0 1px 4px rgba(0,0,0,.12);} .sh-d svg { width:24px; height:24px;} .sh-st p { font-size:13px; line-height:17px;}
  .sv { padding:26px 22px;} .sv > * { position:static !important;}
  .sv h2 { font-size:23px; line-height:29px; white-space:normal; margin-bottom:10px;}
  .sv-all { display:inline-flex; font-size:14px; margin-bottom:16px;}
  .sv-g { display:grid; grid-template-columns:1fr 1fr; gap:12px; height:auto;}
  .sv-c, .sv-c:nth-child(n) { position:relative; left:auto; width:auto; height:auto; padding-bottom:50px;}
  .sv-c img { height:80px;}
  .sv-ic { position:static; margin:12px 0 0 14px; width:34px; height:34px;} .sv-ic svg { width:21px; height:21px;}
  .sv-c h3, .sv-c p { position:static; display:block; margin:8px 14px 0; white-space:normal;}
  .sv-c h3 { font-size:12.5px; line-height:16px;} .sv-c p { font-size:12.5px; line-height:17px;}
  .sv-go { width:30px; height:30px; margin-left:-15px; bottom:12px;} .sv-go svg { width:15px; height:15px;} .sv-all svg { width:15px; height:15px;}
  .si { grid-template-columns:1fr;}
  .si-t { padding:26px 22px;} .si-t > * { position:static !important; white-space:normal !important;}
  .si-t h2 { font-size:32px; line-height:36px; margin-bottom:14px;} .si-t p { font-size:14.5px; line-height:22px;}
  .si-i { margin:0; height:auto; min-height:300px; background-size:cover; background-position:left center; padding:24px 22px;}
  .si-i { background-image:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,.2) 80%),var(--img-sv-ins-bg) !important; background-size:100% 100%,cover !important; background-position:0 0,left center !important;}
  .si-i > div { position:static !important; margin-bottom:18px;} .si-i span { width:34px; height:34px;} .si-i p { font-size:12px; line-height:17px;}
  .sw { grid-template-columns:1fr; padding:20px 22px;}
  .sw > div { padding:18px 0;} .sw > div + div::before { left:0; right:0; top:0; bottom:auto; width:auto; height:1px;}
  .sw > div > span { width:48px; height:48px;} .sw h3 { font-size:15px; line-height:20px; white-space:normal;}
  .sw p { font-size:14px; line-height:21px; white-space:normal;}
  .sc { padding:28px 22px 28px 34px; background-size:cover; background-position:60% center;}
  .sc::before { content:''; position:absolute; inset:0; background:rgba(15,12,10,.55);}
  .sc > * { position:relative !important; left:auto !important; top:auto !important; z-index:1; white-space:normal !important;}
  .sc-bar { position:absolute !important; left:22px !important; top:24px !important; bottom:24px; height:auto;}
  .sc-eb { font-size:11px; margin-bottom:8px;} .sc h2 { font-size:34px; line-height:38px; margin-bottom:10px;} .sc p { font-size:15px; line-height:22px; margin-bottom:18px;}
  .sc-btn { width:100%; height:48px; font-size:12px;} .sc-btn svg { width:16px; height:16px;}
  .sf { padding:24px 22px; text-align:center;} .sf > * { position:static !important;}
  .sf-logo { margin-bottom:16px;} .sf-logo i { margin:10px auto 0;}
  .sf-logo .n { font-size:26px; line-height:30px;} .sf-logo .t { font-size:9px; line-height:12px;}
  .sf-c { width:auto; margin-bottom:16px;} .sf-c em { font-size:17px; line-height:22px;} .sf-c span { font-size:9.5px; line-height:15px; white-space:normal; letter-spacing:.2em;}
  .sf-sep { display:none;}
  .sf-r { justify-content:center; text-align:left; gap:12px; display:inline-flex !important;} .sf-r strong { font-size:11px; line-height:16px;} .sf-r small { font-size:11px; line-height:16px;}
  .sf-ic { width:28px; height:28px;} .sf-r > svg { width:16px; height:16px;} .sf-r div { flex:none;}
}
