/* Shared identity and five clearly separated professional areas. */
.editorial .site-header{display:grid;grid-template-columns:1fr auto;gap:10px 24px;padding:16px max(24px,calc((100% - 1180px)/2));position:relative;background:#fff}
.site-header .brand{min-width:0;text-transform:none;letter-spacing:0;font-size:23px;gap:12px;line-height:1.25}
.site-header .brand-name{display:block}.site-header .brand small{display:block;font-size:13px;letter-spacing:.2px;margin-top:5px;font-weight:500}
.site-header .brand-symbol{width:54px;height:54px;display:block;flex-shrink:0}.site-header .brand-symbol img{position:absolute;width:270%;height:270%;left:-78%;top:-52%;object-fit:contain}
.site-header .header-contact{font-size:14px;min-height:44px;align-self:center}
.editorial .site-header #primary-nav{grid-column:1/-1;width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e0e9e8;padding-top:10px;margin:0;flex-wrap:wrap}
.site-header #primary-nav a{font-size:14px;min-height:42px;display:flex;align-items:center;padding:6px 0;white-space:normal;line-height:1.4}
.site-header #primary-nav .mobile-contact{display:none}.site-header #primary-nav a[aria-current]{color:#075d59;text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.home .vision-hero{margin-top:12px}.home .vision-copy h1{font-size:clamp(40px,4.5vw,66px)}.home .vision-copy h1 em{display:block}.package-conditions{max-width:830px;margin-top:28px;font-size:16px}.coaching-packages h3{font-size:26px}.discipline-card:first-child{border-top:5px solid #13736a}
.discipline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px}
.discipline-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:32px;border-radius:14px;border:1px solid #d3e0dd;background:#f1f7f4;color:#163737;text-decoration:none;overflow:hidden;transition:transform .2s,box-shadow .2s}
.discipline-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #153d3212}.discipline-card h3{font-size:27px;line-height:1.18;letter-spacing:-.5px;max-width:310px;margin:14px 0}.discipline-card p{font-size:16px;line-height:1.6}.discipline-card .section-label{font-size:12px;color:#28564f;position:relative;margin-top:24px}.discipline-number{font-size:56px;line-height:1;color:#437167;letter-spacing:-3px;font-weight:500}.discipline-card .card-action{font-weight:700;margin-top:auto;padding-top:24px;min-height:44px;color:#15524b;font-size:14px}
.discipline-card.tone-negocios{background:#edf2f8}.discipline-card.tone-educativo{background:#faf3de}.discipline-card.tone-deportivo{background:#f0eef6}.discipline-card.tone-seguridad{background:#173737;color:#fff;grid-column:span 2}.tone-seguridad .discipline-number{color:#a2dad1}.tone-seguridad .section-label,.tone-seguridad .card-action{color:#b5e8df}.tone-seguridad h3{max-width:560px}.tone-seguridad p{color:#e1eeeb;max-width:580px}
.branch-hero{max-width:1280px;margin:12px auto 0;padding:65px 60px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:50px;background:#143637;color:#fff;border-radius:18px;overflow:hidden;align-items:center}
.branch-hero .section-label{color:#afe2d8}.branch-hero h1{font-size:clamp(38px,4vw,60px);line-height:1.06;letter-spacing:-1.7px;margin:22px 0}.branch-hero .lead{color:#e0efea;font-size:20px;line-height:1.6;max-width:760px}.branch-hero .button{margin-top:18px;background:#b9e8dd;color:#153b35}.branch-hero figure{margin:0;max-height:450px;align-self:stretch;border-radius:12px;overflow:hidden}.branch-hero figure img{width:100%;height:100%;object-fit:cover;object-position:center top}
.branch-art{aspect-ratio:1;position:relative;min-width:0;border:1px solid #71968d;border-radius:50%;background:radial-gradient(circle at 35% 30%,#35615a,transparent 65%)}.branch-art span{display:block;position:absolute;border:1px solid #a2c8bc;border-radius:50%;width:75%;height:75%;left:12.5%;top:12.5%}.branch-art span:nth-child(2){width:50%;height:50%;left:25%;top:25%}.branch-art span:nth-child(3){width:20%;height:20%;left:40%;top:40%;background:#d4bf75;border:0}
.offering-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.offering-panel{border-top:3px solid #32776b;padding:28px 24px;background:#f3f7f6;border-radius:0 0 12px 12px;display:flex;flex-direction:column;min-width:0}.offering-panel h3{font-size:27px;line-height:1.2}.offering-panel p,.offering-panel li{font-size:16px;line-height:1.65}.offering-panel ul{padding-left:20px;margin:12px 0 24px}.offering-panel li{margin-bottom:10px}.offering-panel a{margin-top:auto;min-height:44px}.security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.next-route{display:flex;gap:42px;align-items:center;justify-content:space-between}.next-route>div{max-width:750px}.next-route>a{flex-shrink:0;max-width:290px}.section-jumps{display:flex;gap:12px;flex-wrap:wrap;max-width:1180px;margin:28px auto;padding:0 24px}.section-jumps a{border:1px solid #bacdc8;border-radius:30px;padding:12px 19px;min-height:44px;font-size:14px;text-decoration:none;color:#214c43}.section-jumps a:hover{background:#e6f3ed}footer .footer-inner nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 24px}footer nav a{min-height:44px;margin:0;display:flex;align-items:center}footer strong{font-size:20px;text-transform:none}
:is(.discipline-card,.section-jumps a,.site-header a):focus-visible{outline:3px solid #007a98;outline-offset:4px}
@media(max-width:1100px){.editorial .site-header{padding:14px 24px}.editorial .site-header #primary-nav{gap:8px}.site-header #primary-nav a{font-size:13px}.branch-hero{margin:12px 20px 0;padding:45px 35px;gap:30px}.discipline-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.discipline-card.tone-seguridad{grid-column:span 2}.offering-panel{padding:25px 20px}.offering-panel h3{font-size:24px}}
@media(max-width:850px){.editorial .site-header{grid-template-columns:minmax(0,1fr) auto;padding:12px 18px;gap:12px}.site-header .brand{font-size:20px}.site-header .header-contact{display:none}.js .site-header .menu-toggle{display:inline-flex}.editorial .site-header #primary-nav{flex-direction:column;align-items:stretch;border-top:1px solid #d5e5df;padding-top:8px}.js .editorial .site-header #primary-nav{display:none}.js .editorial .site-header #primary-nav.is-open{display:flex}.site-header #primary-nav a{padding:10px 8px;font-size:15px}.site-header #primary-nav .mobile-contact{display:flex}.branch-hero{grid-template-columns:minmax(0,1fr);padding:38px 30px}.branch-art{display:none}.branch-hero figure{max-height:430px;aspect-ratio:1.2;width:100%}.offering-grid{grid-template-columns:1fr}.next-route{align-items:flex-start;flex-direction:column;gap:20px}.security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}footer .footer-inner{grid-template-columns:1fr}.section-jumps{margin:24px 0}.home .vision-copy h1{font-size:clamp(38px,6vw,56px)}}
@media(max-width:560px){.editorial .site-header .brand{font-size:16px;gap:8px;line-height:1.2}.site-header .brand small{font-size:11px;line-height:1.4;letter-spacing:0;max-width:220px}.site-header .brand-symbol{width:39px;height:39px;display:block!important}.site-header .menu-toggle{padding:8px;font-size:12px;min-width:44px}.site-header .menu-toggle span:last-child{display:none}.discipline-grid,.security-grid{grid-template-columns:1fr}.discipline-card.tone-seguridad{grid-column:auto}.discipline-card{padding:27px}.branch-hero{margin:8px 16px 0;padding:32px 24px}.branch-hero h1{font-size:39px}.branch-hero .lead{font-size:18px}.home .vision-copy h1{font-size:41px}.home .vision-signature{line-height:1.8}footer .footer-inner nav{grid-template-columns:1fr 1fr;font-size:14px}}
@media(prefers-reduced-motion:reduce){.discipline-card{transition:none}.discipline-card:hover{transform:none}}
