/*!
 * Site · Sobre mí, Preguntas frecuentes y Contacto
 */

/* ═════════════ Sobre mí · hero ═════════════ */
.mbs-about-hero__grid{display:grid;gap:32px;padding-top:24px}
.mbs-about-hero__title{margin-top:10px;font-size:clamp(46px,13vw,96px);line-height:.95;letter-spacing:-.04em}
.mbs-about-hero__lead{max-width:40ch;margin-top:18px;font:300 clamp(19px,4.6vw,24px)/1.4 var(--font-display);letter-spacing:-.01em;color:var(--ink-2);text-wrap:pretty}
.mbs-about-hero .mbs-chips{margin-top:20px}
.mbs-about-hero__ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.mbs-about-hero__ctas .mbs-btn{flex:1 1 160px}
.mbs-socials--hero{margin-top:22px}
.mbs-about-hero__photo{position:relative;margin:0;align-self:start}
.mbs-about-hero__photo>img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid #000;border-radius:var(--r-l);background:var(--surface)}
.mbs-about-hero__seal{position:absolute;right:-6px;bottom:22px;margin:0}
.mbs-about-hero__seal .mbs-sticker{position:static}
@media (min-width:900px){.mbs-about-hero__seal{right:-28px;bottom:30px}}
.mbs-sticker{position:absolute;right:-6px;bottom:22px;display:flex;align-items:center;gap:8px;padding:10px 14px 10px 10px;border:1px solid #000;border-radius:999px;background:var(--accent);font:600 12px/1.15 var(--font-body);transform:rotate(-4deg);box-shadow:0 10px 24px rgba(0,0,0,.12)}
.mbs-sticker .mbs-icon{width:26px;height:26px}
@media (min-width:900px){
  .mbs-about-hero__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center;padding-top:40px}
  .mbs-about-hero__ctas .mbs-btn{flex:none}
  .mbs-sticker{right:-18px;bottom:36px}
}

/* Bio */
.mbs-bio{display:grid;gap:18px}
.mbs-bio__title{font-size:clamp(30px,7vw,44px);letter-spacing:-.025em}
.mbs-bio__text{display:grid;gap:16px;max-width:66ch;font-size:17px;line-height:1.65;color:var(--ink-2)}
.mbs-bio__first{font-size:19px;color:var(--ink)}
@media (min-width:900px){.mbs-bio{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:48px}}

/* Reconocimientos */
.mbs-awards{display:grid;gap:12px}
@media (min-width:900px){.mbs-awards{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mbs-award{display:flex;gap:16px;padding:22px;border-radius:var(--r-l);background:var(--surface)}
.mbs-award>.mbs-icon{width:32px;height:32px;flex:none}
.mbs-award h3{font-size:19px}
.mbs-award p{margin-top:6px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}

/* ═════════════ Preguntas frecuentes ═════════════ */
.mbs-faq-tools{display:grid;gap:14px;margin-top:26px}
.mbs-search{position:relative;display:block;max-width:560px}
.mbs-search .mbs-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--ink-3)}
.mbs-search input{width:100%;height:52px;padding:0 18px 0 46px;border:1.5px solid var(--line-2);border-radius:999px;background:#fff;font:400 16px var(--font-body);color:var(--ink);transition:border-color 160ms ease}
.mbs-search input:focus{outline:none;border-color:var(--ink)}
.mbs-faq-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--gutter)*-1);padding:2px var(--gutter)}
.mbs-faq-chips::-webkit-scrollbar{display:none}

.mbs-faq-layout{display:grid;gap:40px;margin-top:36px}
@media (min-width:1000px){.mbs-faq-layout{grid-template-columns:minmax(0,1fr) 320px;gap:56px;align-items:start}}
.mbs-faq-group+.mbs-faq-group{margin-top:40px}
.mbs-faq-group__title{margin-bottom:6px;font:500 12px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.mbs-qa{border-bottom:1px solid var(--line)}
.mbs-qa__q{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 0;cursor:pointer;list-style:none;font:500 clamp(18px,4.4vw,21px)/1.3 var(--font-display);letter-spacing:-.012em}
.mbs-qa__q::-webkit-details-marker{display:none}
.mbs-qa__ico{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:var(--surface);transition:transform 220ms var(--ease-out),background-color 160ms ease}
.mbs-qa__ico .mbs-icon{width:16px;height:16px}
.mbs-qa[open] .mbs-qa__ico{transform:rotate(45deg);background:var(--accent)}
.mbs-qa__a{padding:0 0 22px;max-width:68ch;font-size:16px;line-height:1.65;color:var(--ink-2)}
.mbs-qa[open] .mbs-qa__a{animation:mbs-rise 260ms var(--ease-out)}
.mbs-qa__a a{color:var(--ink);text-decoration-color:var(--line-2);text-underline-offset:3px}
.mbs-qa__a .mbs-ev{margin:14px 0}
@media (hover:hover) and (pointer:fine){.mbs-qa__q:hover .mbs-qa__ico{background:var(--surface-2)}.mbs-qa[open] .mbs-qa__q:hover .mbs-qa__ico{background:var(--accent-hover)}}
.mbs-faq-empty{padding:24px;border-radius:var(--r-m);background:var(--surface);color:var(--ink-2)}
.mbs-faq-empty a{color:var(--ink)}
.mbs-qa.is-hidden,.mbs-faq-group.is-hidden{display:none}

.mbs-faq-aside{display:grid;gap:14px}
@media (min-width:1000px){.mbs-faq-aside{position:sticky;top:96px}}
.mbs-help{display:grid;gap:8px;padding:24px;border-radius:var(--r-l);background:var(--surface)}
.mbs-help__ico{display:grid;place-items:center;width:44px;height:44px;margin-bottom:4px;border-radius:50%;background:var(--accent)}
.mbs-help__title{font-size:22px}
.mbs-help p{color:var(--ink-2);font-size:15px;margin-bottom:8px}
.mbs-mini{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--r-l)}
.mbs-mini__media{position:relative;display:block;aspect-ratio:4/5;border-radius:var(--r-s);background:var(--surface)}
.mbs-mini__media img{position:absolute;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);max-width:none;object-fit:contain;mix-blend-mode:multiply}
.mbs-mini__body{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.mbs-mini__title{font:500 18px/1.2 var(--font-display);text-decoration:none}
.mbs-mini__price{font-size:14px;font-weight:600;margin-bottom:6px}
.mbs-mini__price del{font-weight:400;color:var(--ink-3);margin-right:6px}
.mbs-mini__price ins{text-decoration:none}

/* ═════════════ Contacto ═════════════ */
.mbs-contact{display:grid;gap:20px;margin-top:32px}
@media (min-width:1000px){.mbs-contact{grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}}
.mbs-formcard{padding:24px 20px;border:1px solid var(--line);border-radius:var(--r-l);background:#fff;scroll-margin-top:90px}
@media (min-width:640px){.mbs-formcard{padding:36px}}
.mbs-formcard__title{font-size:26px;margin-bottom:22px}
.mbs-form{display:grid;gap:18px}
.mbs-form__row{display:grid;gap:18px}
@media (min-width:640px){.mbs-form__row{grid-template-columns:1fr 1fr}}
.mbs-field{display:grid;gap:7px;margin:0;padding:0;border:0;min-width:0}
.mbs-field>label,.mbs-field>legend{font-size:14px;font-weight:500;color:var(--ink)}
.mbs-field>legend{margin-bottom:9px;padding:0}
.mbs-field :is(input:not([type=radio]),textarea){width:100%;min-height:52px;padding:14px 16px;border:1.5px solid var(--line-2);border-radius:var(--r-m);background:#fff;font:400 16px/1.4 var(--font-body);color:var(--ink);transition:border-color 160ms ease,box-shadow 160ms ease}
.mbs-field textarea{min-height:150px;resize:vertical}
.mbs-field :is(input:not([type=radio]),textarea):focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(10,10,10,.06)}
.mbs-field.is-invalid :is(input:not([type=radio]),textarea){border-color:#b3261e}
.mbs-field__err{min-height:0;font-size:13px;color:#b3261e}
.mbs-field__err:empty{display:none}
.mbs-reasons__list{display:flex;flex-wrap:wrap;gap:8px}
.mbs-opt{position:relative;cursor:pointer}
.mbs-opt input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.mbs-opt span{display:inline-flex;align-items:center;min-height:40px;padding:0 15px;border:1.5px solid var(--line-2);border-radius:999px;font-size:14px;color:var(--ink-2);transition:border-color 160ms ease,background-color 160ms ease,color 160ms ease,transform 160ms var(--ease-out)}
.mbs-opt:active span{transform:scale(.96)}
.mbs-opt input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.mbs-opt input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}
@media (hover:hover) and (pointer:fine){.mbs-opt:hover input:not(:checked)+span{border-color:var(--ink);color:var(--ink)}}
.mbs-form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:4px}
.mbs-form__foot .mbs-btn{flex:1 1 220px}
@media (min-width:640px){.mbs-form__foot .mbs-btn{flex:none}}
.mbs-form__note{font-size:13px;color:var(--ink-3)}
.mbs-form__alert{padding:12px 16px;border-left:3px solid #b3261e;border-radius:var(--r-s);background:#fbefee;font-size:14px}
.mbs-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.mbs-formcard__done{display:grid;justify-items:start;gap:10px;padding:8px 0;outline:none}
.mbs-formcard__done:not([hidden]){animation:mbs-rise 320ms var(--ease-out)}
.mbs-formcard__done h3{font-size:28px}
.mbs-formcard__done p{color:var(--ink-2);margin-bottom:8px}
.mbs-formcard__ok{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent)}
.mbs-formcard__ok .mbs-icon{width:26px;height:26px;stroke-width:2.4}
.mbs-formcard__ok .mbs-draw{stroke-dasharray:24;stroke-dashoffset:24;animation:mbs-draw 420ms var(--ease-out) 120ms forwards}

.mbs-contact__aside{display:grid;gap:12px}
.mbs-tile{display:grid;gap:10px;padding:22px;border-radius:var(--r-l);background:var(--surface);color:inherit;text-decoration:none}
.mbs-tile__ico{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff}
.mbs-tile__title{font-size:20px}
.mbs-tile__mail{font-size:16px;font-weight:500;word-break:break-all;color:var(--ink)}
.mbs-tile .mbs-ev{margin:0}
.mbs-tile .mbs-link{justify-self:start}
.mbs-tile--link{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;font-size:14.5px;color:var(--ink-2);transition:transform 160ms var(--ease-out)}
.mbs-tile--link strong{color:var(--ink);font-weight:500}
.mbs-tile--link:active{transform:scale(.985)}
.mbs-tile--link>.mbs-icon{transition:transform 200ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){.mbs-tile--link:hover>.mbs-icon{transform:translateX(3px)}}
.mbs-tile .mbs-socials--grid a{background:#fff;border-color:transparent}

/* ═════════════ Franja "El mapa de los pueblos" (Despoblados) ═════════════ */
.mbs-mapa{--d-ink:#0D0C11;--d-bone:#E7E1D5;--d-dim:#C9C1B3;--d-blood:#C82424;position:relative;display:grid;overflow:hidden;min-height:380px;border-radius:var(--r-l);background:radial-gradient(120% 90% at 80% 20%,#1c1b23 0%,var(--d-ink) 62%);color:var(--d-bone);isolation:isolate}
.mbs-mapa__art{position:absolute;inset:0;z-index:-1}
.mbs-mapa__art svg{position:absolute;inset:0;width:100%;height:100%}
.mbs-mapa__art path{fill:none;stroke:var(--d-dim);stroke-width:1.2;stroke-dasharray:4 6;vector-effect:non-scaling-stroke;opacity:.32}
.mbs-mapa__pin{position:absolute;display:flex;align-items:center;gap:8px;transform:translate(-6px,-50%);font-size:12px;letter-spacing:.04em;color:var(--d-dim);white-space:nowrap}
.mbs-mapa__pin i{position:relative;width:9px;height:9px;border-radius:50%;background:var(--d-bone)}
.mbs-mapa__pin i::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid currentColor;opacity:0;animation:mbs-mapa-ping 2.8s var(--ease-out) infinite;animation-delay:var(--d,0ms)}
.mbs-mapa__pin.is-main{color:#E24B4B}
.mbs-mapa__pin.is-main i{width:13px;height:13px;background:var(--d-blood);box-shadow:0 0 0 4px rgba(200,36,36,.22)}
.mbs-mapa__pin>span{display:none}
@keyframes mbs-mapa-ping{0%{opacity:.7;transform:scale(.6)}70%,100%{opacity:0;transform:scale(1.8)}}
@media (min-width:900px){.mbs-mapa__pin>span{display:inline}}
.mbs-mapa__copy{display:grid;align-content:end;justify-items:start;gap:12px;padding:150px 22px 28px;background:linear-gradient(0deg,rgba(13,12,17,.92) 40%,rgba(13,12,17,0))}
.mbs-mapa__eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--d-dim)}
.mbs-mapa__tag{padding:4px 9px;border-radius:999px;background:var(--d-blood);color:#fff;letter-spacing:.06em}
.mbs-mapa__title{font-size:clamp(30px,7vw,46px);line-height:1.04;letter-spacing:-.025em;color:var(--d-bone);text-wrap:balance}
.mbs-mapa__text{max-width:48ch;font-size:16px;line-height:1.55;color:var(--d-dim)}
.mbs-mapa__towns{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}
.mbs-mapa__towns li{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border:1px solid rgba(231,225,213,.22);border-radius:999px;font-size:13px;color:var(--d-bone)}
.mbs-mapa__towns .mbs-icon{width:14px;height:14px;color:var(--d-dim)}
.mbs-mapa__towns li:first-child{border-color:rgba(200,36,36,.6)}
.mbs-mapa__towns li:first-child .mbs-icon{color:#E24B4B}
.mbs-mapa__cta .mbs-icon{transition:transform 200ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){.mbs-mapa__cta:hover .mbs-icon{transform:translateX(3px)}}
@media (min-width:900px){
  .mbs-mapa{min-height:440px}
  .mbs-mapa__copy{align-content:center;max-width:60%;padding:48px 52px;background:linear-gradient(90deg,rgba(13,12,17,.95) 55%,rgba(13,12,17,0))}
}
@media (prefers-reduced-motion:reduce){.mbs-mapa__pin i::after{animation:none}}
