/* Czytelniejsza typografia, spokojniejsze hero i obsługa karuzeli. */
body{font-size:16px;line-height:1.75}
.home-page .site-header{background:rgba(37,42,38,.76)}
.site-header{gap:26px}
.brand{width:180px;align-items:stretch}
.brand img{width:110%;max-width:none;height:auto;max-height:none;margin-inline:-5%}
.brand-tagline{display:block;width:100%;height:auto;aspect-ratio:10;font-size:13px;font-weight:500;letter-spacing:0;line-height:1;margin-top:4px;fill:currentColor}
.desktop-nav{font-size:16px;gap:27px}
.header-cta{font-size:15px;gap:20px;padding:12px 18px;min-height:48px;white-space:nowrap}
.social-link{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;flex:0 0 46px;border:1px solid #ffffff65;transition:background .2s,color .2s}
.social-link:hover{background:var(--paper);color:var(--ink)}
.social-link svg{width:22px;height:22px}
.site-header>.social-link{margin-left:-13px}
.menu-toggle{min-width:44px;min-height:44px}
.hero-content{top:48%;transform:translateY(-25%)}
.hero-link{margin-top:35px;font-size:16px;gap:28px;padding-bottom:12px}
.hero-link svg{width:20px;height:20px}
.hero-bottom{font-size:14px;gap:25px}
.hero-stage{--hero-accent:#c6b58b}
.hero-content h1 .second-line{color:var(--hero-accent)}
.story-progress{height:10px;z-index:1;pointer-events:none}
.story-progress span{background:var(--hero-accent)}
.scroll-cue,.skip-story{font-size:14px}
.scroll-circle{width:44px;height:44px;font-size:20px}
.hero-topline,.hero-note,.film-slot,.story-counter,.card-number,.fleet-index,.fleet-image-number,.faq-index{display:none}
.eyebrow{font-size:14px;letter-spacing:.12em}
.heading-aside,.about-copy>p,.contact-intro,.cta-layout p,.service-caption p,.detail-subtitle,.detail-content .entry{font-size:16px;line-height:1.8}
.heading-aside{max-width:390px}
.about-copy .signature{font-size:15px}
.text-link,.button,.card-more{font-size:15px}
.button{min-height:56px}
.text-link{line-height:1.5;gap:20px}
.years{min-width:245px;padding:28px 30px}
.years span{font-size:15px;max-width:115px}
.placeholder figcaption{font-size:13px;letter-spacing:.05em;gap:10px;color:#354133}
.placeholder figcaption>span:first-child{opacity:1}
.card-media-note{font-size:13px;letter-spacing:.05em;opacity:1;color:#354133}
.service-caption h3{max-width:none;font-size:32px}
.service-caption p{max-width:340px}
.service-caption{padding-top:24px}
.service-bottom{font-size:15px}
.carousel-controls{gap:12px}
.circle-button{width:52px;height:52px;font-size:25px;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink)}
.circle-button:last-child{background:var(--ink);color:var(--paper)}
.carousel-help{font-size:15px;color:#5d6756;margin-bottom:24px;line-height:1.6}
.service-track{--card-basis:29%;position:relative;cursor:grab;touch-action:auto;scroll-padding:0;overscroll-behavior-x:contain}
.service-card,.service-card:hover{flex-basis:var(--card-basis);-webkit-user-drag:none}
.service-card{transition:none}
.service-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.service-track.is-dragging .service-card{pointer-events:none}
.service-art:before{pointer-events:none}
.journey-cta>.shell>.eyebrow{font-size:14px}
.route-line{font-size:13px;letter-spacing:.1em}
.fleet-tab-title small{font-size:13px;line-height:1.5}
.fleet-tab{gap:18px;min-width:0}
.fleet-tab-title{min-width:0;flex:1}
.fleet-tab-selection{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border:1px solid var(--muted);border-radius:50%;margin-left:auto}
.fleet-tab-selection svg{width:16px;height:16px;opacity:0}
.fleet-tab[aria-selected=true] .fleet-tab-selection{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.fleet-tab[aria-selected=true] .fleet-tab-selection svg{opacity:1}
.fleet-tab[aria-selected=true]{padding-left:18px}
.seats span{font-size:14px;max-width:110px}
.amenities{gap:22px;flex-wrap:wrap}
.amenities li{font-size:13px;gap:10px;color:#535e49}
.amenities svg{width:24px;height:24px}
.fleet-specs{flex-wrap:wrap;gap:24px}
.faq-layout .muted,.faq-list summary{font-size:16px}
.faq-list details>p{font-size:16px;padding-left:0;line-height:1.8;color:var(--muted)}
.faq-list summary{gap:20px;min-height:70px}
.contact-details .eyebrow{font-size:13px}
.contact-details a,.contact-details p{font-size:16px}
.contact-details .contact-phone{font-size:40px}
.contact-details .second-phone{font-size:30px}
.contact-form label{font-size:14px;line-height:1.6}
.contact-form .field-help{margin-top:10px;font-size:14px;line-height:1.6;color:var(--muted)}
.form-grid>div{min-width:0}
.contact-form input:not([type=checkbox]),.contact-form textarea{font-size:16px;min-height:48px;border-bottom:2px solid #7c846f}
.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--ink)}
.contact-form input::placeholder,.contact-form textarea::placeholder{font-size:15px;color:var(--muted)}
.contact-form .consent{font-size:14px;line-height:1.7;gap:12px}
.consent input{width:19px;height:19px;margin-top:3px}
.form-note,.preview-note{font-size:14px;line-height:1.7}
.preview-note{color:#6a624f}
.form-status:not(:empty){font-size:16px}
.form-status{white-space:pre-line;overflow-wrap:anywhere}
.site-footer{position:relative;isolation:isolate}
.site-footer>.shell{position:relative;z-index:1}
.footer-backdrop{position:absolute;inset:0;z-index:-1}
.footer-backdrop img{width:100%;height:100%;object-fit:cover}
.footer-backdrop:after{content:'';position:absolute;inset:0;background:#17231bd9}
.footer-main{grid-template-columns:1.25fr .6fr 1fr 1fr;gap:38px}
.footer-statement p{font-size:15px;max-width:245px}
.footer-column h3{font-size:13px;line-height:1.6;color:#bec7b5}
.footer-column>a,.footer-column p{font-size:15px;line-height:1.7}
.footer-column .text-link{font-size:15px;max-width:none}
.footer-column .social-link-text{display:inline-flex;width:auto;height:auto;min-height:48px;gap:12px;padding:9px 13px;border-color:#ffffff55;margin-top:22px;margin-bottom:0;font-size:15px}
.footer-column .social-link-text:hover{color:var(--ink)}
.footer-wordmark{display:block;opacity:var(--footer-logo-opacity,.12);padding:0 0 30px;margin:0;width:100%;line-height:0;mix-blend-mode:screen}
.footer-wordmark img{width:100%;height:auto;max-height:340px;object-fit:contain;filter:grayscale(1) brightness(1.8) contrast(25) invert(1)}
.footer-fleet{margin:-18px 0 12px;line-height:0;opacity:var(--fleet-opacity,.7)}
.footer-fleet img{display:block;width:100%;height:auto;mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 88%,transparent),linear-gradient(to right,transparent,#000 2%,#000 98%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 88%,transparent),linear-gradient(to right,transparent,#000 2%,#000 98%,transparent);-webkit-mask-composite:source-in}
.footer-bottom{font-size:14px;align-items:center;line-height:1.7;color:#bcc5b2}
.breadcrumbs,.bus-facts{font-size:14px}
.detail-contact p,.gallery-empty{font-size:16px}
.lightbox button{font-size:15px;min-height:44px}
@media(max-width:1120px){
 .desktop-nav{display:none}.menu-toggle{display:block}.site-header{gap:22px}
 .header-cta{margin-left:auto}.site-header>.social-link{margin-left:-10px}
 .mobile-nav:not([hidden]){display:flex;position:fixed;inset:108px 0 0;background:#252e27;padding:35px var(--gutter);flex-direction:column;overflow:auto;z-index:100}
 .home-page .site-header.is-scrolled .mobile-nav:not([hidden]){top:82px}
 .mobile-nav>a:not(.button){display:flex;align-items:center;gap:23px;padding:22px 0;border-bottom:1px solid #ffffff35;font:500 35px/1.2 var(--heading)}
 .mobile-nav svg{margin-left:auto}.mobile-nav .button{margin-top:32px;font-size:16px}
 .footer-main{grid-template-columns:1.2fr .7fr 1fr;gap:32px}.footer-contact{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:24px;border-top:1px solid #ffffff30;padding-top:26px}.footer-contact h3{margin:0}.footer-contact .text-link,.footer-contact .social-link-text{margin:0}
}
@media(max-width:800px){
 .site-header{height:92px}.mobile-nav:not([hidden]){top:92px}
 .service-track{--card-basis:43%}.years{min-width:210px;padding:22px}.years strong{font-size:62px}
 .heading-aside{max-width:330px}.contact{grid-template-columns:1fr;gap:45px}.contact-intro{max-width:470px}
 .contact-details{grid-template-columns:1fr 1fr;gap:27px}.contact-details>div:first-child{grid-column:1/-1}
 .contact-form{padding:32px}.contact .section-title{font-size:56px}
 .footer-contact{display:block}.footer-contact p{margin:15px 0}.footer-contact .text-link{display:flex;margin:20px 0}.footer-contact .social-link-text{margin-top:8px}
 .fleet-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fleet-tab{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:0 12px;padding:16px 12px;min-height:112px}
 .fleet-tab-title{display:contents;font-size:28px;line-height:1.2}
 .fleet-tab-name{grid-column:1;grid-row:1;overflow-wrap:anywhere}
 .fleet-tab-title small{grid-column:1/-1;grid-row:2;font-size:16px;line-height:1.5;max-width:none;margin-top:10px;overflow-wrap:anywhere}
 .fleet-tab-selection{grid-column:2;grid-row:1}
 .fleet-specs{flex-direction:column;align-items:flex-start}
 .seats span{font-size:16px;max-width:none}
 .amenities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;width:100%;flex:auto}
 .amenities li{font-size:16px;line-height:1.5;flex-direction:row;align-items:center;min-width:0;gap:10px;overflow-wrap:anywhere}
 .amenities svg{flex-shrink:0}
 .detail-info .amenities{grid-template-columns:1fr}
 .faq-layout .muted{font-size:16px}
}
@media(max-width:560px){
 .site-header{height:92px;gap:8px;padding-inline:20px}
 .home-page .site-header.is-scrolled{height:92px}
 .brand{width:128px}.brand img{max-height:none}.brand-tagline{font-size:13px;margin-top:4px}
 .header-cta{width:78px;flex:0 0 78px;padding:8px;font-size:14px;line-height:1.35;white-space:normal;text-align:center;justify-content:center}
 .header-cta svg{display:none}.site-header>.social-link{margin:0;width:38px;height:44px;flex-basis:38px}
 .menu-toggle{width:38px;min-width:38px;padding:7px}.social-link svg{width:21px;height:21px}
 .mobile-nav:not([hidden]),.home-page .site-header.is-scrolled .mobile-nav:not([hidden]){top:92px}
 .hero-content{top:45%;transform:translateY(-12%)}.hero-link{font-size:16px;margin-top:30px}
 .hero-bottom{bottom:35px}.scroll-cue{font-size:14px;max-width:275px;line-height:1.5;gap:12px}.scroll-circle{width:44px;height:44px}
 .about-copy>p,.about-copy .signature,.heading-aside,.heading-aside p,.contact-intro,.cta-layout p,.service-caption p{font-size:16px}
 .eyebrow{font-size:13px;letter-spacing:.09em}
 .years{min-width:215px}.years span{font-size:14px;max-width:108px}
 .placeholder figcaption{inset:auto 17px 17px;font-size:12px}.placeholder figcaption>span:last-child{max-width:200px}
 .services .heading-aside{display:block;max-width:none}.services .heading-aside p{max-width:100%}
 .carousel-controls{margin-top:20px}.circle-button{width:52px;height:52px;font-size:25px}
 .carousel-help{font-size:14px;margin-bottom:22px}.service-track{--card-basis:82%;gap:16px}
 .service-caption h3{font-size:33px}.card-more{font-size:15px}.card-media-note{font-size:12px}
 .service-bottom,.service-bottom .text-link,.text-link,.button{font-size:15px}
 .journey-cta>.shell>.eyebrow{font-size:13px;line-height:1.7}.route-line{font-size:11px;letter-spacing:.04em}
 .fleet-tab[aria-selected=true]{padding-left:12px}
 .faq-list summary,.faq-list details>p{font-size:16px}.faq-list details>p{padding-left:0}
 .contact-details{gap:28px 20px}.contact-details .eyebrow{font-size:13px}.contact-details a,.contact-details p{font-size:16px;overflow-wrap:anywhere}
 .contact-details .contact-phone{font-size:40px}.contact-details .second-phone{font-size:30px}
 .contact-form{padding:28px 22px}.form-grid{grid-template-columns:1fr;gap:22px}
 .contact-form label,.contact-form .consent{font-size:14px}.contact-form input:not([type=checkbox]),.contact-form textarea{font-size:16px}
 .contact-form input::placeholder,.contact-form textarea::placeholder{font-size:15px}.form-note,.preview-note{font-size:14px}
 .footer-main{grid-template-columns:1fr;gap:35px}.footer-statement{grid-column:auto}.footer-contact{grid-column:auto}.footer-statement p{font-size:16px;max-width:310px}
 .footer-column h3{font-size:14px}.footer-column>a,.footer-column p{font-size:16px}.footer-column .text-link,.footer-column .social-link-text{font-size:16px}
 .footer-wordmark{padding:0 0 25px}.footer-bottom{font-size:13px;gap:18px}.footer-bottom>a:last-child{margin-left:0}
 .breadcrumbs{font-size:14px}.detail-subtitle,.detail-contact p,.gallery-empty{font-size:16px}
}
@media(max-width:360px){
 html{scroll-padding-top:160px}
 .site-header,.home-page .site-header.is-scrolled{height:140px;display:grid;grid-template-columns:1fr 44px;grid-template-rows:1fr 44px;gap:8px 12px;padding:10px 16px}
 .brand{width:138px;grid-column:1;grid-row:1}.brand-tagline{font-size:13px}
 .header-cta{display:flex;grid-column:1;grid-row:2;width:100%;margin:0;min-height:44px;justify-content:space-between;white-space:nowrap;padding:8px 12px}
 .header-cta svg{display:block;width:18px}
 .site-header>.social-link{grid-column:2;grid-row:2;margin:0;width:44px;height:44px}
 .menu-toggle{grid-column:2;grid-row:1;min-width:44px;width:44px}
 .mobile-nav:not([hidden]),.home-page .site-header.is-scrolled .mobile-nav:not([hidden]){top:140px}
 .hero-content h1{font-size:39px}.contact-form{padding-inline:18px}.contact-details{grid-template-columns:1fr}
 .contact-details>div:first-child{grid-column:auto}
}
