/* Responsive refinements: navigation, readable typography and touch-friendly layouts. */
.nav-dropdown-trigger{display:flex;align-items:center;gap:4px}
.nav-dropdown-trigger>a{display:block}
.submenu-toggle{display:grid;width:28px;height:28px;padding:0;place-items:center;border:0;background:transparent;color:inherit;font:inherit;font-size:16px;cursor:pointer;transition:transform .2s}
.nav-dropdown:hover .submenu-toggle,.nav-dropdown:focus-within .submenu-toggle{transform:rotate(180deg)}

@media(max-width:1120px){
    .menu-toggle{display:block;min-width:44px;min-height:44px;border-radius:8px;color:var(--ink);cursor:pointer}
    .menu-toggle:hover{background:#edf5f8}
    .main-nav{display:none;position:absolute;top:87px;right:0;left:0;max-height:calc(100vh - 87px);padding:18px max(20px,calc((100vw - 1160px)/2));overflow-y:auto;border-bottom:1px solid var(--line);background:rgba(255,255,255,.99);box-shadow:0 18px 35px rgba(7,31,44,.1);flex-direction:column;align-items:stretch;gap:3px}
    .main-nav.is-open{display:flex}
    .main-nav>a:not(.btn),.nav-dropdown-trigger>a{padding:9px 12px;border-radius:7px}
    .main-nav>a.active:not(.btn),.nav-dropdown.active .nav-dropdown-trigger>a{background:#eaf4f8;color:var(--blue)}
    .main-nav>a.active:not(.btn)::after,.nav-dropdown.active .nav-dropdown-trigger>a::after{display:none!important}
    .main-nav .btn{margin-top:7px}
    .nav-dropdown{display:flex;flex-direction:column}
    .nav-dropdown-trigger{justify-content:space-between}
    .submenu-toggle{width:44px;height:44px;border-radius:7px;background:#edf5f8;color:var(--blue)}
    .nav-dropdown:hover .submenu-toggle,.nav-dropdown:focus-within .submenu-toggle{transform:none}
    .nav-dropdown.submenu-open .submenu-toggle{transform:rotate(180deg)}
    .nav-submenu{display:none;position:static;width:auto;margin:5px 0 7px 18px;padding:2px 0 2px 10px;border:0;border-left:2px solid #d6e7ef;border-radius:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none}
    .nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{transform:none}
    .nav-dropdown.submenu-open .nav-submenu{display:block;opacity:1;visibility:visible;transform:none}
    .nav-submenu::before{display:none}
    .nav-submenu a{padding:8px 10px;font-size:13px}
}

@media(max-width:900px){
    .solutions-grid{grid-template-columns:1fr!important}
    .training-intro{gap:22px}
    .expertise-row{gap:32px;padding:48px 0}
}

@media(max-width:600px){
    .main-nav{top:75px;max-height:calc(100vh - 75px);padding:14px}
    .hero{min-height:auto;padding:58px 0}
    .hero h1,.page-hero h1{font-size:clamp(34px,11vw,42px);line-height:1.07}
    .hero p,.page-hero p{font-size:16px}
    .page-hero{padding:52px 0 46px!important;min-height:0!important}
    .section{padding:58px 0}
    .section-heading{margin-bottom:32px}
    .section-heading h2,.prose-grid h2,.cta h2,.empty-state h2,.training-intro h2{font-size:clamp(29px,9vw,38px)}
    .actions{gap:10px}
    .actions .btn{width:100%}
    .card,.offer-card{padding:24px}
    .expertise-row h2{font-size:29px}
    .contact-form{padding:20px}
    .training-card h3{font-size:21px}
    .training-cta{padding:52px 0}
    .footer{padding-top:50px}
    .whatsapp{right:12px;bottom:12px;padding:11px 14px}
}

@media(max-width:360px){
    .container{width:calc(100% - 24px)}
    .brand img{width:138px}
    .hero h1,.page-hero h1{font-size:32px}
    .btn{padding:12px 15px}
    .card,.offer-card,.training-card,.contact-form{padding:19px}
}
.admin-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.admin-page-card{display:flex;min-height:175px;padding:25px;border:1px solid var(--line);border-radius:14px;background:#fff;flex-direction:column;transition:.2s}.admin-page-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 14px 35px rgba(7,59,91,.08)}.admin-page-card span{color:var(--blue);font-size:12px;font-weight:800}.admin-page-card strong{margin:auto 0;font-size:21px}.admin-page-card small{color:var(--muted)}.admin-editor{max-width:900px}.admin-content-section{display:grid;gap:18px;margin:0 0 24px;padding:28px;border:1px solid var(--line);border-radius:14px;background:#fff}.admin-content-section legend{padding:0 10px;color:var(--blue-dark);font-size:18px;font-weight:800}.admin-content-section label{display:flex;gap:7px;flex-direction:column;font-size:14px;font-weight:700}.admin-content-section input,.admin-content-section textarea{width:100%;padding:12px 13px;border:1px solid #bdcbd2;border-radius:7px;background:#fff;font:inherit;font-weight:400}.admin-content-section input:focus,.admin-content-section textarea:focus{outline:3px solid rgba(9,109,169,.13);border-color:var(--blue)}.admin-save,.admin-actions{display:flex;align-items:center;gap:14px}.error-text{color:#9d2a1b}@media(max-width:900px){.admin-page-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.admin-page-grid{grid-template-columns:1fr}.admin-content-section{padding:20px}.admin-save,.admin-actions{align-items:stretch;flex-direction:column}.admin-save .btn{width:100%}}
