.header nav { margin-left: auto; margin-right: 34px; }
.header-tools, .language-switch { display: flex; align-items: center; gap: 12px; }
.language-switch { gap: 7px; font-size: 10px; letter-spacing: .5px; }
.language-switch a { padding: 8px 2px; color: #767a6f; }
.language-switch a[aria-current] { color: var(--ink); border-bottom: 1px solid var(--orange); }
.language-switch a:hover { color: var(--orange); }
.hero .intro { max-width: 510px; }
.hero-note { line-height: 1.8; max-width: 530px; }
.service-grid h3 { font-size: 31px; }
.service-grid p { min-height: 126px; }
.service-footer { line-height: 1.8; }
.fde-note { margin-top: 28px; padding: 20px 24px; border-left: 2px solid var(--orange); background: #e7e8dd; }
.fde-note h3 { font-size: 17px; font-weight: 500; letter-spacing: -.3px; margin-bottom: 8px; }
.fde-note p { max-width: 850px; font-size: 13px; color: #616856; margin: 0; }
.about-layout .portrait img { height: 420px; }
.footer-legal { width: 100%; display: flex; justify-content: space-between; gap: 20px; font-size: 10px; }
.footer { flex-wrap: wrap; }
.footer-legal button { border: 0; background: none; font-size: 10px; color: #626b57; padding: 0; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.consent-banner { position: fixed; z-index: 20; bottom: 22px; left: 22px; width: min(440px,calc(100% - 44px)); padding: 23px; background: #fffef9; color: var(--ink); border: 1px solid #d3d8c7; box-shadow: 0 10px 45px #19211720; }
[hidden] { display: none !important; }
.consent-banner h2 { font-size: 18px; letter-spacing: -.5px; margin-bottom: 10px; }
.consent-banner p { font-size: 12px; color: #636b59; margin-bottom: 17px; }
.consent-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.consent-actions button { background: transparent; border: 1px solid #9ca68d; font-size: 11px; color: #30382a; padding: 10px 13px; cursor: pointer; }
.consent-actions button:hover { border-color: #c44823; background: #f6f5ef; }
#privacy-dialog { width: min(640px,calc(100% - 32px)); max-height: 85vh; border: 1px solid #cbd3bd; padding: 35px; background: #fffef9; color: var(--ink); }
#privacy-dialog::backdrop { background: #1d261c70; }
#privacy-dialog h2 { font-size: 28px; margin: 12px 0 20px; }
#privacy-dialog p { font-size: 13px; line-height: 1.8; }
#privacy-dialog a { text-decoration: underline; }
.privacy-close { position: absolute; right: 16px; top: 12px; font-size: 27px; background: none; border: 0; cursor: pointer; }
html[lang=pl] h1 { font-size: clamp(44px,4.3vw,61px); letter-spacing: -3px; }
html[lang=pl] .actions { gap: 20px; flex-wrap: wrap; }
html[lang=pl] .section-top > p { max-width: 390px; }
html[lang=pl] .service-grid h3 { font-size: 29px; }
@media(max-width:1100px) { .header nav { gap: 22px; margin-right: 24px; } html[lang=pl] .service-grid h3 { font-size: 25px; } .service-grid p { min-height: 155px; } }
@media(max-width:800px) { .header nav { gap: 18px; margin-right: 22px; } .service-grid h3 { font-size: 25px; } .service-grid p { min-height: 165px; } .service-grid .service-footer { min-height: 46px; } html[lang=pl] h1 { font-size: 60px; } .about-layout .portrait img { height: 390px; } }
@media(max-width:680px) and (min-width:561px) { .header { padding-left: 24px; padding-right: 24px; } .header nav { font-size: 11px; gap: 12px; margin-right: 16px; } .wordmark { font-size: 23px; } .nav-cta span { margin-left: 6px; } }
@media(max-width:560px) { .header nav { margin: 0; } .header-tools { gap: 17px; } .service-grid h3,html[lang=pl] .service-grid h3 { font-size: 31px; } .service-grid p { min-height: 0; } .service-grid .service-footer { min-height: 0; } .fde-note { padding: 16px 18px; } .about-layout .portrait img { height: 350px; } .footer-legal { flex-direction: column; align-items: flex-start; gap: 10px; } html[lang=pl] h1 { font-size: clamp(34px,9.1vw,48px); letter-spacing: -1.8px; } html[lang=pl] h2 { font-size: 32px; } html[lang=pl] .hero .actions { gap: 17px; } .consent-banner { bottom: 12px; left: 12px; width: calc(100% - 24px); padding: 18px; } .consent-banner h2 { font-size: 17px !important; } #privacy-dialog { padding: 25px; } }
