:root{--bg:#F9F9F8;--ink:#1C1C1C;--muted:#62625E;--alternate:#EFEFEF;--line:#D7D7D1;--black:#000000;--white:#FFFFFF;--green:#25D366;--font:'DM Sans',sans-serif;--width:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:5px}[hidden]{display:none!important}.container{width:min(var(--width),calc(100% - 40px));margin-inline:auto}.section{padding-block:72px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;line-height:1.1;letter-spacing:-.055em}h1{font-size:clamp(46px,7.3vw,92px);margin-bottom:28px}h1>span{color:var(--muted)}h2{font-size:clamp(32px,4vw,48px);margin-block:20px 28px}h3{font-size:27px;letter-spacing:-.035em}p{color:var(--muted)}.eyebrow,.section-label>span{font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.8}.small-line{display:inline-block;width:28px;height:1px;background:var(--ink);vertical-align:middle;margin-right:10px}.header{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-block:20px}.brand{font-size:20px;font-weight:600;line-height:1.2;letter-spacing:-.04em;display:flex;gap:12px;align-items:center}.brand small{display:block;font-size:8px;letter-spacing:.16em;margin-top:7px;font-weight:500}.brand-mark{font-size:38px;letter-spacing:-.24em;border-right:1px solid var(--line);padding-right:23px}.brand-mark>span{position:relative;top:5px}.header nav{display:flex;flex-wrap:wrap;gap:18px;font-size:13px;width:100%}.header nav a{padding-block:9px}.header nav a:hover,.text-link:hover,.footer a:hover{color:var(--muted)}.menu-toggle{border:0;background:none;padding:12px 0 12px 12px;display:flex;gap:12px;align-items:center;font-size:12px;cursor:pointer}.menu-icon,.menu-icon:after{display:block;width:20px;height:1px;background:var(--ink)}.menu-icon:after{content:'';transform:translateY(6px)}.js .header nav{display:none}.js .header nav.is-open{display:flex;flex-direction:column}.hero{padding-top:48px}.hero>.eyebrow{margin-bottom:30px}.hero-layout{display:grid;gap:40px}.hero-description{max-width:470px;font-size:17px;line-height:1.75}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 22px;font-size:13px;font-weight:500;border:1px solid var(--black);cursor:pointer;transition:background .2s,color .2s}.primary{background:var(--black);color:var(--white)}.primary:hover{background:#323232}.button:disabled{cursor:wait;opacity:.65}.text-link{font-size:13px;font-weight:500;display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-block:8px}.hero-note{border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;justify-content:space-between;position:relative;background:#F2F2EE}.hero-note>p{font-size:27px;line-height:1.3;letter-spacing:-.035em;color:var(--ink);margin:24px 0}.hero-note strong{font-weight:500}.note-caption{font-size:8px;letter-spacing:.12em}.seal{width:110px;height:110px;border:1px solid #BDBDB4;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:51px;line-height:1;letter-spacing:-.13em;font-weight:400}.seal span{font-size:5px;letter-spacing:.05em;margin-top:10px}.hero-footer{display:flex;justify-content:space-between;gap:20px;padding-block:22px;margin-top:44px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.hero-footer a{color:var(--ink)}.hero-footer a span{margin-left:14px}.about,.faq{background:var(--alternate)}.split{display:grid;gap:32px}.section-label p{font-size:20px;line-height:1.4;margin-top:28px;letter-spacing:-.03em;color:var(--ink)}.about h2{margin-top:0}.lead{font-size:20px;color:var(--ink);line-height:1.6}.about .text-link{margin-top:10px}.section-heading{display:flex;flex-direction:column;gap:4px;margin-bottom:26px}.section-heading p{font-size:14px}.services-grid{display:grid}.service{padding:30px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.service-number{color:var(--muted);font-size:11px;margin-bottom:36px}.service h3{margin-bottom:20px;min-height:60px}.service p{font-size:14px;line-height:1.85;margin-bottom:0}.service-cta{padding:30px;background:var(--alternate)}.service-cta>.eyebrow{margin-bottom:32px;font-size:8px}.service-cta .text-link{margin-top:22px}.faq h2{margin-bottom:24px}.faq p{font-size:14px}.accordion{border-top:1px solid #CBCBC5}.accordion details{border-bottom:1px solid #CBCBC5}.accordion summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:22px;padding:24px 0;font-size:15px;font-weight:500;line-height:1.5}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:22px;font-weight:400;line-height:1}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{padding-right:26px;margin-bottom:26px;line-height:1.85}.contact-grid{display:grid;gap:38px}.contact-intro{font-size:16px;margin-bottom:28px}.contact-links{display:flex;align-items:flex-start;flex-direction:column;gap:12px}.whatsapp{background:transparent}.whatsapp:hover{background:var(--green);border-color:var(--green);color:var(--black)}.social-links{display:flex;gap:20px;font-size:12px;margin-top:24px}.social-links:has(a:not([hidden])){padding-top:8px}.contact-location{font-size:9px;letter-spacing:.1em;margin-top:36px}.form-heading{font-weight:500;font-size:16px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.form-heading span{display:block;font-weight:400;font-size:10px;color:var(--muted);margin-top:7px}.field{margin-bottom:20px;min-width:0}.field label{display:block;font-size:12px;margin-bottom:8px;font-weight:500}.field label span{color:var(--muted);font-weight:400}.field input,.field textarea{width:100%;border:1px solid var(--line);border-radius:0;color:var(--ink);background:transparent;padding:12px 14px;font-size:16px}.field textarea{resize:vertical;min-height:140px}.field input::placeholder,.field textarea::placeholder{color:#75756F;font-size:13px}.form-row{display:grid;gap:0}.privacy-note{font-size:11px;line-height:1.8;margin-bottom:22px}.submit{width:100%}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#form-status{font-size:13px;margin-top:16px}#form-status:empty{margin:0}#form-status[data-state=error]{color:#9A2525}.footer{border-top:1px solid var(--line);padding-block:30px}.footer-inner{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center}.footer .brand{display:block;font-size:18px}.footer p,.footer a:last-child{font-size:11px;margin:0}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:30;background:var(--black);color:white;padding:10px}.skip-link:focus{transform:none}.response-page{max-width:650px;margin:12vh auto;padding:30px}.response-page h1{font-size:40px}
@media(min-width:620px){.container{width:min(var(--width),calc(100% - 64px))}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px}.form-row{grid-template-columns:1fr 1fr;gap:20px}.hero-note{max-width:400px}.section{padding-block:88px}}
@media(min-width:960px){.header-inner{flex-wrap:nowrap;padding-block:24px}.header nav,.js .header nav,.js .header nav.is-open{display:flex;flex-direction:row;width:auto;align-items:center;gap:28px}.menu-toggle{display:none}.nav-contact{margin-left:14px}.nav-contact span{margin-left:20px}.hero{padding-top:66px}.hero>.eyebrow{margin-bottom:36px}.hero-layout{grid-template-columns:1fr 290px;align-items:center;gap:70px}.hero-note{min-height:350px;padding:32px}.hero-note p{font-size:30px}.hero-footer{margin-top:64px;font-size:11px}.section{padding-block:100px}.split{grid-template-columns:1fr 1.7fr;gap:100px}.section-heading{flex-direction:row;justify-content:space-between;align-items:flex-end;margin-bottom:46px}.section-heading h2{margin-bottom:0}.section-heading p{margin-bottom:4px}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:46px}.service{padding-block:32px 40px}.service-cta{padding-inline:28px}.contact-grid{grid-template-columns:1fr 1.15fr;gap:110px}.submit{width:auto;min-width:210px}.footer{padding-block:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Imagen de marca y retrato profesional: se conserva el PNG original. */
.brand-photo {
  display: block;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: var(--alternate);
}
.brand-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.65);
  transform-origin: 50% 18%;
}
.about-portrait {
  margin: 32px 0 0;
  max-width: 360px;
  border: 1px solid var(--line);
  background: var(--bg);
}
.about-portrait img {
  display: block;
  width: 100%;
  height: auto;
}
.about-portrait figcaption {
  padding: 16px 20px;
  border-top: 1px solid var(--line);
  font-size: 14px;
  font-weight: 500;
}
.about-portrait figcaption span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 400;
}
.footer .brand { display: flex; }
@media (min-width: 960px) {
  .about .split { align-items: center; }
  .about .section-label { align-self: start; }
}

/* Persistent language navigation, also available with the mobile menu closed. */
.language-switch {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-left: auto;
}
.language-switch a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 36px;
  min-height: 44px;
  font-size: 11px;
  font-weight: 600;
  border-bottom: 2px solid transparent;
}
.language-switch a:hover { background: var(--alternate); }
.language-switch a[aria-current="page"] { border-bottom-color: var(--ink); }
.header-inner { column-gap: 12px; }
@media (max-width: 619px) {
  .header .brand { font-size: 17px; gap: 8px; }
  .header .brand-photo { width: 38px; height: 38px; flex-basis: 38px; }
  .header .brand small { font-size: 6px; letter-spacing: .08em; }
  .header .language-switch { order: 4; flex-basis: 100%; justify-content: flex-end; }
  .header .menu-toggle { margin-left: auto; }
  .header nav { order: 5; }
  .header-inner { padding-block: 12px 6px; row-gap: 0; }
  html { scroll-padding-top: 130px; }
}
@media (min-width: 960px) {
  .header nav, .js .header nav, .js .header nav.is-open { gap: 18px; }
  .header .language-switch { order: 3; margin-left: 8px; }
  .header .brand { font-size: 18px; }
  .header .brand small { font-size: 7px; }
  .header .nav-contact { margin-left: 0; }
  .header .nav-contact span { margin-left: 8px; }
  .header nav { margin-left: auto; }
}
