@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&display=swap');

/* Shared interior-page design system */
:root { --ev-navy:#071d3b; --ev-navy-2:#0d2f5d; --ev-gold:#d49a21; --ev-gold-soft:#f5dfae; --ev-cream:#f7f5f0; --ev-ink:#132238; --ev-muted:#647085; --ev-line:#dce2e9; }
body { font-family:'Manrope',sans-serif; color:var(--ev-ink); background:var(--ev-cream); }
body .navbar { background:rgba(255,255,255,.96); border-bottom:1px solid rgba(7,29,59,.08); box-shadow:none; backdrop-filter:blur(14px); }
body .nav-container { max-width:1180px; height:82px; padding-inline:28px; }
body .logo-img { height:58px; max-width:154px; }
body .nav-menu { gap:1.65rem; align-items:center; }
body .nav-link { color:#34445b; font-size:.86rem; font-weight:700; letter-spacing:.01em; }
body .nav-link:hover, body .nav-link.active { color:var(--ev-navy)!important; }
body .nav-link::after { background:var(--ev-gold); bottom:-10px; }
body .nav-item:last-child .nav-link { background:var(--ev-navy); border-radius:6px; color:#fff!important; padding:.7rem 1rem; }
body .nav-item:last-child .nav-link::after { display:none; }
body .nav-item:last-child .nav-link:hover { background:var(--ev-gold); }

.catalogue-page .hero, .services-page .page-header, .blog-page .page-header {
    position:relative; isolation:isolate; overflow:hidden; margin:0; padding:154px 0 84px; color:#fff; text-align:left; background:linear-gradient(112deg,#061831 0%,#092653 60%,#0f3971 100%);
}
.catalogue-page .hero::before, .services-page .page-header::before, .blog-page .page-header::before { content:''; position:absolute; z-index:-1; inset:0; background:radial-gradient(circle at 88% 15%,rgba(212,154,33,.26),transparent 23rem); }
.catalogue-page .hero::after, .services-page .page-header::after, .blog-page .page-header::after { content:''; position:absolute; z-index:-1; width:37rem; height:37rem; right:-9rem; bottom:-20rem; border:1px solid rgba(245,223,174,.35); border-radius:50%; box-shadow:0 0 0 4rem rgba(245,223,174,.04),0 0 0 8rem rgba(245,223,174,.025); }
.catalogue-page .hero-container, .services-page .page-header .container, .blog-page .page-header .container { display:block; max-width:1180px; padding-inline:28px; }
.catalogue-page .hero-content, .services-page .page-header .container, .blog-page .page-header .container { max-width:780px; }
.catalogue-page .hero-content::before, .services-page .page-header .container::before, .blog-page .page-header .container::before { content:'Evaltix · soluciones profesionales'; display:block; margin-bottom:1.1rem; color:var(--ev-gold-soft); font-size:.73rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.catalogue-page .hero h1, .services-page .page-header h1, .blog-page .page-header h1 { margin:0 0 1rem; color:#fff; font-family:'Newsreader',Georgia,serif; font-size:clamp(3.1rem,5vw,5.2rem); font-weight:500; letter-spacing:-.055em; line-height:.96; }
.catalogue-page .hero p, .services-page .page-header p, .blog-page .page-header p { max-width:610px; color:#d5deeb; font-size:1.05rem; line-height:1.75; opacity:1; }

/* Complete service catalogue: an Explore surface */
.catalogue-page .tabs-container { max-width:1180px; padding:76px 28px 92px; }
.catalogue-page .tabs-header { position:sticky; top:82px; z-index:10; gap:0; margin-bottom:2.4rem; padding:8px; overflow:auto; border:1px solid var(--ev-line); background:rgba(255,255,255,.96); box-shadow:0 8px 22px rgba(7,29,59,.08); }
.catalogue-page .tab-button { flex:0 0 auto; padding:.7rem .9rem; border:0; border-radius:3px; background:transparent; color:#536278; font-family:inherit; font-size:.76rem; font-weight:800; line-height:1.25; }
.catalogue-page .tab-button:hover { background:#f4f0e6; color:var(--ev-navy); }
.catalogue-page .tab-button.active { background:var(--ev-navy); color:#fff; }
.catalogue-page .service-category { margin:0; }
.catalogue-page .category-header { margin:0 0 1px; padding:2.35rem 2.5rem; border-radius:0; color:#fff; background:var(--ev-navy); }
.catalogue-page .category-title { margin:0 0 .7rem; color:#fff; font-family:'Newsreader',Georgia,serif; font-size:clamp(2rem,3vw,3rem); font-weight:500; letter-spacing:-.04em; }
.catalogue-page .category-title i { color:var(--ev-gold); font-size:1.3rem; }
.catalogue-page .category-description { max-width:720px; color:#d4deea; font-size:.95rem; line-height:1.75; opacity:1; }
.catalogue-page .services-grid { grid-template-columns:repeat(3,1fr); gap:1px; margin:0; background:var(--ev-line); border:1px solid var(--ev-line); }
.catalogue-page .service-card { min-height:100%; display:flex; flex-direction:column; padding:1.8rem; border:0; border-radius:0; box-shadow:none; background:#fff; color:inherit; text-decoration:none; cursor:pointer; }
.catalogue-page .service-card:hover { transform:none; background:#fbf9f4; box-shadow:inset 0 -3px 0 var(--ev-gold); }
.catalogue-page .service-card:focus-visible { outline:2px solid var(--ev-gold); outline-offset:-2px; }
.catalogue-page .service-image { display:none; }
.catalogue-page .service-card-header { align-items:flex-start; gap:.85rem; margin:0 0 1rem; }
.catalogue-page .service-icon { width:34px; height:34px; flex:0 0 34px; border-radius:0; background:#f3ead6; color:#9f6c12; font-size:.85rem; }
.catalogue-page .service-title { color:var(--ev-navy); font-family:'Newsreader',Georgia,serif; font-size:1.45rem; font-weight:500; line-height:1.08; }
.catalogue-page .service-description { color:var(--ev-muted); font-size:.88rem; line-height:1.7; }
.catalogue-page .service-features { display:none; }
.catalogue-page .service-card::after { content:'Ver detalle del servicio  →'; margin-top:auto; padding-top:1.5rem; color:#9f6c12; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }

/* Services overview */
.services-page .services-showcase { padding:78px 0 92px; background:#fff; }
.services-page .services-grid { grid-template-columns:repeat(3,1fr); gap:1px; max-width:1180px; padding:0 28px; background:var(--ev-line); }
.services-page .service-card { display:flex; min-height:300px; flex-direction:column; padding:1.8rem; border:0; border-radius:0; box-shadow:none; overflow:visible; }
.services-page .service-card::before { display:none; }
.services-page .service-card:hover { transform:none; background:#fbf9f4; box-shadow:inset 0 -3px 0 var(--ev-gold); }
.services-page .service-icon { width:40px; height:40px; margin:0 0 1.5rem; border-radius:0; background:#f3ead6; color:#9f6c12; font-size:1rem; }
.services-page .service-category { margin:0 0 .7rem; padding:0; border-radius:0; background:none; color:#9f6c12; font-size:.7rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.services-page .service-title { color:var(--ev-navy); font-family:'Newsreader',Georgia,serif; font-size:1.65rem; font-weight:500; line-height:1.08; }
.services-page .service-description { color:var(--ev-muted); font-size:.88rem; line-height:1.7; }
.services-page .service-features { display:none; }
.services-page .service-action { margin-top:auto; padding-top:1.35rem; }
.services-page .btn-primary, .services-page .btn-outline { padding:0; border:0; border-radius:0; background:none; color:#9f6c12; font-size:.74rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.services-page .btn-outline { display:none; }
.services-page .cta-section { padding:78px 0; text-align:left; background:#eaf0f2; color:var(--ev-navy); }
.services-page .cta-section .container { max-width:1180px; padding-inline:28px; }
.services-page .cta-section h2 { max-width:650px; color:var(--ev-navy); font-family:'Newsreader',Georgia,serif; font-size:clamp(2.2rem,3.5vw,3.5rem); font-weight:500; letter-spacing:-.045em; }
.services-page .cta-section p { max-width:540px; color:var(--ev-muted); font-size:1rem; opacity:1; }
.services-page .cta-section .btn { display:inline-flex; margin:1rem 0 0; border-radius:4px; background:var(--ev-navy); color:#fff; }

/* Blog: an editorial Explore surface */
.blog-page .blog-posts { padding:76px 0 92px; background:#fff; }
.blog-page .blog-grid { grid-template-columns:repeat(3,1fr); gap:1px; margin:0; background:var(--ev-line); border:1px solid var(--ev-line); }
.blog-page .blog-card { border-radius:0; box-shadow:none; }
.blog-page .blog-card:hover { transform:none; box-shadow:inset 0 -3px 0 var(--ev-gold); }
.blog-page .blog-image { height:125px; justify-content:flex-start; padding:1.6rem; background:var(--ev-navy); }
.blog-page .blog-icon { color:var(--ev-gold); font-size:2rem; }
.blog-page .blog-category { top:1rem; right:1rem; left:auto; padding:0; border-radius:0; background:none; color:var(--ev-gold-soft); font-size:.67rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.blog-page .blog-content { padding:1.65rem; }
.blog-page .blog-meta { color:#7b8797; font-size:.74rem; }
.blog-page .blog-content h2 { color:var(--ev-navy); font-family:'Newsreader',Georgia,serif; font-size:1.6rem; font-weight:500; line-height:1.1; }
.blog-page .blog-content p { color:var(--ev-muted); font-size:.88rem; }
.blog-page .read-more { margin-top:.7rem; color:#9f6c12; font-size:.76rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.blog-page .newsletter { padding:78px 0; color:#fff; text-align:left; background:var(--ev-navy); }
.blog-page .newsletter-content { max-width:760px; }
.blog-page .newsletter-content h2 { font-family:'Newsreader',Georgia,serif; font-size:clamp(2.1rem,3.2vw,3.3rem); font-weight:500; letter-spacing:-.04em; }
.blog-page .newsletter-content p { color:#d4deea; font-size:1rem; opacity:1; }
.blog-page .newsletter-form { margin:1.8rem 0 0; }
.blog-page .newsletter-form input { border-radius:3px; }
.blog-page .newsletter-form button { padding:0 1.25rem; border:0; border-radius:3px; background:var(--ev-gold); color:var(--ev-ink); font-family:inherit; font-weight:800; }

/* Footer */
body .footer { padding:65px 0 22px; background:var(--ev-navy); }
body .footer-section h3 { font-family:'Newsreader',Georgia,serif; font-size:2rem; font-weight:500; }
body .footer-section h4 { color:var(--ev-gold-soft); font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; }
body .footer-section p, body .footer-section ul li a, body .footer-bottom { color:#b9c5d5; font-size:.86rem; }
body .social-links a { width:35px; height:35px; border-radius:0; }
body .social-links a:hover { background:var(--ev-gold); color:var(--ev-navy); }

@media (max-width:900px) { .catalogue-page .services-grid, .services-page .services-grid, .blog-page .blog-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:768px) {
    body .nav-container, .catalogue-page .hero-container, .services-page .page-header .container, .blog-page .page-header .container { padding-inline:20px; }
    body .nav-menu { top:82px; padding:1rem 0 1.5rem; gap:0; } body .nav-menu .nav-link { display:block; padding:.85rem; } body .nav-item:last-child .nav-link { display:inline-flex; margin-top:.45rem; }
    .catalogue-page .hero, .services-page .page-header, .blog-page .page-header { padding:128px 0 66px; }
    .catalogue-page .tabs-container { padding:48px 20px 70px; }
    .catalogue-page .tabs-header { top:82px; margin-inline:-20px; } .catalogue-page .category-header { padding:1.7rem; }
    .catalogue-page .services-grid, .services-page .services-grid, .blog-page .blog-grid { grid-template-columns:1fr; }
    .services-page .services-grid { padding:0 20px; }
    .services-page .cta-section .container { padding-inline:20px; }
    .blog-page .newsletter { padding:60px 20px; }
}
@media (max-width:480px) { .catalogue-page .hero h1, .services-page .page-header h1, .blog-page .page-header h1 { font-size:3rem; } .catalogue-page .category-title { font-size:2.2rem; } .blog-page .newsletter-form { flex-direction:column; } .blog-page .newsletter-form button { min-height:48px; } }
