/* GSC · garciasolucionc.com v2.6 · hoja de estilo común · identidad oficial del 15/11 */
/* fuentes alojadas en la web (sin Google Fonts) */
@font-face{font-family:"Cinzel";src:url(fonts/cinzel.woff2) format("woff2");font-weight:400 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Saira";src:url(fonts/saira.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:"Inter";src:url(fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}

:root{
  /* identidad v2 (15/11): acero negro, filos de oro, cromo */
  --negro:#08080A; --placa:#111114; --placa-2:#18181C; --linea:#2A2A30;
  --oro:#D4A537; --oro-claro:#F2D47A; --oro-oscuro:#8A6A1F; --cromo:#C9CDD2; --blanco:#F4F4F2; --gris:#9A9AA2;
  /* letra de títulos en UNA sola variable: para volver a Cinzel cambiar solo esta línea por "Cinzel",Georgia,serif */
  --titulo:"Saira","Arial Narrow",system-ui,sans-serif; --texto:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --metal:linear-gradient(100deg,#7d5a14 0%,#D4A537 22%,#F7E2A0 40%,#D4A537 58%,#8A6A1F 80%,#E8C468 100%);
  --cromo-g:linear-gradient(180deg,#ffffff 0%,#d8dbe0 35%,#8d9198 55%,#e4e6ea 75%,#a7abb2 100%);
  /* nombres de v2.5 que usan las páginas, apuntando a la identidad v2 */
  --bg:var(--negro); --bg2:var(--placa); --panel:var(--placa); --panel2:var(--placa-2);
  --line:var(--linea); --line2:rgba(212,165,55,.32);
  --oro2:var(--oro-claro); --oro3:var(--oro-oscuro);
  --txt:#E6E6E8; --mute:#B4B4BA; --dim:var(--gris);
  --chrome:linear-gradient(100deg,#8d9198 0%,#ffffff 30%,#C9CDD2 50%,#ffffff 64%,#a7abb2 85%);
  --r:6px; --max:1180px;
  --serif:var(--titulo); --sans:var(--texto);
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--negro);background-image:radial-gradient(1200px 600px at 80% -10%,rgba(212,165,55,.10),transparent 60%),radial-gradient(900px 500px at -10% 40%,rgba(201,205,210,.05),transparent 60%);background-attachment:fixed;color:var(--txt);font-family:var(--sans);font-size:17px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
::selection{background:var(--oro);color:#111}
.wrap,.envoltura{max-width:var(--max);margin:0 auto;padding:0 24px}
:focus-visible{outline:2px solid var(--oro-claro);outline-offset:3px}
@media(max-width:600px){.wrap,.envoltura{padding:0 16px}body{font-size:16px}}

/* fondo vivo: rejilla + auroras */
.sky{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.sky:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:88px 88px;opacity:.35;mask-image:radial-gradient(ellipse at 50% 0%,#000 0%,transparent 70%)}
.sky i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.22;animation:drift 22s ease-in-out infinite alternate}
.sky i:nth-child(1){width:620px;height:620px;background:#D4A537;top:-260px;left:-160px}
.sky i:nth-child(2){width:520px;height:520px;background:#C9CDD2;top:30%;right:-260px;opacity:.09;animation-delay:-8s}
.sky i:nth-child(3){width:480px;height:480px;background:#A87F22;bottom:-220px;left:30%;opacity:.14;animation-delay:-14s}
@keyframes drift{to{transform:translate(80px,60px) scale(1.12)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* tipografía */
.kicker{font-family:var(--serif);font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--oro);display:inline-flex;align-items:center;gap:12px}
.kicker:before{content:"";width:34px;height:1px;background:var(--metal)}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.08;color:var(--blanco);letter-spacing:.01em}
h1{font-size:clamp(40px,6.4vw,84px)}
h2{font-size:clamp(30px,4.2vw,54px)}
h3{font-size:21px;line-height:1.25}
.oro{background:var(--metal);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 7s linear infinite}
.cromo{background:var(--chrome);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 9s linear infinite}
@keyframes shine{to{background-position:200% center}}
.lead{font-size:clamp(17px,1.6vw,20px);color:var(--mute);max-width:640px}
.sec{padding:120px 0;position:relative}
@media(max-width:700px){.sec{padding:80px 0}}
.sec-h{display:flex;flex-direction:column;gap:18px;margin-bottom:56px;max-width:820px}
.center{text-align:center;align-items:center;margin-left:auto;margin-right:auto}

/* barra superior */
.top{position:sticky;top:0;z-index:50;backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);background:rgba(18,18,20,.72);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:20px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:34px;width:auto}
.brand b{font-family:var(--serif);font-weight:600;font-size:12.5px;letter-spacing:.24em;line-height:1.35;color:var(--cromo)}
.menu{display:flex;gap:28px;font-size:14.5px;color:var(--mute)}
.menu a{position:relative;padding:6px 0;transition:color .2s}
.menu a:hover,.menu a.on{color:var(--blanco)}
.menu a.on:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--metal)}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);align-items:center;justify-content:center}
.burger span{width:18px;height:1.5px;background:var(--txt);position:relative}
.burger span:before,.burger span:after{content:"";position:absolute;left:0;width:18px;height:1.5px;background:var(--txt)}
.burger span:before{top:-6px}.burger span:after{top:6px}
@media(max-width:1060px){
  .menu{position:fixed;top:74px;left:0;right:0;flex-direction:column;gap:0;background:rgba(18,18,20,.97);border-bottom:1px solid var(--line);padding:8px 16px 18px;transform:translateY(-130%);transition:transform .35s;z-index:-1}
  .menu.open{transform:none}
  .menu a{padding:14px 4px;border-bottom:1px solid var(--line);font-size:16px}
  .burger{display:flex}
  .top .btn{display:none}
  .brand b{display:none}
}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border-radius:999px;font-weight:600;font-size:15.5px;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}
.btn-oro{background:var(--metal);background-size:180% auto;color:#16120A;box-shadow:0 10px 34px -10px rgba(212,165,55,.6),inset 0 1px 0 rgba(255,255,255,.5)}
.btn-oro:hover{transform:translateY(-2px);background-position:right center;box-shadow:0 16px 44px -10px rgba(212,165,55,.75)}
.btn-glass{background:rgba(255,255,255,.04);border:1px solid rgba(201,205,210,.22);color:var(--blanco)}
.btn-glass:hover{background:rgba(255,255,255,.08);border-color:var(--line2)}
.btn-sm{height:42px;padding:0 20px;font-size:14px}
.btn svg{width:18px;height:18px}

/* tarjetas */
.card{background:linear-gradient(180deg,rgba(38,38,42,.78),rgba(26,26,29,.78));border:1px solid var(--line);border-radius:var(--r);padding:30px;position:relative;overflow:hidden;transition:border-color .3s,transform .3s}
.card:hover{border-color:var(--line2)}
.card.lift:hover{transform:translateY(-4px)}
.card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(242,212,122,.35),transparent 35%,transparent 70%,rgba(201,205,210,.2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.6}
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:999px;border:1px solid var(--line2);color:var(--oro2);background:rgba(212,165,55,.07)}
.tag.gris{border-color:var(--line);color:var(--cromo);background:rgba(201,205,210,.05)}
.dot{width:8px;height:8px;border-radius:50%;background:#3DDC84;box-shadow:0 0 0 4px rgba(61,220,132,.15)}
.ico{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(242,212,122,.3),rgba(212,165,55,.06));border:1px solid var(--line2);color:var(--oro2);margin-bottom:22px}
.ico svg{width:24px;height:24px}
.card p{color:var(--mute);font-size:15.5px}
.card h3{margin-bottom:10px}
ul.check{list-style:none;display:grid;gap:10px;margin-top:16px}
ul.check li{display:flex;gap:10px;font-size:15px;color:var(--txt)}
ul.check li:before{content:"";flex:0 0 18px;height:18px;margin-top:3px;border-radius:50%;background:radial-gradient(circle,var(--oro) 0 3px,transparent 4px),rgba(212,165,55,.12);border:1px solid var(--line2)}
.aviso{font-size:13.5px;color:var(--dim);display:block}
.aviso b{color:var(--oro2);font-weight:600}
.pend{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1a1306;background:var(--oro2);padding:2px 8px;border-radius:6px;vertical-align:middle}

/* encabezado de páginas internas */
.phead{padding:110px 0 70px;position:relative}
.phead h1{font-size:clamp(38px,5.4vw,70px);margin:20px 0 22px;max-width:960px}
.crumbs{font-size:13px;color:var(--dim);margin-bottom:6px}
.crumbs a:hover{color:var(--oro2)}

/* formularios */
.form{display:grid;gap:16px}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:640px){.form .row{grid-template-columns:1fr}}
.form label{display:grid;gap:7px;font-size:13.5px;color:var(--mute);font-weight:500}
.form input,.form select,.form textarea{width:100%;background:rgba(0,0,0,.25);border:1px solid rgba(201,205,210,.18);border-radius:14px;color:var(--blanco);font:inherit;font-size:16px;padding:14px 16px;outline:none;transition:border-color .2s,box-shadow .2s}
.form textarea{min-height:120px;resize:vertical}
.form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--oro) 50%),linear-gradient(135deg,var(--oro) 50%,transparent 50%);background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%;background-size:6px 6px;background-repeat:no-repeat}
.form select option{background:#1F1F22}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--oro);box-shadow:0 0 0 4px rgba(212,165,55,.14)}

/* pie */
.foot{border-top:1px solid var(--line);padding:70px 0 40px;margin-top:40px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.25))}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
@media(max-width:860px){.foot .cols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.foot .cols{grid-template-columns:1fr}}
.foot h4,.foot .fh{font-family:var(--serif);font-size:12px;letter-spacing:.24em;color:var(--oro);margin-bottom:16px;font-weight:600}
.foot a,.foot p{display:block;color:var(--mute);font-size:14.5px;margin-bottom:9px}
.foot a:hover{color:var(--blanco)}
.foot .base{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:50px;padding-top:24px;border-top:1px solid var(--line);font-size:13px;color:var(--dim)}
.lema{font-family:var(--serif);letter-spacing:.3em;font-size:12.5px;color:var(--cromo)}


/* aparición */
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}

/* banda de revisión interna (quitar al publicar) */
.revision{background:repeating-linear-gradient(135deg,#2a2208 0 14px,#231c06 14px 28px);color:var(--oro2);font-size:13px;text-align:center;padding:9px 16px;border-bottom:1px solid var(--line2)}
.revision b{color:#fff}
main{overflow-x:clip}
/* fundador / director */
.dir{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.retrato{aspect-ratio:4/5;border-radius:28px;border:1px dashed var(--line2);display:grid;place-items:center;text-align:center;padding:30px;background:radial-gradient(circle at 50% 30%,rgba(212,165,55,.12),transparent 60%),var(--panel);color:var(--dim);font-size:14px}
.retrato b{font-family:var(--serif);font-size:90px;display:block;line-height:1}
@media(max-width:900px){.dir{grid-template-columns:1fr}.retrato{max-width:380px}}
.firma{font-family:var(--serif);font-size:22px;color:var(--blanco);margin-top:26px}
.firma small{display:block;font-family:var(--sans);font-size:14px;color:var(--oro2);letter-spacing:.06em;margin-top:4px}
.oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ===== identidad v2 (15/11) aplicada a todas las páginas ===== */
/* fondo: diagonales de oro en vez de auroras */
.sky:before{opacity:.18}
.sky i{border-radius:0;filter:none;animation:none;height:22px!important;width:150%!important;left:-25%!important;background:var(--metal)!important;transform:rotate(-38deg);box-shadow:0 0 30px rgba(212,165,55,.3)}
.sky i:nth-child(1){top:12%!important;left:35%!important;opacity:.16}
.sky i:nth-child(2){top:62%!important;opacity:.07!important;height:12px!important}
.sky i:nth-child(3){bottom:auto!important;top:96%!important;opacity:.10!important;height:14px!important}
/* títulos: Saira gruesa en mayúsculas */
h1,h2{font-family:var(--titulo);font-weight:800;text-transform:uppercase;letter-spacing:-.005em;line-height:1.04;text-wrap:balance}
h3{font-family:var(--titulo);font-weight:700;text-transform:uppercase;letter-spacing:.05em}
h1{font-size:clamp(36px,5.4vw,70px)}
h2{font-size:clamp(28px,3.8vw,48px)}
h3{font-size:19px}
.kicker{font-family:var(--titulo);font-weight:600;letter-spacing:.45em;gap:14px}
.kicker:before{width:42px;height:2px}
.cromo{background:var(--cromo-g);-webkit-background-clip:text;background-clip:text;color:transparent;animation:none}
.lead{color:#cfcfd3}
/* cabecera */
.top{background:rgba(8,8,10,.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.top .wrap{height:64px}
.brand img{height:38px;width:auto;border-radius:4px}
.brand b{font:700 13px/1.15 var(--titulo);letter-spacing:.22em;color:var(--cromo)}
.brand b small{display:block;font-size:10px;letter-spacing:.42em;color:var(--oro)}
.menu{gap:18px;font:600 12.5px var(--titulo);letter-spacing:.12em;text-transform:uppercase;color:var(--gris)}
.menu a:hover,.menu a.on{color:var(--oro-claro)}
.menu a.on:after{height:2px}
.burger{border-radius:0}
.brand b{white-space:nowrap}
@media(max-width:1500px){.brand b{display:none}}
@media(max-width:1060px){.top .wrap{height:64px}.menu{top:64px;background:rgba(8,8,10,.97);font-size:14px}}
/* botones: placa cortada en diagonal */
.btn,.boton{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:auto;padding:15px 28px;border-radius:0;font:700 14px var(--titulo);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);transition:background-position .6s,background .2s;cursor:pointer;border:0;text-decoration:none}
.btn-oro,.boton{background:var(--metal);background-size:200% 100%;color:#140f02;box-shadow:none}
.btn-oro:hover,.boton:hover{transform:none;background-position:100% 0;box-shadow:none}
.btn-glass,.boton.linea{background:transparent;color:var(--oro-claro);outline:1px solid var(--oro);outline-offset:-1px;border:0}
.btn-glass:hover,.boton.linea:hover{background:rgba(212,165,55,.08)}
.btn-sm,.boton.chico{padding:10px 18px;font-size:12px}
/* placas (tarjetas) */
.card{background:var(--placa);border-radius:var(--r)}
.card:before{background:linear-gradient(140deg,rgba(242,212,122,.45),transparent 30%,transparent 72%,rgba(201,205,210,.18))}
.tag{border-radius:0;font-family:var(--titulo);letter-spacing:.14em;clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}
.ico{border-radius:14px;border:2px solid transparent;background-image:linear-gradient(160deg,#1c1a14,#0b0b0d),var(--metal);background-origin:border-box;background-clip:padding-box,border-box;color:var(--oro);box-shadow:0 8px 24px rgba(0,0,0,.5)}
.pend{border-radius:0}
/* cinta de sección (como el inicio) */
.cinta{display:flex;align-items:center;gap:18px;justify-content:center;margin-bottom:46px}
.cinta:before,.cinta:after{content:"";flex:1;max-width:160px;height:2px;background:var(--metal)}
.cinta h2{margin:0;padding:10px 34px;font:800 clamp(18px,2.4vw,26px) var(--titulo);letter-spacing:.38em;color:#120d02;background:var(--metal);clip-path:polygon(16px 0,100% 0,calc(100% - 16px) 100%,0 100%)}
/* formularios */
.form label{font:600 12px var(--titulo);letter-spacing:.16em;text-transform:uppercase;color:var(--cromo)}
.form input,.form select,.form textarea{border-radius:0;background:var(--negro);border-color:var(--linea);font-family:var(--texto)}
.form select option{background:var(--placa)}
/* pie */
.foot{background:transparent}
.foot .fh{font:700 12px var(--titulo);letter-spacing:.3em}
.foot .lema{font:600 12.5px var(--titulo);letter-spacing:.32em}
.pie-firma{display:flex;align-items:center;gap:18px;justify-content:center;margin-top:46px;font:600 12px var(--titulo);letter-spacing:.5em;color:var(--oro);text-align:center}
.pie-firma:before,.pie-firma:after{content:"";width:90px;height:2px;background:var(--metal);flex:none}
@media(max-width:560px){.pie-firma{letter-spacing:.3em;font-size:11px}.pie-firma:before,.pie-firma:after{width:30px}}
/* fundador */
.retrato{border-radius:var(--r)}
.firma{font-family:var(--titulo);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
