.elementor-60 .elementor-element.elementor-element-5b564de{--display:flex;}/* Start custom CSS for html, class: .elementor-element-f7b0be0 *//* --- Base --- */
:root{
  --bg:#fafafa;
  --paper:#ffffff;
  --ink:#121212;
  --muted:#6b7280;
  --line:#e5e7eb;
  --shadow:0 6px 30px rgba(0,0,0,.08);
  --radius-lg:24px;
  --radius-md:16px;
  --radius-sm:12px;
  --container:1120px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:var(--container);margin-inline:auto;padding:0 16px}


/* --- Hero --- */
.hero{padding:64px 0 56px;background:linear-gradient(180deg,#fff,transparent)}
.hero__grid{
  display:grid;gap:40px;align-items:center;
  grid-template-columns:1fr;
}
.hero h1{font-size:clamp(28px,4.2vw,48px);line-height:1.1;margin:0 0 12px}
.lead{color:var(--muted);max-width:60ch;margin:0}
.cta{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.hero__img{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.hero__img img{aspect-ratio:4/3;object-fit:cover;width:100%}

@media (min-width: 960px){
  .hero__grid{grid-template-columns:1.05fr .95fr}
}

/* --- Buttons --- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 18px;border-radius:16px;border:1px solid transparent;
  font-weight:600;cursor:pointer;transition:.2s ease-in-out;
}
.btn--primary{background:#111;color:#fff}
.btn--primary:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(0,0,0,.15)}
.btn--ghost{background:transparent;border-color:#d1d5db;color:#111}
.btn--ghost:hover{background:#111;color:#fff;border-color:#111}

/* --- Strip stats --- */
.strip{border-block:1px solid var(--line);background:#fff}
.strip__grid{
  display:grid;gap:12px;padding:14px 0;
  grid-template-columns:repeat(2,1fr);
}
.stat{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px;border:1px solid var(--line);border-radius:16px;
  background:var(--bg);box-shadow:0 1px 0 rgba(0,0,0,.02) inset;
}
.stat__k{font-weight:800;font-size:22px}
.stat__v{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
@media (min-width: 768px){
  .strip__grid{grid-template-columns:repeat(4,1fr)}
}

/* --- Section heads --- */
.section-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px;
}
.section-head h2{margin:0;font-size:clamp(22px,3vw,32px)}
.muted{color:var(--muted);font-size:14px;margin:.3rem 0 0}

/* --- Gallery masonry --- */
.gallery{padding:56px 0}
.masonry{
  column-count:1;column-gap:16px;
}
@media (min-width:640px){ .masonry{ column-count:2 } }
@media (min-width:1024px){ .masonry{ column-count:3 } }
.card{
  display:block;break-inside:avoid;margin-bottom:16px;border-radius:16px;overflow:hidden;
  box-shadow:var(--shadow);position:relative;background:#000;
}
.card img{width:100%;height:auto;transition:transform .35s ease}
.card:hover img{transform:scale(1.02)}
.tag{
  position:absolute;left:10px;bottom:10px;
  background:rgba(0,0,0,.5);backdrop-filter:blur(6px);
  color:#fff;font-size:12px;padding:4px 8px;border-radius:999px
}

/* --- Lightbox (:target) --- */
.lightbox{
  position:fixed;inset:0;background:rgba(0,0,0,.92);
  display:none;align-items:center;justify-content:center;padding:24px;z-index:1000;
}
.lightbox:target{display:flex}
.lightbox img{
  max-width:min(90vw,1600px);max-height:80vh;object-fit:contain;border-radius:16px;box-shadow:var(--shadow)
}
.lightbox__close{
  position:absolute;top:18px;right:18px;color:#fff;font-size:26px;line-height:1;
  background:rgba(255,255,255,.12);padding:8px 12px;border-radius:12px
}
.lightbox__nav{
  position:absolute;top:50%;transform:translateY(-50%);color:#fff;
  font-size:42px;line-height:1;background:rgba(255,255,255,.12);padding:8px 16px;border-radius:12px
}
.lightbox__nav.prev{left:18px}
.lightbox__nav.next{right:18px}

/* --- About + Contact --- */
.about{background:#fff;border-top:1px solid var(--line);padding:56px 0}
.about__grid{
  display:grid;gap:28px;align-items:start;grid-template-columns:1fr;
}
.about h3{margin:0 0 8px}
.bullets{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:8px;grid-template-columns:1fr 1fr}
.bullets li{position:relative;padding-left:14px}
.bullets li::before{
  content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:999px;background:#111;
}
.contact{
  border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:20px;box-shadow:var(--shadow)
}
.form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form label{display:grid;gap:6px;font-size:14px}
.form .full{grid-column:1/-1}
input,textarea{
  width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:12px;background:#fff;font:inherit
}
input:focus,textarea:focus{outline:2px solid #111;outline-offset:2px}
@media (min-width: 980px){
  .about__grid{grid-template-columns:1.2fr .8fr}
}/* End custom CSS */