:root{--red:#ed2428;--ink:#111;--paper:#f4f1eb;--white:#fff;--line:rgba(17,17,17,.18)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.5}
.pl,.sw{display:none}
body.lang-pl .en,body.lang-sw .en{display:none!important}
body.lang-pl .pl,body.lang-sw .sw{display:inline}
body.lang-pl h1.pl,body.lang-pl h2.pl,body.lang-pl p.pl,body.lang-pl small.pl,body.lang-pl strong.pl,body.lang-sw h1.sw,body.lang-sw h2.sw,body.lang-sw p.sw,body.lang-sw small.sw,body.lang-sw strong.sw{display:block}
.announcement{height:42px;background:#111;color:#fff;display:flex;justify-content:center;align-items:center;gap:25px;font-size:.72rem;letter-spacing:.15em;font-weight:700}
.announcement a{color:#fff;text-decoration:none;border-bottom:1px solid #fff}
.site-header{height:94px;background:var(--red);display:flex;align-items:center;justify-content:space-between;padding:0 4vw;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.3)}
.brand{display:block;width:300px;height:70px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:contain}
.site-header nav{display:flex;align-items:center;gap:1.6rem}.site-header nav a{color:#fff;text-decoration:none;font-weight:600;font-size:.9rem}
.language-switch{display:flex;gap:.35rem;border-left:1px solid rgba(255,255,255,.45);padding-left:1rem}
.language-switch button{width:42px;height:38px;border:1px solid rgba(255,255,255,.55);background:transparent;font-size:1.15rem;cursor:pointer;line-height:1}
.language-switch button.active{background:#fff;border-color:#fff}
.menu-button{display:none;border:1px solid #fff;color:#fff;background:none;padding:.65rem .85rem;font:inherit;font-weight:700;cursor:pointer}
.hero{min-height:720px;display:grid;grid-template-columns:55% 45%;overflow:hidden}.hero-copy{padding:7vw 4vw 6vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.eyebrow{font-weight:800;letter-spacing:.17em;font-size:.72rem;margin:0 0 1.7rem;text-transform:uppercase}
.hero h1,.statement h2,.visit h2,.community h2,.new-here h2,.contact h2{font-family:Manrope,sans-serif;letter-spacing:-.06em;line-height:.94;margin:0;font-weight:800}
.hero h1{font-size:clamp(3.8rem,7.3vw,7.8rem)}.hero h1 em{color:var(--red);font-style:normal}
.lead{font-size:1.18rem;max-width:600px;margin:2rem 0;color:#3b3b3b}.hero-actions{display:flex;align-items:center;gap:1.7rem}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 1.4rem;text-decoration:none;font-weight:700;color:#111}
.button.primary{background:var(--red);color:#fff}.button.text{padding:0;border-bottom:1px solid #111}
.hero-art{background:var(--red);position:relative;min-height:720px;overflow:hidden}
.hero-art:before{content:"";position:absolute;width:34vw;height:34vw;border:1px solid rgba(255,255,255,.35);border-radius:50%;right:-7vw;top:-5vw}
.hero-photo{position:absolute;display:block;object-fit:cover;box-shadow:0 22px 55px rgba(0,0,0,.28)}
.hero-photo-main{width:68%;height:76%;right:5%;top:8%;object-position:center 28%;transform:rotate(2deg)}
.hero-photo-small{width:39%;height:48%;left:2%;bottom:3%;object-position:center;transform:rotate(-4deg);border:8px solid #fff}
.hero-logo{position:absolute;width:54%;height:auto;left:5%;top:4%;object-fit:contain;filter:drop-shadow(0 3px 10px rgba(0,0,0,.28));z-index:2}
.love-mark{position:absolute;right:6%;bottom:5%;color:#fff;font-size:5rem;line-height:.7;font-family:Manrope,sans-serif;font-weight:800;display:flex;align-items:center;gap:12px}
.love-mark span{font-size:.65rem;line-height:1.1;letter-spacing:.12em}
.statement{display:grid;grid-template-columns:12% 88%;padding:8vw 5vw;background:#fff;border-top:1px solid var(--line)}
.section-no{font-weight:800;color:var(--red)}.statement>div{max-width:1050px}.statement h2{font-size:clamp(3rem,6.5vw,7rem)}
.body{font-size:1.2rem;max-width:760px;margin:2.5rem 0 0 auto;color:#444}
.visit{padding:8vw 5vw;background:var(--red);color:#fff}.visit-heading{display:grid;grid-template-columns:32% 68%;align-items:start}.visit h2{font-size:clamp(4rem,8vw,8rem)}
.visit-details{margin-top:5rem;display:grid;grid-template-columns:1fr 1fr 1.1fr}
.detail-card{aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:space-between;padding:2rem;border:1px solid rgba(255,255,255,.5)}
.detail-card.red{background:#fff;color:#111}.detail-card.dark{background:#111}.detail-card span{font-size:.68rem;letter-spacing:.16em;font-weight:800}
.detail-card strong{font:800 clamp(2.4rem,4vw,4.8rem)/.92 Manrope,sans-serif;letter-spacing:-.05em}.detail-card small{font-size:.9rem}
.directions{padding:3rem;display:flex;flex-direction:column;justify-content:flex-end;font-size:1.05rem}.button.light{background:#fff;margin-top:1rem;align-self:flex-start}
.community{padding:9vw 5vw;display:grid;grid-template-columns:38% 62%;gap:4vw}.community h2{font-size:clamp(3.5rem,6.5vw,7rem)}
.community-copy>p:not(.eyebrow){font-size:1.08rem;max-width:480px;margin-top:2rem}
.arrow-link{display:inline-block;color:#111;text-decoration:none;font-weight:800;margin-top:1rem;border-bottom:2px solid var(--red);padding-bottom:.35rem}
.gallery{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:auto auto;gap:1rem}
.moment{margin:0;position:relative;overflow:hidden;background:#ddd;min-height:320px}
.moment.large{grid-row:1/3;min-height:660px}.moment.wide{min-height:320px}
.moment img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .5s ease}
.moment.large img{object-position:center 35%}.moment.wide img{object-position:center 28%}
.moment:hover img{transform:scale(1.035)}
.moment figcaption{position:absolute;left:1rem;bottom:1rem;background:#fff;color:#111;padding:.65rem .85rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}
.watch{background:#fff;padding:8vw 5vw}
.watch-heading{display:grid;grid-template-columns:30% 70%;align-items:start;margin-bottom:4rem}
.watch h2{font:800 clamp(3.4rem,6.5vw,7rem)/.92 Manrope,sans-serif;letter-spacing:-.06em;margin:0}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;align-items:start}
.video-card{margin:0;background:#111;color:#fff;overflow:hidden}
.video-card iframe{width:100%;aspect-ratio:9/16;height:auto;display:block;background:#161616}
.video-card p{margin:0;padding:1rem 1.1rem;font-weight:700}
.watch-more{display:inline-block;margin-top:2rem;color:#111;text-decoration:none;border-bottom:2px solid var(--red);font-weight:800;padding-bottom:.35rem}
.new-here{background:#111;color:#fff;padding:7vw 5vw;display:grid;grid-template-columns:12% 50% 38%;align-items:end}
.new-here .symbol{font-size:5rem;color:var(--red)}.new-here h2{font-size:clamp(3.2rem,6.2vw,6.5rem)}
.new-here>p{font-size:1.1rem;max-width:390px;padding:0 0 1rem 2rem;color:#ccc}
.contact{padding:9vw 5vw 5vw;background:#fff}.contact h2{font-size:clamp(5rem,11vw,11rem)}
.contact-links{display:flex;gap:1rem;margin:4rem 0 6rem;flex-wrap:wrap}.contact-links a{border:1px solid #111;color:#111;text-decoration:none;padding:1rem 1.4rem;font-weight:700}
.contact-links a:first-child{background:var(--red);color:#fff;border-color:var(--red)}
.address{font:700 clamp(1.2rem,2.5vw,2.5rem) Manrope,sans-serif;border-top:1px solid var(--line);padding-top:2rem}
footer{background:#111;color:#fff;padding:3rem 5vw;display:flex;align-items:center;justify-content:space-between}footer img{width:250px;height:75px;object-fit:contain}
footer p{font-size:.75rem;color:#aaa}footer a{color:#fff;text-decoration:none;font-weight:800}
@media(max-width:900px){.announcement{font-size:.62rem;padding:0 12px;justify-content:space-between}.announcement a{display:none}.site-header{height:78px}.brand{width:225px;height:56px}.menu-button{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--red);flex-direction:column;align-items:flex-start;padding:2rem 5vw;border-bottom:1px solid rgba(255,255,255,.4)}.site-header nav.open{display:flex}.language-switch{border-left:0;padding-left:0}.hero{grid-template-columns:1fr}.hero-copy{padding:5rem 5vw}.hero h1{font-size:clamp(3.6rem,14vw,6rem)}.hero-art{min-height:620px}.statement{grid-template-columns:1fr}.section-no{margin-bottom:2rem}.visit-heading{grid-template-columns:1fr}.visit-details{grid-template-columns:1fr 1fr}.directions{grid-column:1/-1;padding:3rem 0 0}.community{grid-template-columns:1fr}.watch-heading{grid-template-columns:1fr}.video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.new-here{grid-template-columns:1fr}.new-here .symbol{margin-bottom:1rem}.new-here>p{padding:2rem 0 0}.contact h2{font-size:clamp(4rem,17vw,8rem)}}
@media(max-width:560px){.hero-art{min-height:520px}.hero-logo{width:68%;left:5%}.hero-photo-main{width:70%;height:72%}.hero-photo-small{width:42%;height:42%}.visit-details{grid-template-columns:1fr}.detail-card{aspect-ratio:1.15/1}.gallery{grid-template-columns:1fr;grid-template-rows:auto}.moment.large{grid-row:auto;min-height:520px}.moment,.moment.wide{min-height:360px}.video-grid{grid-template-columns:1fr;gap:1.5rem}.video-card{max-width:390px;margin:0 auto;width:100%}.contact-links{flex-direction:column}.contact-links a{text-align:center}footer{flex-direction:column;gap:1.5rem;text-align:center}}
