:root{--ink:#163243;--blue:#205069;--paper:#fafbfc;--muted:#52646e;--line:#dce3e7;--accent:#b6e3ea}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #0088a5;outline-offset:6px}.wrap{max-width:1220px;margin:auto;padding-left:42px;padding-right:42px}.header{display:flex;align-items:center;justify-content:space-between;min-height:112px;gap:24px}.brand{display:flex;align-items:center;gap:14px;font-size:18px;font-weight:600;line-height:1.35}.monogram{font-family:Georgia,serif;font-weight:400;font-size:45px;letter-spacing:-2px;padding-right:7px}.brand small{display:block;font-size:10px;letter-spacing:1.6px;margin-top:6px}nav{display:flex;gap:30px;align-items:center;font-size:14px}.nav-contact{border:1px solid var(--line);padding:11px 20px;border-radius:30px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;padding-top:48px;padding-bottom:78px;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;margin:0 0 25px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.07;margin:0}h1{font-size:clamp(42px,4.9vw,65px);letter-spacing:-2.3px}em{color:var(--blue);font-weight:400}h1 em{white-space:nowrap}.intro{max-width:420px;color:var(--muted);margin:28px 0;font-size:17px;line-height:1.75}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--ink);color:white;padding:16px 24px;border-radius:6px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#2a5b70;transform:translateY(-2px)}.button span{font-size:22px;font-weight:400}.micro{font-size:12px;color:var(--muted);margin:14px 0 0}.portrait{position:relative;align-self:stretch;min-height:510px;margin-left:8px}.portrait img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 40%;border-radius:160px 12px 12px 12px}.portrait-label{position:absolute;bottom:24px;left:-26px;background:var(--ink);color:white;padding:19px 28px;border-radius:4px;box-shadow:0 8px 30px #16324318}.portrait-label span{display:block;font-size:12px;color:#c1d6df}.portrait-label strong{font-family:Georgia,serif;font-weight:400;font-size:24px}.companies{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f0f4f6}.companies-inner{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:30px}.companies p{font-size:13px;color:var(--muted)}.companies-inner>div{font-size:25px;font-weight:800;letter-spacing:1px;line-height:1.1}.companies-inner>div span{display:block;font-size:11px;letter-spacing:4px;margin-top:5px}.iapser{font-weight:500!important;letter-spacing:3px!important}.section{padding-top:90px;padding-bottom:92px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}h2{font-size:43px;letter-spacing:-1.3px}.section-heading .eyebrow{margin-bottom:14px}.section-heading>p{font-size:15px;color:var(--muted);margin:0}.insurance-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.insurance{grid-column:span 2;border:1px solid var(--line);padding:28px;background:white;border-radius:7px;display:flex;flex-direction:column;transition:background .2s,border-color .2s}.insurance:nth-child(n+4){grid-column:span 3}.insurance:hover{background:#edf6f8;border-color:#7fadb9}.number{font-size:11px;letter-spacing:1.3px;color:var(--muted)}h3{font-size:34px;margin:30px 0 14px}.insurance p{font-size:15px;color:var(--muted);margin:0 0 30px;max-width:390px}.card-action{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;font-size:14px;display:flex;justify-content:space-between;align-items:center}.card-action b{font-size:22px;font-weight:400}.about{background:var(--ink);color:white}.about-inner{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding-top:78px;padding-bottom:78px}.about .eyebrow{color:var(--accent)}.about h2{font-size:43px;line-height:1.25}.about em{color:var(--accent)}.about p{color:#d0dde3;font-size:16px}.about .about-lead{font-size:22px;line-height:1.5;margin-top:0;color:white}.text-link{display:inline-flex;gap:25px;border-bottom:1px solid #8097a4;padding-bottom:7px;margin-top:18px;font-size:15px}.contact{text-align:center;padding-top:86px;padding-bottom:86px}.contact h2{font-size:51px}.contact>p:not(.eyebrow){color:var(--muted);margin:24px 0}.phone{display:block;margin-top:18px;font-size:15px}.footer{border-top:1px solid var(--line);padding-top:30px;padding-bottom:32px;display:flex;justify-content:space-between;gap:40px}.footer strong{font-size:16px}.footer p{font-size:12px;color:var(--muted);line-height:1.7;margin:7px 0}.fine{max-width:420px}@media(max-width:900px){.wrap{padding-left:26px;padding-right:26px}.hero{gap:28px}.portrait{min-height:470px}h1{font-size:48px}.brand small{font-size:9px}nav{gap:18px}.about-inner{gap:35px}.insurance{padding:23px}}@media(max-width:650px){.header{min-height:90px}.brand{font-size:15px;gap:9px}.monogram{font-size:38px}.brand small{font-size:8px;letter-spacing:.8px}nav>a:not(.nav-contact){display:none}.nav-contact{padding:8px 13px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:32px;padding-bottom:40px;gap:34px}.eyebrow{font-size:10px;letter-spacing:1.25px}h1{font-size:clamp(38px,10vw,53px);letter-spacing:-1.6px}.intro{font-size:16px;margin:22px 0}.portrait{margin:0 0 0 14px;min-height:390px}.portrait img{border-top-left-radius:120px}.portrait-label{left:-14px;bottom:18px;padding:14px 23px}.portrait-label strong{font-size:22px}.companies-inner{gap:20px;flex-wrap:wrap;justify-content:flex-start;padding-top:22px;padding-bottom:22px}.companies-inner>p:first-child{width:100%;margin:0}.companies-inner>div{font-size:23px;margin-right:20px}.companies-note{display:none}.section{padding-top:55px;padding-bottom:55px}.section-heading{display:block;margin-bottom:26px}h2{font-size:35px}.section-heading>p{margin-top:18px}.insurance-grid{grid-template-columns:1fr;gap:13px}.insurance,.insurance:nth-child(n+4){grid-column:auto}.insurance{padding:24px}h3{margin-top:20px}.insurance p{margin-bottom:22px}.about-inner{grid-template-columns:1fr;gap:23px;padding-top:50px;padding-bottom:50px}.about h2{font-size:36px}.about .eyebrow{margin-bottom:15px}.contact{padding-top:55px;padding-bottom:55px}.contact h2{font-size:40px}.footer{display:block}.fine{margin-top:20px!important}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(min-width:651px){.hero-copy{padding-bottom:10px}}

/* Encuadre del retrato elegido */
.portrait{min-height:0;aspect-ratio:1/1;align-self:center}.portrait img{object-position:center;border-radius:12px}.portrait-label{left:14px;right:14px;bottom:14px;padding:12px 18px}.portrait-label strong{font-size:20px}@media(max-width:650px){.portrait{margin:0;min-height:0}.portrait img{border-radius:12px}.portrait-label{left:12px;right:12px;bottom:12px}}

/* Contacto destacado y acentos de marca */
:root{--blue:#165c80}.button[data-wa],.nav-contact[data-wa]{background:#147d49;color:#fff;border-color:#147d49}.button[data-wa]:hover,.nav-contact[data-wa]:hover{background:#10633b}.number{color:var(--blue)}.insurance{border-top:3px solid var(--blue)}.insurance h3{font-size:clamp(28px,2.6vw,34px);line-height:1.15}.text-link{color:var(--accent)}

.company-logo img{display:block;max-width:100%;object-fit:contain}.companies-inner .company-logo{flex-shrink:0}@media(max-width:650px){.companies-inner .company-logo{margin-right:0}.company-logo:first-of-type img{width:155px}.company-logo:last-of-type img{width:127px}}
