*{box-sizing:border-box}body{margin:0;font:1rem/1.7 Arial,sans-serif;color:#20212a;background:#fff}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ffb400;outline-offset:4px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;background:white;padding:1rem;z-index:10}.top{background:#12121b;color:#fff;padding:.5rem 5%;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.875rem}header{padding:.8rem 5%;display:flex;align-items:center;justify-content:space-between;gap:2rem}header img{width:145px;height:112px;object-fit:contain}nav{display:flex;flex-wrap:wrap;gap:1.2rem}nav a{text-decoration:none;font-weight:700;font-size:.9rem}nav a:hover,nav a[aria-current]{color:#2420bb}.hero{padding:5rem 5%;background:linear-gradient(#000a,#000a),url('responsive/project-1-full.webp') center/cover;color:white;text-align:center}.hero h1{font-size:clamp(2rem,4.5vw,3.6rem);line-height:1.12;max-width:1000px;margin:0 auto 1.2rem;letter-spacing:-1px}.hero .tagline{font-size:1.3rem}.button{display:inline-block;background:#2420bb;color:white;padding:.9rem 1.3rem;border:0;border-radius:3px;font:700 1rem Arial;text-decoration:none;cursor:pointer}.hero .button{background:white;color:#2420bb}.actions{display:flex;justify-content:center;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:1.5rem}.intro{max-width:820px;margin:auto;text-align:center;padding:3rem 1.5rem}.trust{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;border-block:1px solid #e3e4ec;padding:1rem 5%;font-size:.875rem;font-weight:bold}.body{max-width:1150px;margin:auto;padding:0 5% 3rem}.content-section{padding:2.5rem 0;border-bottom:1px solid #e3e4ec}.content-section h2{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2;letter-spacing:-.5px;margin:0 0 1.2rem}.content-section p{max-width:850px}p{margin:0 0 1.2rem}li{margin:.4rem 0}.text-link{color:#2420bb;font-weight:bold}.city-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.city-card{border:1px solid #dfe0ec;border-top:4px solid #2420bb;padding:1.3rem;text-decoration:none;font-size:1.1rem;font-weight:bold}.city-card span{display:block;font-size:.875rem;font-weight:normal;color:#656673}.city-card:hover{background:#f3f4fb}details{padding:1.1rem 0;border-bottom:1px solid #ddd}summary{font-weight:bold;cursor:pointer}details p{padding-top:1rem}.closing{background:#12121b;color:white;text-align:center;padding:3rem 5%}.closing h2{font-size:2rem;line-height:1.2}.closing .button{background:white;color:#2420bb}footer{padding:2rem 5%;display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:space-between;font-size:.875rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}label{font-weight:bold}input,textarea,select{display:block;width:100%;font:1rem Arial;margin-top:.4rem;padding:.8rem;border:1px solid #9a9eac;border-radius:3px}.full{grid-column:1/-1}form>p{margin-top:1rem}.form-status{background:#f3f4fb;padding:1rem;font-size:.9rem}.filters{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.5rem}.filters button{font:700 .9rem Arial;padding:.8rem 1rem;border:1px solid #2420bb;background:white;color:#2420bb;cursor:pointer}.filters button[aria-pressed=true]{background:#2420bb;color:white}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}figure{margin:0}figure[hidden]{display:none}.photo-button{padding:0;border:0;width:100%;cursor:pointer;background:none}.photo-button img{width:100%;height:240px;object-fit:cover;display:block}figcaption{padding:.8rem 0;font-size:.9rem}dialog{border:0;border-radius:5px;max-width:min(94vw,1000px);padding:1rem}dialog::backdrop{background:#000c}dialog img{display:block;max-width:100%;max-height:75vh;margin-top:1rem}dialog button{font:700 1rem Arial;padding:.6rem 1rem}dialog p{margin:.5rem 0} @media(max-width:700px){header{align-items:flex-start;gap:1rem;flex-direction:column}header img{width:110px;height:85px}nav{gap:.8rem}.hero{padding:3rem 5%}.city-grid,.gallery-grid,.form-grid{grid-template-columns:1fr}.trust{gap:.5rem 1rem}.full{grid-column:auto}.body{padding-inline:1.2rem}.intro{text-align:left}.content-section{padding-block:2rem}}