/* AndrewDesign 1.1.0-rc1 - staging only. Overrides for compiled 1.0.0 CSS. */
/* Nested WordPress nav: arrow is a separate accessible button. */
.primary-nav .menu-item-has-children { position: relative; display: flex; align-items: center; flex-wrap: wrap; }
.primary-nav .menu-item-has-children > a { flex: 1; min-width: 0; }
.primary-nav .submenu-toggle { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 2.75rem; min-width: 2.75rem; min-height: 2.75rem; margin-left: .2rem; border: 1px solid #ffffff45; background: transparent; color: #fff; border-radius: .55rem; cursor: pointer; }
.primary-nav .submenu-toggle span { display: block; font-size: 1.5rem; line-height: 1; transition: transform .2s ease; }
.primary-nav .is-submenu-open > .submenu-toggle span { transform: rotate(180deg); }
.primary-nav .submenu-toggle:focus-visible, .primary-nav .sub-menu a:focus-visible { outline: 3px solid #f0bd69; outline-offset: 2px; }
.primary-nav .sub-menu { list-style: none; margin: 0; padding: .45rem; width: 100%; border: 1px solid #ffffff24; background: #0b2234; border-radius: .85rem; }
.primary-nav.has-submenu-js .menu-item-has-children > .sub-menu { display: none; }
.primary-nav.has-submenu-js .menu-item-has-children.is-submenu-open > .sub-menu { display: block; }
.primary-nav .sub-menu li { display: block; }
.primary-nav .sub-menu a { padding: .65rem .8rem; min-height: 2.75rem; border: none; color: #f3f6fa; border-radius: .5rem; text-decoration: none; white-space: normal; }
.primary-nav .sub-menu a:hover, .primary-nav .sub-menu .current-menu-item > a { background: #ffffff14; color: #f1c17f; }
@media (min-width: 1200px) {
 .primary-nav .menu-item-has-children { flex-wrap: nowrap; }
 .primary-nav .menu-item-has-children > a { flex: none; }
 .primary-nav .submenu-toggle { flex-basis: 2.2rem; min-width: 2.2rem; min-height: 2.5rem; border-color: transparent; margin-left: -.4rem; }
 .primary-nav .sub-menu { position: absolute; top: calc(100% + .6rem); left: 0; width: 16.5rem; z-index: 100; padding: .55rem; box-shadow: 0 14px 34px #0005; }
 .primary-nav .sub-menu a { font-size: .9rem; padding: .65rem .7rem; }
}
@media (max-width: 1199px) {
 .primary-nav .menu-item-has-children { padding-right: .15rem; }
 .primary-nav .sub-menu { flex-basis: 100%; }
}
/* Mobile hero - real markup classes, no DOM text matching, no inline JS. */
@media (max-width: 767px) {
 .home-funnel .hero__signals { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: .8rem; margin: 1.5rem 0 0; padding: 1rem 0 0; }
 .home-funnel .hero__signals li { display: flex; width: 100%; align-items: center; justify-content: flex-start; gap: .7rem; margin: 0; text-align: left; line-height: 1.5; }
}
/* Featured cards: mobile screenshot in secondary cards. */
.featured-project-card:not(.featured-project-card--lead) .featured-project-card__image { object-position: center top; }
.featured-project-card:not(.featured-project-card--lead) .featured-project-card__body > p:not(.featured-project-card__eyebrow) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; line-clamp: 4; overflow: hidden; }
@media (prefers-reduced-motion: reduce) {
 .primary-nav .submenu-toggle span, .featured-project-card__image { transition: none; }
}

/* Dyskretne przejscie z poradnikow do kontaktu. */
.home-blog__cta { display: flex; justify-content: space-between; align-items: center; gap: 1.25rem; margin-top: 2rem; padding: 1.5rem; border: 1px solid var(--color-border); background: var(--color-surface); border-radius: 1rem; }
.home-blog__cta p { color: var(--color-ink); font-weight: 600; max-width: 35rem; }
.home-blog__cta .button { white-space: nowrap; }
@media (max-width: 767px) { .home-blog__cta { flex-direction: column; align-items: stretch; } .home-blog__cta .button { text-align: center; } }
