/* Shared public page styles (V135).
   Referenced by: includes/header.php. */
/* Componentes públicos aislados de las hojas particulares de cada servicio. */
html body .te-public-header,html body .te-public-footer,html body .te-public-breadcrumb{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;font-style:normal;text-transform:none;letter-spacing:normal;line-height:1.5}
html body .te-public-header *,html body .te-public-footer *{box-sizing:border-box}
html body .te-public-header{display:block;position:relative;inset:auto;z-index:30;width:100%;max-width:none;margin:0;padding:0;background:#14263d;color:#fff;border:0;border-bottom:1px solid #c8a66a55}
html body .te-public-bar{display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1360px;margin:0 auto;padding:14px 32px}
html body a.te-public-brand{display:flex;align-items:center;gap:14px;min-width:174px;padding:0;margin:0;color:#fff;text-decoration:none;border:0;background:none}
html body .te-public-brand img{display:block;width:62px;height:62px;max-width:none;object-fit:contain;filter:none;border:0;margin:0}
html body .te-public-brand span{font:12px/1.6 Arial,Helvetica,sans-serif;letter-spacing:.055em;color:#e5d2af}
html body nav.te-public-menu{display:flex;align-items:center;gap:8px;position:static;inset:auto;margin:0;padding:0;background:transparent;font-size:14px;font-weight:600;flex-direction:row;flex-wrap:nowrap;border:0;width:auto}
html body .te-public-menu a,html body .te-public-menu summary{display:flex;align-items:center;justify-content:flex-start;min-height:44px;padding:10px 12px;border:0;border-radius:4px;color:#fff;background:transparent;text-decoration:none;font:600 14px/1.4 Arial,Helvetica,sans-serif;letter-spacing:normal;white-space:nowrap;cursor:pointer}
html body .te-public-menu summary{list-style:none;gap:7px}
html body .te-public-menu summary::-webkit-details-marker{display:none}
html body .te-public-menu summary:after{content:'⌄';font-size:15px}
html body .te-public-menu details{position:relative;margin:0;padding:0;border:0;background:none}
html body .te-public-menu .te-public-panel{position:absolute;top:calc(100% + 9px);right:0;width:290px;max-height:70vh;overflow-y:auto;padding:12px;background:#14263d;border:1px solid #c8a66a77;box-shadow:0 16px 40px #0a142833;border-radius:7px}
html body .te-public-panel a{white-space:normal;font-weight:400}
html body .te-public-menu a:hover,html body .te-public-menu summary:hover{background:#263b55;color:#fff}
html body .te-public-menu .te-public-quote{background:#c8a66a;color:#14263d;border:1px solid #c8a66a;font-weight:700}
html body .te-public-menu .te-public-portal{border:1px solid #ffffff55}
html body .te-public-toggle{display:none;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 15px;border:1px solid #d5c09e;border-radius:4px;background:transparent;color:#fff;font:600 14px Arial,Helvetica,sans-serif;cursor:pointer}
html body .te-public-header :focus-visible,html body .te-public-footer :focus-visible,html body .te-public-breadcrumb :focus-visible{outline:3px solid #d8b97e;outline-offset:3px}
html body .te-public-footer{display:block;position:static;inset:auto;max-width:none;width:100%;margin:0;padding:54px 32px 22px;background:#14263d;color:#e6ebf1;text-align:left;border:0}
html body .te-public-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;max-width:1280px;margin:auto}
html body .te-public-footer h2{margin:0 0 14px;color:#e3c998;font-size:16px;line-height:1.4}
html body .te-public-footer p{margin:14px 0;color:#d6dfe9;font-size:14px;line-height:1.7}
html body .te-public-footer a:not(.te-public-brand){display:flex;align-items:center;min-height:44px;padding:8px 0;color:#edf1f6;text-decoration:none;font-size:14px;font-weight:400;letter-spacing:normal;overflow-wrap:anywhere;white-space:normal;border:0}
html body .te-public-footer a:hover{text-decoration:underline}
html body .te-public-foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;max-width:1280px;margin:32px auto 0;padding-top:22px;border-top:1px solid #ffffff33;font-size:14px;color:#bfcbd9}
html body .te-public-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 auto;padding:20px 0;color:#626a67;font-size:14px}
html body .te-public-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;color:#14263d}
@media(max-width:1120px){html body .te-public-bar{gap:16px;padding:12px 24px;flex-wrap:wrap}html body .te-public-toggle{display:flex}html body nav.te-public-menu{display:flex;flex-basis:100%;flex-direction:column;align-items:stretch;gap:3px;padding:12px 0}html body .te-public-header.te-public-js nav.te-public-menu:not(.is-open){display:none}html body .te-public-menu a,html body .te-public-menu summary{white-space:normal;justify-content:space-between}html body .te-public-menu .te-public-panel{position:static;width:100%;max-height:none;border:0;border-left:1px solid #c8a66a66;box-shadow:none;padding:4px 12px;margin:0 0 10px 6px;background:#1b304a}html body .te-public-foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){html body .te-public-bar{padding:10px 18px}html body .te-public-brand img{width:54px;height:54px}html body .te-public-brand span{font-size:11px}html body .te-public-footer{padding:36px 22px 24px}html body .te-public-foot-grid{grid-template-columns:1fr;gap:25px}html body .te-public-foot-bottom{font-size:14px}}
