
/* ========= BODN. — Craft meets Design ========= */
:root{
  --bg: #0f0f10;
  --elev: #161617;
  --text: #e3e0d6;      /* off-white/beige */
  --muted: #bdb8aa;
  --line: #2a2a2b;
  --accent: #d9d6cc;
}

*{box-sizing:border-box}

html,body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--text);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji','Segoe UI Emoji', 'Segoe UI Symbol';
  line-height:1.5;
}

a{color:var(--text); text-decoration:none}
.container{max-width:1100px; margin:0 auto; padding:0 20px}

header{
  position:sticky; top:0; z-index:50;
  backdrop-filter:saturate(180%) blur(8px);
  background:rgba(15,15,16,0.6);
  border-bottom:1px solid var(--line);
}

.nav{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; align-items:baseline; gap:10px}
.brand__title{font-weight:800; letter-spacing:0.06em; font-size:28px}
.brand__dot{font-weight:900}
.brand__tag{font-style:italic; color:var(--muted); font-size:14px}

.menu{display:flex; gap:24px; align-items:center}
.menu a{opacity:0.9}
.menu a:hover{opacity:1}

.btn{
  padding:10px 16px; border:1px solid var(--line); border-radius:999px;
  background:transparent; color:var(--text)
}
.btn:hover{border-color:var(--muted)}

.hero{
  background: radial-gradient(1200px 600px at 50% 0%, rgba(217,214,204,0.06), transparent 60%), url('./assets/images/hero.svg') center/cover no-repeat;
  border-bottom:1px solid var(--line);
}
.hero .container{padding:90px 20px 70px}
.kicker{color:var(--muted); letter-spacing:.2em; text-transform:uppercase; font-size:12px}
.hero h1{font-size:64px; letter-spacing:.04em; margin:12px 0 10px}
.hero p{font-size:18px; color:var(--muted); max-width:750px}
.cta-row{display:flex; gap:12px; margin-top:26px; flex-wrap:wrap}
.btn-primary{background:var(--text); color:#0f0f10; border-color:transparent; font-weight:700}
.btn-outline{border-color:var(--line)}

.section{padding:72px 0; border-bottom:1px solid var(--line)}
.section h2{font-size:34px; letter-spacing:.03em; margin:0 0 14px}
.section .sub{color:var(--muted); margin:0 0 24px}

.services{
  display:grid; grid-template-columns: repeat(3, 1fr); gap:16px;
}
.card{
  background:var(--elev); border:1px solid var(--line); padding:22px; border-radius:14px;
}
.card h3{margin:0 0 6px}
.card p{color:var(--muted); margin:0}

.gallery{display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:8px}
.gallery img{width:100%; height:260px; object-fit:cover; border-radius:12px; border:1px solid var(--line)}
.about{display:grid; grid-template-columns:1.1fr .9fr; gap:24px}
.about .box{background:var(--elev); border:1px solid var(--line); border-radius:14px; padding:22px}
.about p{color:var(--muted)}

.kv{display:flex; flex-direction:column; gap:8px; padding-left:0; margin:12px 0}
.kv li{list-style:none; border:1px dashed var(--line); padding:12px 14px; border-radius:10px; background: #121214}

.contact .grid{display:grid; grid-template-columns:1.1fr .9fr; gap:24px}
form{background:var(--elev); border:1px solid var(--line); border-radius:14px; padding:22px}
label{display:block; font-size:14px; color:var(--muted); margin-top:10px}
input, textarea{
  width:100%; padding:12px 14px; margin-top:6px;
  background:#121214; color:var(--text);
  border:1px solid var(--line); border-radius:10px;
}
textarea{min-height:120px; resize:vertical}
form .row{display:flex; gap:12px}
form .row > div{flex:1}
form button{margin-top:14px}

.contact-card{background:var(--elev); border:1px solid var(--line); border-radius:14px; padding:22px}
.contact-card a{color:var(--text)}

footer{padding:40px 0; color:var(--muted)}

.badge{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; background:#121214; border:1px solid var(--line); border-radius:999px; font-size:12px}
.badge dot{width:8px; height:8px; border-radius:50%; display:inline-block; background:var(--muted)}

@media (max-width: 900px){
  .services{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr 1fr}
  .about{grid-template-columns:1fr}
  .contact .grid{grid-template-columns:1fr}
  .hero h1{font-size:46px}
}
