:root{--navy:#0b2035;--deep:#071725;--ink:#12293c;--muted:#4b6375;--blue:#005775;--bright:#91e1ee;--paper:#f4f8fa;--line:#d9e4e9;--white:#fff;--max:1240px;--shadow:0 18px 45px #0b203514;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--white);scroll-behavior:smooth}
*{box-sizing:border-box} [hidden]{display:none!important} body{margin:0;line-height:1.55} a{color:inherit} button,input,select,textarea{font:inherit} button{cursor:pointer} :focus-visible{outline:3px solid #007ba3;outline-offset:4px}.hero :focus-visible,.cta :focus-visible,footer :focus-visible{outline-color:var(--bright)} .shell{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.skip{position:fixed;z-index:10;left:12px;top:8px;padding:10px 18px;background:white;transform:translateY(-160%)}.skip:focus{transform:none}
header{border-bottom:1px solid var(--line);background:white} .mast{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:20px}.wordmark{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:1.28rem;letter-spacing:-.045em}.mast-contact{font-size:.875rem;font-weight:750;text-decoration:none;color:var(--blue)}.nav-list{display:flex;gap:6px 24px;padding:0;margin:0;list-style:none;flex-wrap:wrap}.nav-list a{display:flex;align-items:center;min-height:45px;padding:5px 0 4px;text-decoration:none;font-size:.84rem;font-weight:700;border-bottom:3px solid transparent}.nav-list a:hover,.nav-list a[aria-current=page]{color:var(--blue);border-bottom-color:var(--blue)}.menu-toggle{display:none}
.hero{color:white;background:var(--navy);position:relative;overflow:hidden}.hero .shell{position:relative;z-index:1}.home-hero .shell{min-height:465px;display:grid;grid-template-columns:1.45fr 1fr;align-items:center;gap:26px;padding-block:68px 76px}.eyebrow{margin:0 0 14px;color:var(--blue);text-transform:uppercase;font-size:.75rem;letter-spacing:.14em;font-weight:850}.hero .eyebrow,.cta .eyebrow{color:var(--bright)}h1,h2,h3,p{overflow-wrap:break-word} h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.45rem,5.5vw,4.65rem);margin:0 0 18px;max-width:13.4ch}h2{font-size:clamp(1.8rem,3.6vw,3.15rem);margin:0 0 15px}h3{font-size:1.28rem;margin:0 0 10px}.intro{color:#d5e7ef;font-size:clamp(1.03rem,1.5vw,1.18rem);max-width:54ch;margin:0 0 28px}.actions{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:6px;padding:10px 17px;border:1px solid transparent;font-size:.94rem;font-weight:760;text-decoration:none;text-align:center;transition:background .15s}.btn-main{background:var(--blue);color:white}.btn-main:hover{background:#07435a}.hero .btn-main,.cta .btn-main{background:var(--bright);color:var(--deep)}.hero .btn-main:hover,.cta .btn-main:hover{background:#b9f0fa}.btn-outline{border-color:#47778a;color:var(--blue);background:transparent}.hero .btn-outline,.cta .btn-outline{border-color:#83acbd;color:white}.btn-outline:hover{background:#88b0c32a}
.sub-hero .shell{padding-block:48px 58px}.sub-hero h1{max-width:22ch}.sub-hero .intro{margin-bottom:0}.sub-hero .actions{margin-top:24px}.crumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:30px;font-size:.84rem;color:#c5dce7}.crumb a{text-underline-offset:4px}.hero:after{content:"";position:absolute;width:33%;height:100%;right:0;top:0;background:repeating-linear-gradient(135deg,transparent 0px,transparent 26px,#9de4f00e 27px,#9de4f00e 28px);mask-image:linear-gradient(90deg,transparent,black);pointer-events:none}
.section{padding-block:66px}.section-tint{background:var(--paper)}.lead{color:var(--muted);max-width:67ch;margin:0 0 26px;font-size:1.04rem}.cards{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}.services{grid-template-columns:repeat(12,minmax(0,1fr))}.card{min-width:0;padding:25px;border:1px solid var(--line);border-radius:10px;background:white;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.card h3,.card p{margin:0}.card p{color:var(--muted);font-size:.96rem}.services .card{grid-column:span 4}.services .card:nth-child(-n+2){grid-column:span 6}.services .card:first-child{background:#eaf6fa;border-color:#abceda}.card .number{color:var(--blue);font-size:.8rem;font-weight:850;letter-spacing:.09em;margin-bottom:6px}.link{display:inline-block;color:var(--blue);font-weight:760;text-underline-offset:4px}.card .link{margin-top:auto;padding-top:9px}.cta{color:white;background:#12364c;padding-block:53px}.cta .shell{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}.cta h2{font-size:clamp(1.8rem,3.2vw,2.6rem);margin-bottom:8px}.cta p{margin:0;color:#e1eef4}.cta .eyebrow{margin-bottom:10px}
.split{display:grid;gap:42px;grid-template-columns:1.35fr 1fr;align-items:start}.info{padding:27px;border:1px solid var(--line);background:white;border-radius:10px;box-shadow:var(--shadow)}.info p{margin:0 0 12px;color:var(--muted)}.info p:last-child{margin-bottom:0}.info .link{margin-top:6px}.detail-list{padding-inline-start:1.3em;margin:20px 0 0}.detail-list li{margin-bottom:10px;padding-left:4px}.detail-list li::marker{color:var(--blue);font-weight:800}.source-note{margin-top:22px;font-size:.9rem;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:30px;align-items:start}.contact-layout .info+.info{margin-top:16px}.contact-layout address{font-style:normal;color:var(--muted);margin:8px 0 18px}.contact-layout address:last-child{margin-bottom:0}form{background:white;border:1px solid var(--line);border-radius:10px;padding:26px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:flex;flex-direction:column;gap:6px;font-size:.94rem;font-weight:700;min-width:0}.wide{grid-column:1/-1}input,select,textarea{width:100%;min-width:0;padding:10px;border:1px solid #849cab;border-radius:5px;background:white;color:var(--ink)}textarea{min-height:115px;resize:vertical}.form-hint{font-size:.88rem;color:var(--muted);margin:14px 0}.notice{padding:17px;border-left:4px solid var(--blue);background:#eef6f8;font-size:.94rem;margin:20px 0 0}.notice p{margin:0 0 10px}.notice p:last-child{margin-bottom:0}.draft-preview{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0;color:var(--ink)}
footer{background:var(--deep);color:white;padding:34px 0}.foot-grid{display:grid;gap:24px;grid-template-columns:1fr 1.3fr}.foot-grid p{margin:5px 0 0;font-size:.87rem;color:#c3d9e4}.foot-links{display:flex;flex-wrap:wrap;gap:8px 20px;align-content:start;justify-content:flex-end}.foot-links a{font-size:.87rem;color:#e1edf3;text-underline-offset:4px}.foot-note{grid-column:1/-1;border-top:1px solid #375264;padding-top:16px;margin-top:0!important}
@media(max-width:1050px){.shell{width:calc(100% - 54px)}.nav-list{column-gap:17px}.home-hero .shell{min-height:420px}}
@media(max-width:830px){.home-hero .shell{grid-template-columns:1.5fr 1fr}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.services{grid-template-columns:repeat(2,minmax(0,1fr))}.services .card,.services .card:nth-child(-n+2){grid-column:auto}.services .card:first-child{grid-column:1/-1}.contact-layout,.split{grid-template-columns:1fr;gap:25px}.section{padding-block:49px}}
@media(max-width:610px){.shell{width:calc(100% - 32px)}.mast{min-height:63px}.mast-contact{display:none}.menu-toggle{display:inline-flex;min-height:42px;padding:6px 12px;background:white;border:1px solid #849cab;border-radius:5px;font-size:.9rem;font-weight:750;color:var(--ink)}.nav-list{display:grid;grid-template-columns:1fr;gap:0;padding:0 0 8px}.nav-list a{min-height:43px;border-bottom:1px solid var(--line)}.nav-list a[aria-current=page]{border-bottom-color:var(--blue)}.home-hero .shell{min-height:0;grid-template-columns:1fr;padding-block:38px;gap:18px}.sub-hero .shell{padding-block:30px 39px}.crumb{margin-bottom:24px}.section{padding-block:40px}.cards,.services{grid-template-columns:1fr}.services .card:first-child{grid-column:auto}.card{padding:21px}.fields,.foot-grid{grid-template-columns:1fr}.foot-links{justify-content:flex-start}.cta{padding-block:38px}form{padding:17px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.btn{transition:none}}

.wordmark img{display:block;width:70px;height:70px;object-fit:contain;flex:none}
.mast-brand{display:flex;align-items:center;gap:clamp(8px,2vw,23px)}
.mast-eqa{flex:none;display:block}
.mast-eqa img{display:block;width:54px;height:54px;object-fit:contain}
.promo-image{min-width:0;margin:0;align-self:center}
.promo-image svg{display:block;width:100%;height:auto;overflow:hidden;border-radius:10px;background:#284d61}
.promo-image figcaption{margin:7px 0 0;font-size:.8rem;color:var(--muted)}
.hero .promo-image figcaption{color:#c5dce7}
.catalog-intro{display:grid;grid-template-columns:1.3fr minmax(180px,1fr);gap:36px;align-items:center}
.catalog-intro .lead{margin-bottom:13px}
.catalog-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.course-card{gap:12px;scroll-margin-top:16px}
.course-card .course-label{color:var(--blue);margin:0}
.course-card .btn{margin-top:auto}
.maritime-plataformas-y-barcazas{--course-bg:#dceff6;--course-accent:#167599}
.maritime-iniciacion-stcw{--course-bg:#def1e9;--course-accent:#16785d}
.maritime-formacion-basica-stcw-2010{--course-bg:#e5eafa;--course-accent:#465fa2}
.maritime-curso-13-3{--course-bg:#fff0d6;--course-accent:#906011}
.maritime-curso-13-4{--course-bg:#fae8e2;--course-accent:#9c4839}
.maritime-curso-18-2{--course-bg:#eee7f9;--course-accent:#7653a1}
.maritime-curso-18-3{--course-bg:#e7f1db;--course-accent:#4a7531}
.card[class*=" maritime-"]{background:var(--course-bg);border-top:4px solid var(--course-accent)}
.course-code{display:inline-block;vertical-align:middle;padding:.2em .55em;border-radius:5px;background:var(--course-accent);color:white;font-size:.86em;font-weight:850;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.course-facts{display:grid;gap:11px;margin:0 0 8px}
.course-facts dt{font-weight:750}
.course-facts dd{margin:2px 0 0;font-size:.94rem;color:var(--muted)}
.maritime-contact{margin-top:28px}
.maritime-hero .shell{padding-block:30px 40px}
.maritime-hero .crumb{margin-bottom:23px}
.maritime-hero-grid{display:grid;grid-template-columns:1.25fr minmax(0,1fr);align-items:center;gap:28px}
.maritime-hero h1{max-width:16ch}
.medical-intro{max-width:40ch;margin:0 0 10px;color:#a7eafa;font-size:clamp(1.17rem,2.4vw,1.66rem);font-weight:760}
.maritime-hero .intro{margin-bottom:12px}
.medical-docs-link{display:inline-block;margin-bottom:16px;color:#e7f8fc;font-weight:700;text-underline-offset:4px}
.maritime-hero .validation-actions{margin-top:12px}
.medical-validation{position:relative;display:inline-flex;align-items:center;gap:8px;max-width:100%}
.medical-validation .btn{min-width:0}
.medical-help-toggle{display:grid;place-items:center;flex:0 0 44px;height:44px;padding:0;border:1px solid #83acbd;border-radius:50%;background:#eaf6fa;color:#005775;font-size:1.15rem;font-weight:800}
.medical-help-toggle:hover,.medical-help-toggle[aria-expanded="true"]{background:#bee9f2}
.medical-help-message{position:absolute;z-index:3;inset-inline-end:0;bottom:100%;width:100%;margin:0;padding:11px 13px;border:1px solid #83acbd;border-radius:7px;background:#f1f8fa;color:var(--ink);font-size:.92rem;box-shadow:var(--shadow)}
.maritime-photo{min-width:0;margin:0}
.maritime-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:10px}
.maritime-photo figcaption{margin:6px 0 0;color:#c5dce7;font-size:.8rem}
.medical-dialog{width:min(480px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:24px;border:1px solid #a5cbd8;border-radius:12px;color:var(--ink);background:#f1f8fa}
.medical-dialog::backdrop{background:#071725b8}
.medical-dialog h2{font-size:1.4rem}
.medical-dialog .detail-list{margin:0}
.medical-dialog .detail-list li{margin-bottom:3px}
.maritime-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;margin:22px 0;padding:0}
.maritime-steps li{padding:16px;border-radius:8px;background:#dceff6}
.maritime-steps li:nth-child(2){background:#def1e9}
.maritime-steps li:nth-child(3){background:#e5eafa}
.maritime-steps li:nth-child(4){background:#fff0d6}
.maritime-steps li:nth-child(5){background:#fae8e2}
.step-number{display:grid;place-items:center;width:2.15rem;aspect-ratio:1;margin-bottom:10px;border-radius:50%;background:var(--navy);color:white;font-weight:800;font-size:.88rem}
.maritime-steps h3{font-size:1.05rem;margin:0 0 8px}
.maritime-steps p{font-size:.92rem;margin:0;color:var(--muted)}
#proceso-inscripcion .actions .link{align-self:center}
@media(max-width:950px){.maritime-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:610px){
  .maritime-hero-grid,.maritime-steps{grid-template-columns:1fr}
  .maritime-photo img{aspect-ratio:2/1}
  .maritime-steps li{display:grid;grid-template-columns:auto 1fr;gap:4px 12px}
  .maritime-steps .step-number{grid-row:span 2;margin:0}
  .maritime-steps h3{margin:0}
}
.credential-logo{display:flex;align-items:center;justify-content:flex-start;margin-bottom:17px}
.credential-logo img{display:block;max-width:100%;width:175px;height:auto}
.credential-logo.eqa{justify-content:center;margin:0}
.credential-logo.eqa img{width:180px}
.contact-links{display:grid;gap:9px}
.whatsapp-link{display:inline-flex;align-items:center;gap:8px}
.whatsapp-icon{width:1.15em;height:1.15em;flex:none;fill:#087857}
.hero .whatsapp-icon{fill:#69e5a4}
.office{padding-top:13px;scroll-margin-top:16px}
.office + .office{margin-top:18px;border-top:1px solid var(--line)}
.office h4{margin:0;font-size:1rem}
.contact-layout .office address{margin:6px 0 10px}
.foot-legal{grid-column:1/-1;border-top:1px solid #375264;padding-top:17px;display:grid;gap:13px}
.foot-legal h2{font-size:1rem;letter-spacing:0;margin:0}
.foot-legal .link{color:#b0eef5}
.privacy-page{max-width:800px;margin-block:24px}
.privacy-viewer{border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
dialog.privacy-viewer{width:min(800px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:hidden}
.privacy-viewer::backdrop{background:#071725b8}
.privacy-header,.privacy-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;flex-wrap:wrap}
.privacy-header h1,.privacy-header h2{font-size:clamp(1.15rem,3vw,1.6rem);max-width:none;margin:0}
.privacy-header p,.privacy-controls p{margin:4px 0 0;font-size:.85rem;color:var(--muted)}
.privacy-controls{justify-content:flex-start;border-block:1px solid var(--line)}
.privacy-controls .btn{min-height:40px;padding:6px 10px;font-size:.86rem}
.privacy-controls .btn:disabled{opacity:.55;cursor:default}
.privacy-scroll{position:relative;overflow:auto;max-height:68dvh;min-height:100px;padding:8px;background:var(--paper)}
.privacy-scroll canvas{display:block;width:100%;max-width:680px;height:auto;margin:auto;background:#fff}
.privacy-scroll.privacy-zoom canvas{width:850px;max-width:none}
.privacy-viewer noscript p{margin:12px 16px}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:pre-line}
.training-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.training-image{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.training-image img{width:100%;height:auto;display:block}
.training-image figcaption{padding:10px 14px;font-size:.93rem;color:var(--muted)}
.services{--maritime-image:url("medios/servicio-capacitacion-maritima.webp")}
.services .card{
  background-color:var(--service-bg);
  border-color:var(--service-border);
}
.services .card .number,.services .card .link{color:var(--service-accent)}
.service-capacitacion-sspa{--service-bg:#dff1eb;--service-border:#b0d7ca;--service-accent:#075749}
.service-rig-pass{--service-bg:#fff0d6;--service-border:#ecd09a;--service-accent:#744809}
.service-certificaciones-conocer{--service-bg:#e4ecfa;--service-border:#bdcff0;--service-accent:#244c83}
.service-proteccion-civil{--service-bg:#fae7e1;--service-border:#ecc3b6;--service-accent:#853a2b}
.services .card.service-capacitacion-maritima{
  --service-accent:#b8f3fc;
  min-height:292px;
  justify-content:center;
  color:white;
  border-color:#234d61;
  background-color:#102f42;
  background-image:linear-gradient(90deg,#081f30f5 0%,#081f30e8 35%,#081f3066 57%,#081f3014 81%),var(--maritime-image);
  background-position:center 40%;
  background-size:cover;
}
.services .service-capacitacion-maritima p{max-width:28ch;color:#f1f9fb}
.services .service-capacitacion-maritima .link{margin-top:0;padding-top:7px}
.services .service-capacitacion-maritima :focus-visible{outline-color:#b8f3fc}
@media(min-width:831px){
  .services .card.service-capacitacion-maritima{grid-column:span 7}
  .services .card.service-capacitacion-sspa{grid-column:span 5}
}
.catalog-search{max-width:35rem}
.sspa-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(20px,4vw,48px)}
.sspa-documents{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 10px;padding:0;list-style:none}
.sspa-documents li{display:grid;align-content:center;gap:2px;padding:9px 15px;border:1px solid #4d879b;border-radius:8px;background:#153b50}
.sspa-documents strong{font-size:clamp(1.1rem,2vw,1.55rem);line-height:1.15;color:#a9edf5}
.sspa-documents span,.sspa-documents-note{font-size:.87rem;color:#d5e7ef}
.sspa-documents-note{max-width:55ch;margin:0}
.sspa-annex{margin-top:26px}
.sspa-annex summary{list-style:none;cursor:pointer;gap:10px}
.sspa-annex summary::-webkit-details-marker{display:none}
.sspa-annex summary::after{content:"+";font-size:1.1em}
.sspa-annex[open] summary::after{content:"−"}
.sspa-annex .detail-list{list-style-type:lower-alpha;padding-inline-start:2.3em}
.sspa-featured{position:relative;background:var(--featured-bg,#e4f1fa);border-color:var(--featured-border,#b3cfdf);border-top:4px solid var(--featured-accent,#245d80)}
.sspa-featured-2{--featured-bg:#faeed5;--featured-border:#e5d0a3;--featured-accent:#895a08}
.sspa-featured-3{--featured-bg:#e1f3ed;--featured-border:#afdbcb;--featured-accent:#1b6857}
.sspa-featured-4{--featured-bg:#f0eafa;--featured-border:#d8c8e8;--featured-accent:#644989}
.sspa-featured-5{--featured-bg:#fae9dc;--featured-border:#e7c7b1;--featured-accent:#92421c}
.sspa-featured-6{--featured-bg:#fae9ea;--featured-border:#e8c5c8;--featured-accent:#982e39;padding-inline-end:87px}
.sspa-featured-6 .sspa-checklist{position:absolute;inset-block-start:18px;inset-inline-end:14px;width:63px;height:70px}
.sspa-theme-seguridad{background:#e3f0fa;border-color:#b7d1e7}
.sspa-theme-salud{background:#fae9e5;border-color:#edc5bc}
.sspa-theme-ambiente{background:#e3f2e8;border-color:#badbc6}
.sspa-theme .promo-image{width:100%;margin-bottom:6px}
.sspa-photo img{display:block;width:100%;height:auto;border-radius:10px}
.sspa-theme .sspa-photo img{aspect-ratio:3/2;object-fit:cover}
.nom-groups{display:grid;gap:12px}
.nom-group{--nom-accent:#1c6187;--nom-tint:#e8f2fa;border:1px solid var(--line);border-radius:10px;background:white}
.nom-group-2{--nom-accent:#993c43;--nom-tint:#fcefed}
.nom-group-3{--nom-accent:#166957;--nom-tint:#e7f5ef}
.nom-group-4{--nom-accent:#77520a;--nom-tint:#fcf1dc}
.nom-group-5{--nom-accent:#604b87;--nom-tint:#f0ebf9}
.nom-group summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;cursor:pointer;padding:14px 18px;border-inline-start:4px solid var(--nom-accent);border-radius:9px;background:var(--nom-tint);list-style:none}
.nom-group summary::-webkit-details-marker{display:none}
.nom-group summary strong{display:block;font-size:1.16rem;color:var(--nom-accent)}
.nom-index{display:grid;place-items:center;min-width:2.1rem;height:2.1rem;padding-inline:5px;border-radius:6px;background:var(--nom-accent);color:white;font-weight:800;font-size:.86rem}
.nom-summary{display:block;font-size:.92rem;color:var(--muted)}
.nom-expand{font-size:1.35rem;font-weight:800;color:var(--nom-accent)}
.nom-group[open] .nom-expand{transform:rotate(45deg)}
.nom-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;padding:16px 18px;list-style:none}
.nom-entries li{min-width:0}
.nom-entries a{position:relative;display:grid;align-content:start;gap:2px;min-height:100%;padding:9px 36px 9px 12px;border:1px solid var(--line);border-radius:6px;background:#f4f8fa;font-size:.91rem;text-decoration:none}
.nom-entries a:hover,.nom-entries a:focus-visible{background:var(--nom-tint);border-color:var(--nom-accent)}
.nom-entries a:hover strong,.nom-entries a:focus-visible strong{text-decoration:underline;text-underline-offset:3px}
.nom-entries strong{color:var(--nom-accent)}
.nom-external{position:absolute;inset-block-start:9px;inset-inline-end:12px;color:var(--nom-accent);font-weight:800}
#capacitacion-nom-stps .info{margin-top:26px}
@media(max-width:610px){
  .nom-entries{grid-template-columns:1fr;padding:12px}
  .nom-group summary{gap:9px;padding:12px}
}
@media(max-width:830px){.sspa-hero-grid{grid-template-columns:1fr}}
.rig-hero{background:linear-gradient(110deg,#731729,#a21e36)}
.rig-hero .intro,.rig-hero .crumb{color:#fae5e7}
.rig-hero .eyebrow{color:#ffe1b9}
.rig-hero .sub-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:center;gap:clamp(20px,5vw,62px)}
.rig-membership{justify-self:end;width:min(100%,320px);padding:20px;border-radius:10px;background:#fff;color:#6f2431;text-align:center}
.rig-membership img{display:block;width:min(100%,230px);height:auto;margin-inline:auto}
.rig-membership p{margin:12px 0 0;font-size:.94rem;font-weight:800}
.rig-enrollment h3{margin-top:24px}
.rig-enrollment .detail-list{margin-top:8px}
.conocer-hero{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
.conocer-hero:after{display:none}
.conocer-hero .crumb,.conocer-hero .intro{color:var(--muted)}
.conocer-hero .eyebrow{color:#792e4a}
.conocer-hero .btn-main{background:#792e4a;color:#fff}
.conocer-hero .btn-main:hover{background:#61223a}
.conocer-hero .btn-outline{border-color:#97647a;color:#792e4a}
.conocer-hero :focus-visible{outline-color:#792e4a}
.conocer-hero .sub-hero-grid,.civil-hero .sub-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,64px)}
.conocer-brand{margin-bottom:12px}
.conocer-brand img{display:block;width:min(100%,190px);height:auto}
.conocer-accent{--ec-accent:#1c587f;--ec-bg:#e6f1fa;--ec-border:#b8d4e8}
.conocer-accent:nth-child(2){--ec-accent:#8c3050;--ec-bg:#fae9ee;--ec-border:#e8c6d2}
.conocer-accent:nth-child(3){--ec-accent:#18624e;--ec-bg:#e4f3ec;--ec-border:#b5dcca}
.conocer-accent:nth-child(4){--ec-accent:#644280;--ec-bg:#f1eaf7;--ec-border:#dbcbe8}
.conocer-standard{padding:16px;background:var(--ec-bg);border-color:var(--ec-border);border-top:4px solid var(--ec-accent)}
.conocer-standard img{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;border-radius:6px}
.conocer-code{padding:4px 9px;border-radius:5px;background:var(--ec-accent);color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.04em}
.conocer-actions{display:grid;gap:8px;width:100%;margin-top:auto;padding-top:8px}
.conocer-actions .btn-outline{border-color:var(--ec-accent);color:var(--ec-accent)}
.conocer-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0 0;padding:0;list-style:none}
.conocer-process li{position:relative;padding:18px;border:1px solid var(--ec-border);border-radius:10px;background:var(--ec-bg)}
.conocer-process li:not(:last-child):after{content:"";position:absolute;z-index:1;top:34px;left:100%;width:17px;border-top:2px solid #658092}
.conocer-process .step-number{background:var(--ec-accent)}
.conocer-process h3{font-size:1.12rem}
.conocer-process p{margin:0;color:var(--muted);font-size:.94rem}
.civil-hero img{display:block;width:100%;height:auto;border-radius:16px}
.civil-hero .eyebrow{color:#ffe1b9}
.online-card{background:#e5f1fa;border-color:#b6d3e6}
.online-self-paced{background:#e8f2e9;border-color:#bad7c4}
.online-card img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:8px}
.online-card-footer{margin-top:auto;padding-top:10px}
.online-status{display:inline-block;padding:4px 10px;border-radius:999px;background:#cee5f4;color:#164b69;font-size:.85rem;font-weight:800}
.online-self-paced .online-status{background:#d0e7d7;color:#1a543e}
.office-phones a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
@media(max-width:830px){
  .conocer-process{grid-template-columns:1fr}
  .conocer-process li:not(:last-child):after{top:100%;left:34px;width:0;height:17px;border-top:0;border-left:2px solid #658092}
}
@media(max-width:610px){
  .mast{gap:10px}
  .mast-eqa img{width:39px;height:39px}
  .rig-hero .sub-hero-grid{grid-template-columns:1fr}
  .rig-membership{justify-self:start}
  .conocer-hero .sub-hero-grid,.civil-hero .sub-hero-grid{grid-template-columns:1fr}
}
.catalog-search label{margin-bottom:6px}
.sspa-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;list-style:none;padding:0;margin:14px 0 20px}
.sspa-list li{padding:0 12px;border:1px solid var(--line);border-radius:7px;background:#fff}
.sspa-list a{display:flex;justify-content:space-between;gap:14px;align-items:center;min-height:44px;padding:9px 0;color:var(--blue);font-weight:720;text-decoration:none}
.sspa-list a:hover span:first-child{text-decoration:underline;text-underline-offset:3px}
.sspa-list small{display:block;margin:0 0 9px;color:var(--muted)}
@media(max-width:950px){.catalog-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){
  .wordmark img{width:56px;height:56px}.wordmark{gap:6px;font-size:1.14rem}
  .catalog-intro{grid-template-columns:1fr;gap:20px}
  .catalog-cards,.course-grid,.sspa-list,.training-gallery{grid-template-columns:1fr}
  .services .card.service-capacitacion-maritima{
    min-height:385px;
    justify-content:flex-end;
    background-image:linear-gradient(0deg,#081f30 0%,#081f30 27%,#081f30dc 42%,#081f3033 58%,#081f3008 100%),var(--maritime-image);
    background-position:center,center top;
    background-size:100% 100%,100% auto;
    background-repeat:no-repeat;
  }
  .privacy-scroll{max-height:61dvh}
  .credential-logo.eqa{justify-content:flex-start}
  .credential-logo.eqa img{width:140px}
}

/* Identidad visual IPAE · rediseño editorial 2026 */
:root {
  --navy:#0a2036;
  --deep:#071827;
  --ink:#102b42;
  --muted:#435d6e;
  --blue:#086357;
  --bright:#8ee6d1;
  --paper:#f1f7f6;
  --line:#d3e3e3;
  --max:1216px;
  --site-mint:#80e2c6;
}
header { background:#0a2238; border-bottom:1px solid #ffffff20; color:white; }
header :focus-visible { outline-color:var(--bright); }
.mast { min-height:70px; }
.wordmark { font-weight:790; letter-spacing:-.035em; }
.wordmark img,.mast-eqa img {
  width:44px;
  height:44px;
  border-radius:10px;
  background:white;
  padding:3px;
}
.mast-eqa img { width:36px; height:36px; border-radius:8px; }
.mast-contact {
  color:#e8fffb;
  border:1px solid #7ac9bd70;
  border-radius:99px;
  padding:8px 15px;
}
.mast-contact:hover { background:#ffffff16; }
header nav { border-top:1px solid #ffffff24; }
.nav-list { gap:0 clamp(8px,1.13vw,16px); }
.nav-list a { min-height:42px; color:#e1edf4; font-size:.79rem; }
.nav-list a:hover,.nav-list a[aria-current=page] {
  color:var(--site-mint);
  border-bottom-color:var(--site-mint);
}
.skip { z-index:15; }
.btn { border-radius:10px; }
.btn-main { background:var(--blue); }
.btn-main:hover { background:#084d46; }
.hero .btn-main,.cta .btn-main { background:var(--site-mint); color:#092b2c; }
.hero .btn-main:hover,.cta .btn-main:hover { background:#b3f3e1; }
.section { padding-block:clamp(48px,6.1vw,85px); }
.section h2 { letter-spacing:-.051em; }
.card,.info,form { border-radius:19px; }
.card { box-shadow:0 8px 24px #0b20350b; }
footer { background:#081e32; padding-block:45px; }
.foot-legal { border-top-color:#496277; }

.home-hero { isolation:isolate; background:#081e32; }
.home-hero:after { display:none; }
.home-hero .shell {
  min-height:650px;
  display:flex;
  align-items:center;
  padding-block:100px 104px;
}
.home-hero-copy { max-width:min(100%,690px); }
.home-hero .eyebrow {
  display:table;
  color:#e4fff5;
  border:1px solid #a8d9d56e;
  background:#14394abb;
  border-radius:99px;
  padding:7px 15px;
  margin-bottom:20px;
}
.home-hero h1 {
  max-width:none;
  font-size:clamp(2.9rem,5.6vw,5rem);
  line-height:.99;
  letter-spacing:-.063em;
  text-shadow:0 2px 32px #06162470;
}
.home-hero h1>span { display:block; }
.home-hero h1 em { color:#ffd18c; font-style:normal; white-space:nowrap; }
.home-hero .intro { max-width:43ch; margin-block:20px 27px; color:#edf6fb; }
.home-hero .btn { min-height:52px; padding-inline:20px; }
.home-hero .btn-outline { background:#143043b9; border-color:#b7d8dd8a; }
.home-hero .btn-outline:hover { background:#274b60; }
.home-hero-media { position:absolute; inset:0; z-index:-1; margin:0; }
.home-hero-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 27%; }
.home-hero-media:after {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,#061829fa 0%,#071c2bef 25%,#071b2bc9 43%,#081c2b25 70%,#081c2b08),
    linear-gradient(180deg,#061927a6,transparent 32%,transparent 77%,#0718278f);
}
.home-hero-media figcaption {
  position:absolute;
  z-index:1;
  inset:auto max(20px,calc((100% - var(--max))/2)) 24px auto;
  color:white;
  background:#071827df;
  border-radius:99px;
  margin:0;
  padding:5px 10px;
  font-size:.73rem;
}
@media(min-width:1000px) {
  :is(body:not([data-compact])[data-page=inicio],body[data-compact]:has([data-route=inicio]:not([hidden]))) > header {
    position:absolute;
    z-index:4;
    inset:0 0 auto;
    background:linear-gradient(#071827dc,#07182743);
    border-bottom-color:#e6fbff40;
  }
  .home-hero .shell { min-height:min(760px,max(650px,90svh)); padding-top:173px; }
}

.home-services { background:#eff6f5; }
.home-heading { display:grid; grid-template-columns:1.15fr .85fr; gap:24px; align-items:end; }
.home-heading .lead { margin:0 0 15px; max-width:44ch; }
.home-service-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:20px;
  margin-top:24px;
}
.home-service {
  grid-column:span 2;
  display:flex;
  min-width:0;
  flex-direction:column;
  border:1px solid var(--service-border,#bfd7de);
  border-radius:21px;
  overflow:hidden;
  background:var(--service-bg,#e1eff4);
  box-shadow:0 10px 25px #0b203512;
}
.home-service:nth-child(-n+2) { grid-column:span 3; }
.home-service-visual { position:relative; background:#234056; }
.home-service-visual img { display:block; width:100%; height:182px; object-fit:cover; object-position:center 38%; }
.home-service:nth-child(-n+2) img { height:240px; }
.home-service-visual .number {
  position:absolute;
  inset:auto auto 13px 16px;
  display:grid;
  place-items:center;
  min-width:37px;
  min-height:37px;
  border-radius:50%;
  font-size:.77rem;
  font-weight:850;
  color:#103148;
  background:white;
  box-shadow:0 2px 12px #07182740;
}
.home-service-body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:22px; }
.home-service-body h3 { font-size:clamp(1.2rem,2vw,1.6rem); margin-bottom:8px; }
.home-service-body p { margin:0 0 17px; color:var(--muted); }
.home-service-body .link { margin-top:auto; color:var(--service-accent,var(--blue)); }
.home-service.service-capacitacion-maritima { --service-bg:#153b52; --service-border:#153b52; --service-accent:#a6f2e3; color:white; }
.home-service.service-capacitacion-maritima p { color:#ecf6fa; }

.home-services + .cta { background:#eff6f5; padding:0 0 clamp(45px,6vw,79px); }
.home-services + .cta .shell {
  border-radius:25px;
  padding:clamp(27px,4vw,50px);
  background:linear-gradient(112deg,#0c2f44,#0d5657);
}
.home-services + .cta .eyebrow { color:#a1eadc; }
.home-featured > .shell {
  display:grid;
  grid-template-columns:minmax(215px,.66fr) minmax(0,1.34fr);
  gap:clamp(28px,6vw,82px);
  align-items:start;
}
.home-featured-title h2 { max-width:10ch; }
.home-course-list { display:grid; gap:12px; }
.home-course-list .card {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px 22px;
  align-items:center;
  border-radius:14px;
  padding:18px 21px;
  background:#f6fafb;
  border-inline-start:4px solid #79b9af;
  box-shadow:none;
}
.home-course-list .number { grid-column:1; margin:0; font-size:.72rem; }
.home-course-list h3 { grid-column:1; font-size:1.18rem; }
.home-course-list p { grid-column:1; }
.home-course-list .link {
  grid-area:1/2/4/3;
  white-space:nowrap;
  margin:0;
  padding:7px 11px;
  border:1px solid #9bc5c1;
  border-radius:7px;
  text-decoration:none;
}
.home-course-list .link:hover { background:#def1eb; }

/* Las páginas interiores comparten una cabecera y tarjetas del mismo sistema. */
.hero.sub-hero,.hero.maritime-hero {
  background:#edf5f4;
  color:var(--ink);
  padding-block:clamp(20px,4vw,48px);
  border:none;
}
.hero.sub-hero:after,.hero.maritime-hero:after { display:none; }
.hero.sub-hero > .shell,.hero.maritime-hero > .shell {
  padding:clamp(24px,4vw,51px);
  border:1px solid #d7e8e8;
  border-radius:25px;
  background:linear-gradient(120deg,#fff,#f1f9f8);
}
.hero.sub-hero h1,.hero.maritime-hero h1 { font-size:clamp(2.3rem,4.9vw,4.05rem); }
.hero.sub-hero :is(.intro,.crumb,.sspa-documents-note),.hero.maritime-hero :is(.intro,.crumb) { color:#355369; }
.hero.sub-hero .eyebrow,.hero.maritime-hero .medical-intro { color:var(--blue); }
.hero.sub-hero .btn-main,.hero.maritime-hero .btn-main { color:white; background:var(--blue); }
.hero.sub-hero .btn-main:hover,.hero.maritime-hero .btn-main:hover { background:#084d46; }
.hero.sub-hero .btn-outline,.hero.maritime-hero .btn-outline { color:#115c55; border-color:#7aaba8; background:#ffffff9e; }
.hero.sub-hero .btn-outline:hover,.hero.maritime-hero .btn-outline:hover { background:#e1f4ef; }
.hero.sub-hero :focus-visible,.hero.maritime-hero :focus-visible { outline-color:#086357; }
.hero.maritime-hero .medical-docs-link,.hero.maritime-hero .medical-help-toggle { color:#115c55; }
.hero.maritime-hero .medical-help-toggle { border-color:#79a9a4; background:white; }
.hero.maritime-hero .maritime-photo figcaption { color:#486274; }
.hero.maritime-hero .maritime-photo img,.hero.sspa-hero .sspa-photo img { border-radius:16px; }
.hero.rig-hero { background:#faeeeb; }
.hero.rig-hero > .shell { background:linear-gradient(120deg,#fff,#fcf1ed); border-color:#f0ded9; }
.hero.rig-hero .eyebrow { color:#8e3a3a; }
.hero.conocer-hero { background:#eef0fb; }
.hero.conocer-hero > .shell { background:linear-gradient(120deg,#fff,#f4f3fc); border-color:#e0e3f4; }
.hero.conocer-hero .eyebrow { color:#6c3974; }
.hero.civil-hero { background:#fbf1e7; }
.hero.civil-hero > .shell { background:linear-gradient(120deg,#fff,#fff7eb); border-color:#f0e2cc; }
.hero.civil-hero .eyebrow { color:#80582a; }
.hero.sub-hero .whatsapp-icon { fill:#087857; }
.hero.sspa-hero .sspa-documents li { background:#e4f2ee; border-color:#a7cfc2; }
.hero.sspa-hero .sspa-documents :is(strong,span) { color:#184c47; }
@media(max-width:830px) {
  .home-hero .shell { min-height:545px; padding-block:65px 90px; }
  .home-hero h1 { font-size:clamp(2.4rem,6.4vw,4rem); }
  .home-hero-media:after {
    background:linear-gradient(90deg,#061a2af6,#071c2be8 33%,#071b2bb2 60%,#081c2b28);
  }
  .home-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-service,.home-service:nth-child(-n+2) { grid-column:auto; }
  .home-service:nth-child(-n+2) img { height:182px; }
  .home-featured > .shell { grid-template-columns:1fr; }
  .home-featured-title h2 { max-width:none; }
}
@media(max-width:610px) {
  .mast { gap:8px; }
  .wordmark { font-size:.95rem; }
  .wordmark img { width:42px; height:42px; }
  .mast-eqa img { width:33px; height:33px; }
  .menu-toggle { background:#ffffff12; color:white; border:1px solid #90babd8c; border-radius:9px; }
  .nav-list a { border-bottom-color:#ffffff2d; }
  .home-hero .shell { min-height:0; padding-block:222px 72px; }
  .home-hero h1 { font-size:clamp(1.9rem,9.2vw,3.25rem); }
  .home-hero-media img { height:322px; object-position:81% 22%; }
  .home-hero-media:after {
    background:linear-gradient(180deg,#081e3210 20px,#081e3242 135px,#081e32df 223px,#081e32 316px);
  }
  .home-hero-media figcaption { inset:auto 16px 18px auto; }
  .home-hero .actions { display:grid; }
  .home-hero .intro { margin-block:16px 22px; }
  .home-heading { grid-template-columns:1fr; gap:3px; }
  .home-service-grid { grid-template-columns:1fr; }
  .home-service-visual img,.home-service:nth-child(-n+2) img { height:clamp(156px,49vw,231px); }
  .home-course-list .card { display:flex; align-items:flex-start; }
  .home-course-list .link { margin-top:5px; }
}

/* Composiciones interiores IPAE */
.editorial-visual { position:relative; min-width:0; }
.editorial-visual > img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:17px;
}
.editorial-visual > .rig-membership {
  position:absolute;
  inset:auto 12px 12px auto;
  width:min(230px,calc(100% - 24px));
  padding:12px 15px;
  background:#fff;
  border:1px solid #dce6eb;
  border-radius:11px;
  box-shadow:0 7px 22px #0718273a;
}
.editorial-visual .rig-membership p { font-size:.82rem; margin-top:6px; }

.hero.maritime-hero { background:#eaf4f8; }
.hero.maritime-hero > .shell { background:white; }
.maritime-hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.maritime-photo img { aspect-ratio:1; }
.maritime-appointment .validation-actions {
  padding:13px;
  margin-top:17px;
  border:1px solid #bfdadd;
  border-radius:13px;
  background:#f0f7f7;
}
.maritime-appointment .validation-actions .btn { min-height:44px; }
.maritime-roadmap {
  display:grid;
  grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);
  align-items:start;
  gap:clamp(25px,6vw,82px);
}
.maritime-roadmap .maritime-steps { grid-template-columns:1fr; gap:0; margin:0; }
.maritime-roadmap .maritime-steps li {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 16px;
  padding:15px 5px;
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:white;
}
.maritime-roadmap .maritime-steps li:first-child { padding-top:0; }
.maritime-roadmap .maritime-steps li:last-child { border-bottom:0; }
.maritime-roadmap .step-number { grid-row:span 2; margin:0; background:#126d64; }
.maritime-roadmap h3 { margin:0; }
.maritime-ledger { display:grid; gap:17px; margin-top:25px; }
.maritime-ledger .course-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);
  grid-template-areas:"heading details" "action details";
  align-items:start;
  gap:12px 28px;
  background:white;
  border-top:1px solid var(--line);
  border-inline-start:5px solid var(--course-accent);
}
.course-card-heading { grid-area:heading; }
.course-card-heading h3 { font-size:clamp(1.2rem,2vw,1.48rem); margin-top:8px; }
.course-card-action { grid-area:action; }
.maritime-ledger .course-facts {
  grid-area:details;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
  margin:0;
}
.maritime-ledger .course-facts > div {
  padding:11px;
  border-radius:9px;
  background:var(--course-bg);
}

.hero.sspa-hero { background:#dbeee9; }
.hero.sspa-hero > .shell { background:#0f3f3a; border-color:#0f3f3a; color:white; }
.hero.sspa-hero :is(.crumb,.intro,.sspa-documents-note) { color:#e6f6f0; }
.hero.sspa-hero .eyebrow { color:#98e4d0; }
.hero.sspa-hero .btn-main { background:#99e7cd; color:#15352e; }
.hero.sspa-hero .btn-main:hover { background:#b2efdc; }
.hero.sspa-hero .btn-outline { background:#174e47; color:white; border-color:#8bbfb3; }
.hero.sspa-hero .btn-outline:hover { background:#286259; }
.hero.sspa-hero :focus-visible { outline-color:#99e7cd; }
.hero.sspa-hero .sspa-photo img { aspect-ratio:4/3; object-fit:cover; }
.sspa-document-strip {
  display:flex;
  align-items:center;
  gap:clamp(14px,3vw,36px);
  flex-wrap:wrap;
  padding-top:17px;
  margin-top:25px;
  border-top:1px solid #67948c;
}
.sspa-document-strip .sspa-documents { margin:0; }
.sspa-catalog-layout,.conocer-catalog-head {
  display:grid;
  grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);
  align-items:start;
  gap:clamp(20px,4vw,45px);
}
.sspa-catalog-controls .catalog-search {
  padding:17px;
  border:1px solid #c4ddda;
  border-radius:12px;
  background:#e4f1ee;
}
.sspa-catalog-results {
  min-width:0;
  padding:clamp(15px,3vw,27px);
  border:1px solid var(--line);
  border-radius:20px;
  background:white;
}
.sspa-catalog-results .source-note { margin-top:0; }
.sspa-catalog-results .sspa-list li { background:#f4f9f9; }
.sspa-catalog-results .sspa-list li:hover { background:#e8f4f0; }
#cursos-sspa-destacados { background:white; }

.rig-programs {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  padding-block:clamp(40px,6vw,75px);
}
.rig-programs > div {
  min-width:0;
  border:1px solid #e7d9d4;
  border-radius:20px;
  background:#fff9f5;
}
.rig-programs > div:nth-child(2) { background:#f2f7fa; border-color:#d3e3eb; }
.rig-programs .section { padding:clamp(19px,3vw,34px); }
.rig-programs .split { display:grid; width:100%; grid-template-columns:1fr; gap:21px; }
.rig-programs .info { padding:17px; box-shadow:none; }
.rig-enrollment {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  padding:clamp(21px,4vw,42px);
  border:1px solid #badbd3;
  border-radius:19px;
  background:#e2f2ee;
}
.rig-enrollment h3 { margin-top:0; }

.conocer-steps .conocer-process { gap:12px; }
.conocer-steps .conocer-process li {
  border-radius:13px;
  border-top:3px solid var(--ec-accent);
}
.conocer-steps .conocer-process li:after { display:none; }
.conocer-catalog-head { grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); }
.conocer-catalog { display:grid; gap:14px; margin-top:25px; }
.conocer-catalog .conocer-standard {
  display:grid;
  grid-template-columns:minmax(165px,.48fr) minmax(0,1.52fr);
  align-items:stretch;
  gap:0;
  padding:0;
  overflow:hidden;
  background:white;
  border-top:1px solid var(--ec-border);
  border-inline-start:4px solid var(--ec-accent);
}
.conocer-catalog .conocer-standard > img { height:100%; aspect-ratio:unset; border-radius:0; }
.conocer-standard-copy { min-width:0; padding:clamp(16px,3vw,27px); }
.conocer-standard-copy h3 { margin:11px 0 6px; }
.conocer-standard-copy .conocer-actions { display:flex; flex-wrap:wrap; margin-top:8px; }

.civil-method,.about-profile {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
  gap:clamp(22px,5vw,64px);
  align-items:center;
}
.civil-method > img { display:block; width:100%; height:auto; border-radius:17px; }
.civil-options { display:grid; gap:12px; }
.civil-options .card {
  background:#fff9ee;
  border-inline-start:4px solid #c78f51;
  box-shadow:none;
}
.civil-request,.jobs-application { background:#f2f7f7; }
.civil-request .info,.jobs-application .info { border-top:4px solid #21917d; }
:is(.civil-request,.jobs-application) .detail-list { padding:0; list-style:none; }
:is(.civil-request,.jobs-application) .detail-list li {
  padding:8px 8px 8px 12px;
  border-inline-start:3px solid #70b3a6;
  border-radius:4px;
  background:#edf7f4;
}
.jobs-application .jobs-email {
  padding:12px;
  background:#eef7fa;
  border-radius:9px;
}

.hero.online-hero,.hero.about-hero,.hero.contact-hero { background:#e8f2f8; }
.hero.online-hero > .shell,.hero.about-hero > .shell,.hero.contact-hero > .shell {
  border-color:#cddfe8;
  background:linear-gradient(118deg,#fff,#edf6f9);
}
.hero.jobs-hero { background:#e7f1f7; }
.hero.jobs-hero .sub-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(22px,4vw,45px);
  align-items:center;
}
.online-options { display:grid; gap:17px; margin-top:24px; }
.online-options .online-card {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  padding:0;
  overflow:hidden;
  gap:0;
}
.online-options .online-card img { height:100%; min-height:230px; border-radius:0; }
.online-options .online-self-paced img { order:1; }
.online-copy { align-self:center; padding:clamp(19px,4vw,38px); }
.online-copy .online-status { margin-bottom:9px; }
.online-copy h3 { font-size:1.45rem; margin:0 0 10px; }

.about-profile { grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); align-items:start; }
.about-focus { padding:clamp(20px,4vw,36px); border-radius:17px; background:#eef6f6; }
.about-profile .training-gallery { gap:12px; }
.about-profile .training-image img { aspect-ratio:4/3; object-fit:cover; }
.registration-list { display:grid; gap:8px; margin-top:25px; }
.registration-list .card {
  display:grid;
  grid-template-columns:minmax(145px,.75fr) minmax(145px,1fr) minmax(0,1.4fr) minmax(115px,.7fr);
  align-items:center;
  gap:10px 18px;
  border-radius:10px;
  padding:15px;
  box-shadow:none;
}
.registration-list .card .number { margin:0; overflow-wrap:anywhere; }
.registration-list .card h3 { font-size:1.03rem; }
.registration-list .card .link { margin:0; padding:0; }
#certificacion-iso-9001 { background:#e4f2e9; }
#certificacion-iso-9001 .credential-logo {
  padding:20px;
  border:1px solid #bcdcc8;
  border-radius:19px;
  background:#fff;
}

.contact-layout .contact-intake,.contact-layout .contact-channels { min-width:0; }
.contact-layout .contact-intake form { border-top:4px solid #1e8b77; }
.contact-layout .contact-channels .info:first-child { border-top:4px solid #4486a1; }
.contact-office-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.contact-office-grid .office {
  min-width:0;
  margin:0;
  padding:clamp(17px,4vw,29px);
  background:#f3f9f9;
  border:1px solid #c5dddd;
  border-radius:18px;
}
.contact-office-grid .office h3 { margin:0 0 11px; }
.contact-office-grid address { font-style:normal; color:var(--muted); }
.contact-office-grid .office > .contact-links { margin-top:15px; }
.privacy-viewer { border-radius:17px; }
.privacy-header { background:#e9f3f2; padding:17px; }
.privacy-controls { background:white; }

@media(max-width:850px) {
  .maritime-roadmap,.sspa-catalog-layout,.conocer-catalog-head,.civil-method,.about-profile { grid-template-columns:1fr; }
  .registration-list .card { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
  .registration-list .card .number { grid-column:1; }
  .registration-list .card h3 { grid-column:2; }
  .registration-list .card p { grid-column:1/-1; }
  .registration-list .card .link { grid-column:1/-1; }
}
@media(max-width:610px) {
  .maritime-hero-grid,.rig-programs,.rig-enrollment,.hero.jobs-hero .sub-hero-grid,
  .online-options .online-card,.contact-office-grid { grid-template-columns:1fr; }
  .maritime-photo img { aspect-ratio:16/10; }
  .maritime-ledger .course-card { grid-template-columns:1fr; grid-template-areas:"heading" "details" "action"; }
  .maritime-ledger .course-facts { grid-template-columns:1fr; }
  .conocer-catalog .conocer-standard { grid-template-columns:1fr; }
  .conocer-catalog .conocer-standard > img { height:120px; }
  .online-options .online-card img { min-height:0; aspect-ratio:16/9; }
  .online-options .online-self-paced img { order:0; }
  .registration-list .card { grid-template-columns:1fr; }
  .registration-list .card h3 { grid-column:1; }
}
