/* Comun pentru toate paginile: latimea, antetul, butoanele, subsolul */
.wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
@media (max-width: 600px) { .wrap { padding: 0 16px; } }

header.top { position: sticky; top: 0; z-index: 20; background: rgba(250,250,247,.92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--linie); }
header.top .wrap { display: flex; align-items: center; gap: 24px; height: 68px; }
header.top .logo img { height: 30px; width: auto; }
header.top nav { display: flex; gap: 22px; margin-left: auto; font-weight: 500; font-size: 15px; }
header.top nav a { text-decoration: none; color: var(--grafit); }
header.top nav a:hover { color: var(--verde); }
.btn { display: inline-flex; align-items: center; gap: 8px; border: 0; border-radius: 999px; padding: 13px 24px; font-weight: 600; text-decoration: none; background: var(--verde); color: #fff; transition: background .15s; }
.btn:hover { background: #349a5e; }
.btn.alt { background: transparent; color: var(--verde-inchis); box-shadow: inset 0 0 0 2px var(--verde); }
.btn.alt:hover { background: var(--moale); }
@media (max-width: 760px) { header.top nav { display: none; } header.top .btn { margin-left: auto; padding: 10px 18px; } }

footer { padding: 56px 0 40px; font-size: 14px; color: var(--gri); }
footer .wrap { display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; }
footer img { height: 26px; width: auto; margin-bottom: 14px; }
footer .legal { grid-column: 1 / -1; border-top: 1px solid var(--linie); padding-top: 20px; font-size: 13px; }
@media (max-width: 700px) { footer .wrap { grid-template-columns: minmax(0, 1fr); } }
