/* Coyotepec · capa institucional universal 2026 v1 · reversible */
:root{--coy-vino:#6b1930;--coy-vino-oscuro:#4b0f20;--coy-vino-claro:#8b2948;--coy-dorado:#b08a3e;--coy-dorado-claro:#d8bf80;--coy-tinta:#31282b;--coy-texto:#61575a;--coy-fondo:#f8f5f2;--coy-superficie:#fffdfb;--coy-linea:#e7ddd7;--coy-sombra:0 12px 34px rgba(66,28,40,.10);--coy-radio:20px;--coy-fuente:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--coyotepec-serif:var(--coy-fuente)}
html{scroll-behavior:smooth}body{background:var(--coy-fondo)!important;color:var(--coy-texto)!important;font-family:var(--coy-fuente)!important;font-size:16px;line-height:1.6;overflow-x:hidden!important;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body :where(h1,h2,h3,h4,h5,h6,p,li,a,button,input,textarea,select,label,legend,th,td,small,strong,b){font-family:var(--coy-fuente)!important}body :where(h1,h2,h3,h4,h5,h6){height:auto!important;color:var(--coy-vino)!important;line-height:1.18!important;font-weight:800!important;letter-spacing:-.018em;text-shadow:none!important;text-transform:none!important}body :where(p,li,td,th){color:var(--coy-texto);line-height:1.65}body a{transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}body a:focus-visible,body button:focus-visible{outline:3px solid rgba(176,138,62,.55)!important;outline-offset:3px!important}body img,body video,body iframe,body embed{max-width:100%}
#nav,#nav ul,#nav li,#nav a{font-family:var(--coy-fuente)!important}#nav>li>a{font-weight:750!important;letter-spacing:.005em!important}#nav ul a{font-size:14px!important;line-height:1.3!important;font-weight:650!important}.homeservices h1,.homeservices h2,.homeservices h3,.homeservice h1,.homeservice h2,.homeservice h3{font-family:var(--coy-fuente)!important;font-weight:800!important;letter-spacing:-.02em!important}
body.tp-portal-unified .header-page.tp-unified-hero,body.tp-portal-unified .tp-hero.tp-unified-hero,body.tp-master .header-page,body.tp-lgcg .header-page{border-bottom:4px solid var(--coy-dorado)!important;background:radial-gradient(circle at 16% 42%,rgba(216,191,128,.18) 0 12%,transparent 12.3%),radial-gradient(circle at 92% 8%,rgba(255,255,255,.07) 0 18%,transparent 18.3%),linear-gradient(112deg,var(--coy-vino-oscuro) 0%,var(--coy-vino) 58%,var(--coy-vino-claro) 100%)!important}body.tp-portal-unified .tp-unified-hero h1,body.tp-master .header-page h1,body.tp-lgcg .header-page h1{color:#fff!important;font-family:var(--coy-fuente)!important;font-size:clamp(38px,5vw,62px)!important;font-weight:850!important;letter-spacing:-.035em!important;line-height:1.05!important}
body.tp-portal-unified .tp-unified-shell,body.tp-portal-unified .tp-unified-card,body.tp-master .tp-master-card,body.tp-lgcg .tp-lgcg-card{border:1px solid var(--coy-linea)!important;border-radius:26px!important;background:rgba(255,253,251,.985)!important;box-shadow:var(--coy-sombra)!important}body.tp-portal-unified .tp-unified-content-card,body.tp-master .tp-content-card,body.tp-lgcg .tp-lgcg-content{border-color:var(--coy-linea)!important;border-top:4px solid var(--coy-vino)!important;border-radius:18px!important;background:radial-gradient(circle at 96% 2%,rgba(176,138,62,.075),transparent 25%),var(--coy-superficie)!important;box-shadow:0 9px 26px rgba(66,28,40,.065)!important}
body.tp-portal-unified .tp-unified-sidebar,body.tp-master .tp-master-sidebar,body.tp-lgcg .tp-lgcg-sidebar{border:1px solid var(--coy-linea)!important;border-top:4px solid var(--coy-vino)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 22px rgba(66,28,40,.07)!important}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) ul,body.tp-master :where(.tp-master-sidebar,#menu_lateral) ul,body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) ul{margin:0!important;padding:0!important;list-style:none!important}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) li,body.tp-master :where(.tp-master-sidebar,#menu_lateral) li,body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) li{margin:0 0 7px!important;padding:0!important}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) a,body.tp-master :where(.tp-master-sidebar,#menu_lateral) a,body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) a{display:flex!important;min-height:42px!important;align-items:center!important;padding:10px 13px!important;border:1px solid transparent!important;border-radius:11px!important;background:#fbf8f6!important;color:#4f4347!important;font-size:14px!important;line-height:1.3!important;font-weight:700!important;text-decoration:none!important}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) a:hover,body.tp-master :where(.tp-master-sidebar,#menu_lateral) a:hover,body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) a:hover{border-color:#dcc9bf!important;background:#f4ebe7!important;color:var(--coy-vino)!important;transform:translateX(2px)}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) a[aria-current="page"],body.tp-master :where(.tp-master-sidebar,#menu_lateral) a[aria-current="page"],body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) a[aria-current="page"]{border-color:var(--coy-vino)!important;background:linear-gradient(135deg,var(--coy-vino-oscuro),var(--coy-vino-claro))!important;color:#fff!important}
:where(.gm-document-card,.pm-item,.tp-document-card,.tp-doc-card,.tf-document-card){border:1px solid var(--coy-linea)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 20px rgba(66,28,40,.06)!important}:where(.gm-document-card,.pm-item,.tp-document-card,.tp-doc-card,.tf-document-card):hover{border-color:#d6bfae!important;box-shadow:0 12px 28px rgba(66,28,40,.11)!important;transform:translateY(-2px)}:where(.gm-document-link,.tp-document-link,.tp-doc-link,.tf-document-link){border-radius:10px!important;background:var(--coy-vino)!important;color:#fff!important;font-weight:750!important;text-decoration:none!important}:where(.gm-document-link,.tp-document-link,.tp-doc-link,.tf-document-link):hover{background:var(--coy-vino-oscuro)!important;color:#fff!important}:where(.gm-pdf,.pm-pdf,.tp-pdf,.tf-pdf){color:var(--coy-vino)!important;border-color:rgba(107,25,48,.20)!important;background:#faf5f3!important}
body.tp-simplificacion #container_lateral .modulo>h1,body.tp-simplificacion #container_lateral .modulo section>h1{margin:26px 0 14px!important;padding:0 0 12px!important;border-bottom:1px solid var(--coy-linea)!important;color:var(--coy-vino)!important;font-family:var(--coy-fuente)!important;font-size:clamp(20px,2.4vw,27px)!important;font-weight:800!important;line-height:1.22!important;text-align:left!important}body.tp-simplificacion #container_lateral .modulo p>a{display:flex!important;width:100%!important;min-height:54px!important;align-items:center!important;padding:13px 48px 13px 16px!important;border:1px solid var(--coy-linea)!important;border-radius:13px!important;background:#fff!important;color:var(--coy-vino)!important;font-weight:700!important;text-align:left!important;text-decoration:none!important;box-sizing:border-box!important}body.tp-simplificacion #container_lateral .modulo p>a:hover{border-color:#cfb4a7!important;background:#faf4f1!important;box-shadow:0 8px 20px rgba(66,28,40,.08)!important}body :where(input,textarea,select){border-radius:9px}body table{border-collapse:separate;border-spacing:0}body th{color:var(--coy-vino)!important;font-weight:800!important}footer,footer p,footer a,.footer,.footer p,.footer a{font-family:var(--coy-fuente)!important}
@media(max-width:900px){body.tp-portal-unified .tp-unified-shell,body.tp-master .tp-master-shell,body.tp-lgcg .tp-lgcg-shell{grid-template-columns:1fr!important}body.tp-portal-unified .tp-unified-sidebar,body.tp-master .tp-master-sidebar,body.tp-lgcg .tp-lgcg-sidebar{position:relative!important;top:auto!important}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) ul,body.tp-master :where(.tp-master-sidebar,#menu_lateral) ul,body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}}
@media(max-width:560px){body{font-size:15px}body.tp-portal-unified .tp-unified-hero h1,body.tp-master .header-page h1,body.tp-lgcg .header-page h1{font-size:clamp(32px,10vw,44px)!important}body.tp-portal-unified .tp-unified-shell,body.tp-portal-unified .tp-unified-card,body.tp-master .tp-master-card,body.tp-lgcg .tp-lgcg-card{width:calc(100% - 24px)!important;padding:14px!important;border-radius:19px!important}body.tp-portal-unified :where(.tp-unified-sidebar,#menu_lateral) ul,body.tp-master :where(.tp-master-sidebar,#menu_lateral) ul,body.tp-lgcg :where(.tp-lgcg-sidebar,#menu_lateral) ul{grid-template-columns:1fr!important}:where(.gm-document-card,.pm-item,.tp-document-card,.tp-doc-card,.tf-document-card){border-radius:13px!important}body table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* v1.2 · refuerzo tipografico para modulos heredados */
html body .header-page h1,html body .header-page h2,html body .header-page h3,html body #container_lateral h1,html body #container_lateral h2,html body #container_lateral h3,html body .container .modulo h1,html body .container .modulo h2,html body .container .modulo h3{font-family:var(--coy-fuente)!important}
