/* HOME only: task access remains functional without JavaScript. */
.home-page{--home-paper:#fffdf8;--home-line:#c8c9c0;background:var(--home-paper)}
.home-page :is(a,button,summary):focus-visible{outline:3px solid #075bb6;outline-offset:5px}
.home-page :is(.welcome-card,.contact) :is(a,button,summary):focus-visible{outline-color:#ffd719}
.home-page :is(section[id],main[id]){scroll-margin-top:100px}
.home-page .site-header{background:var(--home-paper)}
.home-page .home-start{max-width:1440px;margin:auto;padding:64px clamp(20px,5vw,80px) 40px;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:36px 64px}
.home-page .home-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.12em;margin:0 0 20px}
.home-page .home-intro h1{font:400 clamp(2.8rem,5.2vw,5rem)/1.04 "Archivo Black",sans-serif;letter-spacing:-.06em;margin:0 0 22px}
.home-page .home-intro h1 em{font-style:normal;color:#bd1524}
.home-page .home-lead{font-size:1.2rem;line-height:1.6;max-width:53ch;margin:0 0 16px}
.home-page .home-assurance{font-size:.96rem;margin:0;font-weight:700}
.home-page .welcome-card{grid-column:2;grid-row:1 / 3;align-self:stretch;width:auto;max-width:none;margin:0;box-shadow:none;border-left:0;background:#062b3b;color:#fff;padding:32px;border-top:6px solid #ffd719}
.home-page .welcome-card h2{font-size:clamp(1.6rem,2.3vw,2.1rem);line-height:1.2;letter-spacing:-.03em;margin:0 0 26px}
.home-page .welcome-card dl{margin:0 0 24px;display:grid;gap:22px}
.home-page .welcome-card dt{font-size:.8rem;color:#bdd2dc;margin-bottom:5px}
.home-page .welcome-card dd{margin:0;font-size:1.05rem;line-height:1.55}
.home-page .welcome-card dd strong{font-size:1.25rem}
.home-page .home-map-link{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:48px;background:#ffd719;color:#062b3b;padding:12px 16px;text-decoration:none;font-weight:800}
.home-page .home-prepare-link{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;margin-top:10px;text-underline-offset:4px}
.home-page .welcome-card>p:last-child{font-size:.93rem;line-height:1.6;border-top:1px solid #57707b;padding-top:20px;margin:16px 0 0}
.home-page .welcome-card>p:last-child a{display:inline-block;text-underline-offset:4px;min-height:44px;padding-block:8px}
.home-page .home-tasks{grid-column:1;min-width:0}
.home-page .home-tasks h2{font-size:1.25rem;margin:0 0 16px}
.home-page .home-task-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.home-page .home-task{display:flex;flex-direction:column;gap:8px;border:1px solid var(--home-line);padding:18px;text-decoration:none;line-height:1.5;background:white}
.home-page .home-task-name{display:flex;justify-content:space-between;gap:12px;font-size:1.04rem;font-weight:800;line-height:1.3}
.home-page .home-task>span:last-child{font-size:.92rem;color:#425964}
.home-page .home-task:hover{border-color:#062b3b;background:#f5f0e6}
.home-page .home-continuation{display:flex;justify-content:space-between;gap:20px;padding:18px clamp(20px,5vw,80px);border-block:1px solid var(--home-line);background:#f3f0e8}
.home-page .home-continuation p{margin:0;font-size:.95rem}
.home-page .home-continuation a{display:inline-flex;gap:8px;align-items:center;min-height:44px;font-weight:800;text-underline-offset:4px}
.home-page .home-project-intro{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;padding:72px clamp(20px,5vw,80px);gap:48px;align-items:center}
.home-page .home-project-intro img{width:100%;aspect-ratio:1.3;object-fit:cover}
.home-page .home-project-intro h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.045em;margin:0 0 20px}
.home-page .home-project-intro p:not(.home-eyebrow){max-width:45ch;font-size:1.1rem;line-height:1.6}
.home-page .home-project-intro a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:800;text-underline-offset:4px}
.home-page .home-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1099px){.home-page .home-start{gap:32px;padding-top:40px;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr)}.home-page .welcome-card{padding:24px}.home-page .home-task-grid{grid-template-columns:1fr}.home-page .home-task{padding:16px}.home-page .home-continuation{flex-wrap:wrap;gap:4px 24px}}
@media(max-width:700px){.home-page .home-start{grid-template-columns:1fr;padding:32px 20px;gap:28px}.home-page .home-intro h1{font-size:clamp(2.4rem,10vw,3.6rem)}.home-page .home-lead{font-size:1.0625rem}.home-page .home-tasks{grid-row:2;grid-column:1}.home-page .welcome-card{grid-column:1;grid-row:3}.home-page .home-task-grid{grid-template-columns:1fr}.home-page .home-task{gap:4px}.home-page .home-task-name{font-size:1.1rem}.home-page .home-project-intro{grid-template-columns:1fr;gap:28px;padding:40px 20px}.home-page .home-project-intro img{aspect-ratio:1.65}.home-page .home-continuation{padding:14px 20px;display:grid;gap:10px}.home-page .home-continuation a{display:flex}.home-page .home-eyebrow{font-size:.72rem;letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){html:has(.home-page){scroll-behavior:auto}.home-page *{animation:none!important;transition:none!important}}

.home-page .welcome-card dl div{display:block}
.home-page .welcome-card a{color:inherit}
.home-page .welcome-card .home-map-link{color:#062b3b;display:flex}
.home-page .welcome-card .home-prepare-link{display:flex}

.home-page .home-visit-shortcut{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:8px;font-size:.9rem;text-underline-offset:4px}
.home-page #visitanos{scroll-margin-top:100px}
