/* Wspólny motyw strony aplikacji, poradnika i polityki. */
:root{color-scheme:light;--bg:#f8f9f0;--panel:#eff6e6;--text:#243e32;--muted:#52695c;--lime:#42751b;--teal:#16756c;--line:#d3dfce;--dark:#101815}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#f8f9f0;isolation:isolate;color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:var(--teal);text-underline-offset:5px}a:hover{color:var(--lime)}a:focus-visible,summary:focus-visible{outline:3px solid var(--lime);outline-offset:6px}img{display:block;max-width:100%;height:auto}figure{margin:0}header{border-bottom:1px solid var(--line);background:#fcfdf6f2}nav{max-width:1200px;margin:auto;min-height:90px;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}nav div{display:flex;gap:24px;flex-wrap:wrap}nav a{text-decoration:none;color:var(--text);font-size:14px}.brand{font-size:25px;font-weight:800;letter-spacing:-1px;color:var(--text);text-decoration:none;white-space:nowrap}.brand span{color:var(--lime)}main{max-width:1200px;margin:auto;padding:0 32px 64px}section{margin:90px 0}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(44px,5.5vw,76px);font-weight:650;margin-bottom:28px}h2{font-size:clamp(30px,3.5vw,46px);font-weight:600;margin-bottom:24px}h3{font-size:24px;letter-spacing:-.025em}p{color:var(--muted);margin-bottom:20px}strong{color:var(--text)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;color:var(--lime);margin-bottom:22px}.lead{font-size:20px;line-height:1.65;max-width:610px}.micro,.muted,.updated{font-size:14px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:#c5ed82;color:#243e18;border:1px solid #b8db7c;border-radius:8px;padding:14px 20px;text-decoration:none;font-weight:700;font-size:14px;min-height:50px}.button:hover{background:#d1f59a;color:#101815}.button.secondary{background:transparent;color:var(--text);border-color:#a2b68f}.button.secondary:hover{background:#e9f1dc}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 22px}.text-link{display:inline-block;font-weight:700;text-decoration:none;border-bottom:1px solid #75958b;padding-bottom:5px}.skip-link{position:absolute;left:20px;top:-100px;background:#c5ed82;color:#243e18;padding:12px;z-index:10}.skip-link:focus{top:10px}
/* Oddzielamy ekran aplikacji od nagłówka, aby zachować czytelność obu elementów. */
.landing-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:68px;align-items:center;margin:58px 0 48px;min-height:670px}.hero-copy em{font-style:normal;color:var(--lime)}.hero-device{position:relative;max-width:300px;margin:0 auto;transform:rotate(4deg);padding:8px;border:1px solid #607364;border-radius:35px;background:#080d0a;box-shadow:15px 25px 60px #456f4933}.hero-device>img{border-radius:27px;width:100%}.floating-note{position:absolute;bottom:105px;left:-72px;right:-25px;display:flex;align-items:center;gap:14px;background:#fffef4f5;border:1px solid #c7d6b5;padding:18px;border-radius:12px;transform:rotate(-4deg);box-shadow:0 15px 35px #355a3920;font-size:15px;font-weight:700}.floating-note>span{font-size:30px;color:var(--lime)}.floating-note small{display:block;font-size:12px;font-weight:400;color:var(--muted)}.value-strip{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:14px}.value-strip span:before{content:'↗';color:var(--lime);margin-right:12px}.section-heading{max-width:730px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.card{padding:30px;background:linear-gradient(130deg,#ffffff,#f0f6e7);border:1px solid var(--line);border-radius:14px}.card p{font-size:15px;margin-bottom:0}.feature-number{display:block;color:var(--teal);font-size:11px;letter-spacing:.13em;margin-bottom:45px}.waypoint-feature,.library-feature,.guide-step{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.waypoint-feature{background:linear-gradient(130deg,#edf5de,#dcefe8);border:1px solid var(--line);border-radius:22px;padding:52px}.plain-list{padding:0;list-style:none;color:var(--muted)}.plain-list li{padding:12px 0;border-bottom:1px solid var(--line)}.plain-list strong{display:block}.phone-shot{max-width:295px;margin:0 auto}.phone-shot img{width:100%;border-radius:20px;border:1px solid #afc0a5;box-shadow:0 18px 45px #3c634b24}.phone-shot a{display:block;border-radius:20px}.phone-shot figcaption{font-size:12px;color:var(--muted);text-align:center;margin-top:15px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:38px 0}.steps span{font-size:34px;color:var(--teal);font-weight:400}.steps h3{margin:18px 0 14px}.steps p{font-size:15px}.library-feature figure{max-width:390px;margin:auto}.library-feature img{border-radius:18px;border:1px solid var(--line)}.privacy-feature{max-width:850px;padding:44px;border-left:3px solid var(--teal);background:#edf5e5}.closing{text-align:center;padding-top:35px;border-top:1px solid var(--line)}.closing h2{margin-top:35px}.closing p{margin-top:20px}.closing .button{margin:5px}.legacy-banner{width:100%;max-width:850px;margin:0 auto 45px;border:1px solid var(--line);border-radius:16px}footer{padding:45px max(24px,calc((100vw - 1136px)/2));border-top:1px solid var(--line);background:#e9f0df;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}footer p{font-size:13px;margin:9px 0}footer>div:nth-child(2){display:flex;flex-wrap:wrap;align-items:center;gap:25px;font-size:13px}footer small{width:100%;font-size:11px;color:var(--muted)}.page-heading{padding:80px 0 35px;max-width:800px}.page-heading .muted{max-width:640px}.guide-step{border-top:1px solid var(--line);padding-top:60px;scroll-margin-top:30px}.guide-step>div{max-width:530px}.tip{color:var(--muted);font-size:14px;border-left:3px solid var(--teal);padding:16px 20px;background:var(--panel);margin:26px 0}.example-note{border:1px solid var(--line);border-radius:12px;padding:22px;margin:25px 0;background:#fff9df}.example-note small{display:block;font-size:10px;letter-spacing:.13em;color:var(--teal);margin-bottom:12px}.example-note strong{font-size:23px}.example-note p{margin:6px 0 0}.faq-list{max-width:870px;margin-top:20px}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{cursor:pointer;font-size:20px;font-weight:600;line-height:1.4}.faq-list details p{margin:16px 0 2px;max-width:750px}.faq-list details:target{background:#e6f3d5;padding:22px;border-radius:10px}.policy,main:has(.updated){max-width:870px;padding:55px 35px;background:#fffef8f5;margin:40px auto;border:1px solid var(--line);border-radius:16px}.policy h1{font-size:45px}.policy h2{font-size:25px;margin-top:35px}.policy p,.policy li{font-size:16px}.policy code{overflow-wrap:anywhere}li{margin-bottom:10px}
/* Zgodność z wcześniejszymi stronami PL podczas etapowego tłumaczenia. */
.hero{padding:60px 0;max-width:800px}.hero .button{margin:8px 8px 8px 0}.visual{display:none}.screenshots{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px}.screenshots img{border-radius:15px}
@media(min-width:1500px){.landing-hero{min-height:720px}}@media(max-width:900px){nav{align-items:flex-start;gap:18px}nav div{gap:14px}.landing-hero{gap:30px;grid-template-columns:1.15fr .85fr}.hero-device{max-width:250px}.floating-note{left:-30px;right:-10px;font-size:12px;padding:12px}.floating-note small{font-size:10px}.waypoint-feature,.library-feature,.guide-step{gap:35px}.waypoint-feature{padding:30px}.feature-grid{grid-template-columns:1fr}.feature-number{margin-bottom:22px}.steps{gap:20px}.grid{gap:14px}}@media(max-width:640px){nav{padding:20px;flex-direction:column;gap:15px}nav div{gap:12px 18px}nav a{font-size:12px}nav .brand{font-size:25px}main{padding:0 20px 40px}section{margin:60px 0}.landing-hero{grid-template-columns:1fr;margin-top:38px;gap:38px}.hero-copy h1{font-size:47px}.lead{font-size:18px}.actions{flex-direction:column;align-items:stretch}.micro{font-size:12px}.hero-device{max-width:240px;transform:rotate(3deg);margin-bottom:20px}.floating-note{left:-30px;right:-30px;bottom:95px}.value-strip{flex-direction:column;gap:12px;font-size:13px;padding:20px 0}.waypoint-feature,.library-feature,.guide-step{grid-template-columns:1fr;gap:30px}.waypoint-feature{padding:25px 20px;margin-left:-4px;margin-right:-4px}.phone-shot{max-width:270px}.steps{grid-template-columns:1fr;gap:5px}.steps li{padding:18px 0;border-bottom:1px solid var(--line)}.steps span{float:left;margin-right:22px;font-size:25px}.steps h3{margin-top:7px}.steps p{margin-bottom:0}.privacy-feature{padding:25px}.page-heading{padding-top:48px}.guide-step{padding-top:35px}.policy,main:has(.updated){margin:25px 12px;padding:30px 22px}.policy h1{font-size:37px}.policy h2{font-size:24px}.closing .button{display:flex}.card{padding:25px}.library-feature figure{max-width:300px}.library-feature>div{order:-1}footer{padding:32px 22px;flex-direction:column}footer>div:nth-child(2){gap:18px}.hero{padding:40px 0}.hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.extra-gallery{grid-template-columns:repeat(3,1fr);gap:45px;max-width:900px;margin:35px auto}.extra-gallery figcaption{font-size:13px;text-align:center;color:var(--muted);margin-top:16px}@media(max-width:640px){.extra-gallery{grid-template-columns:1fr;max-width:270px;gap:35px}}

/* Leśna ilustracja i ciepłe akcenty rozjaśniają stronę bez zasłaniania treści. */
.landing-hero{position:relative;isolation:isolate;padding:40px 28px;border-radius:28px;background:linear-gradient(90deg,#f7faed 0%,#f7faedf5 39%,#f7faed80 63%,#f7faed00 100%),url('assets/sunny-trail.png') right center/auto 100% no-repeat;border:1px solid #dae6ca;box-shadow:0 18px 50px #5277410b}
.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow{color:#42751b}.hero-device{max-width:270px}.floating-note{left:-45px;right:-12px}
.value-strip{background:#f0f6e5;border-radius:14px;border:1px solid #d6e3ca;padding:24px}.value-strip span:before{color:#bc5a2d}
.feature-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin-bottom:25px;background:#e4f0cb;color:#568323;border-radius:18px;transform:rotate(-5deg)}.feature-icon svg{width:29px;height:29px;transform:rotate(5deg)}.card:nth-child(2) .feature-icon{background:#fff0d7;color:#ba652d}.card:nth-child(3) .feature-icon{background:#daf0eb;color:#16756c}.feature-number{margin-bottom:22px}.card{box-shadow:0 9px 25px #54774608}.card:nth-child(2){background:linear-gradient(130deg,#fffefa,#fff6e6)}.card:nth-child(3){background:linear-gradient(130deg,#ffffff,#eaf6f0)}
.waypoint-feature{position:relative;overflow:hidden}.waypoint-feature:before{content:'';position:absolute;right:-60px;top:-70px;width:300px;height:300px;border:45px solid #c2e5b650;border-radius:50%;pointer-events:none}.waypoint-feature>*{position:relative}
.library-feature figure{padding:10px;background:#fffdf3;border-radius:22px;box-shadow:0 18px 45px #47603b20;transform:rotate(-2deg)}.steps span{color:#a75828}.steps li{border-top:3px solid #bfdd8a;padding-top:16px}.steps li:nth-child(2){border-color:#efc382}.steps li:nth-child(3){border-color:#8bcabe}
.page-heading{max-width:none;padding-right:30%;background:linear-gradient(90deg,#f8f9f0 0%,#f8f9f0f5 47%,#f8f9f040 85%),url('assets/sunny-trail.png') right center/auto 100% no-repeat;border-radius:0 0 26px 26px}.page-heading h1{max-width:750px}.page-heading .lead,.page-heading .muted{max-width:650px}.faq-list{background:#ffffffb5;border-radius:18px;padding:8px 28px;border:1px solid var(--line)}.faq-list details:last-child{border-bottom:0}.legacy-banner{box-shadow:0 15px 35px #36583b1a}
@media(max-width:900px){.landing-hero{gap:26px;padding:30px 22px}.hero-device{max-width:230px}.page-heading{padding-right:18%}}
@media(max-width:640px){.landing-hero{margin-left:-6px;margin-right:-6px;padding:28px 20px;background:linear-gradient(180deg,#f7faed 0%,#f7faed 40%,#f7faedbd 56%,#f7faed10 80%),url('assets/sunny-trail.png') center bottom/auto 58% no-repeat}.hero-copy h1{font-size:clamp(34px,10.8vw,43px)}.floating-note{left:-24px;right:-24px}.value-strip{padding:20px}.page-heading{padding:40px 0 30px;background:linear-gradient(90deg,#f8f9f0f5,#f8f9f0d9),url('assets/sunny-trail.png') center/cover}.faq-list{padding:5px 18px}.steps li{padding-top:20px}.library-feature figure{transform:none}}

/* Zapas pod ekranem pozwala przesuwać mapę wolniej od treści bez odsłaniania jej krawędzi. */
body:before{content:"";position:fixed;inset:0 0 calc(-1 * var(--map-travel, 0px));transform:translate3d(0,var(--map-offset, 0px),0);z-index:-1;pointer-events:none;background:linear-gradient(#f8f9f073,#f8f9f073),url('assets/map-tracks-background.png') center/cover no-repeat}
@media(max-width:640px){body:before{background-image:linear-gradient(#f8f9f09c,#f8f9f09c),url('assets/map-tracks-background.png');background-position:42% center}}

@media(prefers-reduced-motion:reduce){body:before{inset:0;transform:none}}

/* Poradnik potrzebuje jednolitego podkładu pod instrukcją, aby mapa nie konkurowała z tekstem. */
.guide-page .page-heading{margin-top:32px;padding:44px 38% 36px 40px;border:1px solid var(--line);border-radius:24px;background-color:var(--bg)}
.guide-page .page-heading h1{font-size:clamp(38px,4.8vw,64px)}
.guide-page .page-heading .lead{font-size:19px}
.guide-page .guide-step{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;margin:32px 0;padding:40px;background:#fffef8;border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 32px #36583b0d}
.guide-page .guide-step>div{min-width:0;max-width:560px}
.guide-page .guide-step h2{font-size:clamp(28px,3vw,40px);text-wrap:balance}
.guide-page .guide-step .eyebrow{margin-bottom:18px}
.guide-page .guide-step .phone-shot{width:100%;max-width:250px;min-width:0}
.guide-page .guide-step .phone-shot img{background:var(--panel);border:1px solid #9fb69d;box-shadow:0 12px 28px #36583b20}
.guide-page .guide-step .phone-shot figcaption{color:var(--muted);line-height:1.5}
.guide-page .tip{margin-bottom:0;border-radius:0 10px 10px 0}
.guide-page main>section:not(.guide-step){background:#fffef8;border:1px solid var(--line);border-radius:24px;padding:36px 40px;margin:32px 0}
.guide-page .closing h2{margin-top:0}
@media(max-width:900px){.guide-page .page-heading{padding:32px 25% 30px 30px}.guide-page .guide-step{gap:28px;padding:30px}}
@media(max-width:640px){.guide-page main{padding:0 16px 32px}.guide-page .page-heading{margin-top:20px;padding:28px 22px;border-radius:18px}.guide-page .page-heading h1{font-size:clamp(32px,9vw,43px)}.guide-page .page-heading .lead{font-size:18px}.guide-page .guide-step{grid-template-columns:minmax(0,1fr);gap:24px;padding:26px 22px;margin:22px 0;border-radius:18px}.guide-page .guide-step .phone-shot{max-width:240px}.guide-page .guide-step p,.guide-page .guide-step strong{overflow-wrap:anywhere}.guide-page main>section:not(.guide-step){padding:26px 22px;border-radius:18px;margin:22px 0}.guide-page .grid{grid-template-columns:minmax(0,1fr)}.guide-page .tip{padding:14px 16px}.guide-page .eyebrow{letter-spacing:.12em}}
