
:root{
  --bg:#0b0b0b;
  --bg-soft:#121212;
  --card:#171717;
  --text:#f4f1eb;
  --muted:#aaa59d;
  --gold:#c7a46d;
  --gold-2:#e0c08d;
  --line:rgba(255,255,255,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Montserrat",Arial,sans-serif;
  font-weight:300;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-header{
  position:fixed;
  z-index:30;
  top:0; left:0; right:0;
  height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 clamp(24px,5vw,76px);
  background:linear-gradient(to bottom,rgba(0,0,0,.72),transparent);
  transition:.3s ease;
}
.site-header.scrolled{
  background:rgba(10,10,10,.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.brand{display:flex;gap:12px;align-items:center}
.brand-mark{
  width:38px;height:38px;border:1px solid var(--gold);
  display:grid;place-items:center;
  color:var(--gold);
  font-family:"Cormorant Garamond",serif;
  font-weight:600;letter-spacing:.06em;
}
.brand-name{
  letter-spacing:.28em;font-size:.88rem;font-weight:500
}
.nav{display:flex;align-items:center;gap:34px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.nav a{opacity:.82}
.nav a:hover{opacity:1;color:var(--gold-2)}
.nav-cta{border:1px solid var(--gold);padding:12px 18px}
.menu-toggle{display:none;background:none;border:0;padding:10px}
.menu-toggle span{display:block;width:26px;height:1px;background:#fff;margin:6px 0}

.hero{
  min-height:100vh;
  padding:150px clamp(24px,7vw,110px) 90px;
  position:relative;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 77% 45%, rgba(199,164,109,.12), transparent 30%),
    linear-gradient(120deg,#090909 10%,#111 70%,#0a0a0a 100%);
}
.hero:before{
  content:"";
  position:absolute;inset:0;
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:54px 54px;
}
.hero-content,.hero-logo-card{position:relative;z-index:2}
.eyebrow,.section-kicker{
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.34em;
  text-transform:uppercase;
  font-weight:500;
}
.hero h1,.section h2,.contact h2{
  font-family:"Cormorant Garamond",serif;
  font-weight:500;
  line-height:.93;
}
.hero h1{
  font-size:clamp(4.2rem,8vw,8.5rem);
  margin:20px 0 28px;
  letter-spacing:-.025em;
}
.hero h1 span{color:var(--gold-2)}
.hero-copy{
  max-width:650px;
  color:#c9c5be;
  line-height:1.9;
  font-size:clamp(.95rem,1.3vw,1.08rem);
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:38px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 26px;
  font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
  transition:.25s ease;border:1px solid transparent;
  cursor:pointer;
}
.btn-gold{background:var(--gold);color:#111;font-weight:600}
.btn-gold:hover{background:var(--gold-2);transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,255,255,.3)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.hero-logo-card{
  width:min(540px,90%);
  justify-self:end;
  box-shadow:0 35px 90px rgba(0,0,0,.5);
  border:1px solid rgba(255,255,255,.08);
}
.hero-logo-card img{width:100%;aspect-ratio:1/1;object-fit:cover}
.scroll-hint{
  position:absolute;bottom:28px;left:50%;
  transform:translateX(-50%);
  color:#777;font-size:.6rem;letter-spacing:.34em;
  writing-mode:vertical-rl;
}

.section{padding:120px clamp(24px,7vw,110px)}
.intro{background:#0e0e0e;border-top:1px solid var(--line)}
.intro-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:70px;
  align-items:end;margin-top:26px;
}
.intro h2{font-size:clamp(3.5rem,6.5vw,7rem);margin:0;color:#e7e1d7}
.intro-text{max-width:600px;padding-bottom:8px}
.intro-text p{color:var(--muted);line-height:1.95;font-size:1.02rem}
.text-link{display:inline-block;margin-top:20px;color:var(--gold);font-size:.82rem;letter-spacing:.08em}
.text-link span{margin-left:8px}

.services{background:#111}
.section-head{
  display:grid;grid-template-columns:1fr .8fr;gap:60px;
  align-items:end;margin-bottom:52px;
}
.section-head h2,.about h2,.process h2{
  font-size:clamp(3rem,5vw,5.6rem);
  margin:12px 0 0;
}
.section-head>p{color:var(--muted);line-height:1.8;max-width:520px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{
  min-height:430px;padding:34px;
  background:var(--card);
  border:1px solid var(--line);
  display:flex;flex-direction:column;
  transition:.3s ease;
}
.service-card:hover{transform:translateY(-7px);border-color:rgba(199,164,109,.6)}
.service-card.featured{
  background:linear-gradient(145deg,#201a14,#151515 62%);
  border-color:rgba(199,164,109,.42)
}
.number{color:#666;font-size:.72rem;letter-spacing:.15em}
.service-icon{font-size:3rem;color:var(--gold);margin:54px 0 18px}
.service-card h3{font-family:"Cormorant Garamond",serif;font-size:2rem;margin:0 0 16px}
.service-card p{color:var(--muted);line-height:1.8;margin:0 0 28px}
.service-card a{margin-top:auto;color:var(--gold);font-size:.76rem;letter-spacing:.08em}

.about{
  display:grid;grid-template-columns:1fr 1fr;gap:7vw;
  align-items:center;background:#0c0c0c
}
.about-image{position:relative}
.about-image:before{
  content:"";position:absolute;inset:24px -24px -24px 24px;
  border:1px solid rgba(199,164,109,.35);z-index:0
}
.about-image img{position:relative;z-index:1;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.about-copy>p:not(.section-kicker){color:var(--muted);line-height:1.9}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px;border-top:1px solid var(--line);padding-top:28px}
.facts strong{display:block;color:var(--gold);font-family:"Cormorant Garamond",serif;font-size:2rem}
.facts span{display:block;color:#8f8b84;font-size:.7rem;line-height:1.5;margin-top:5px}

.portfolio{background:#111}
.portfolio-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:18px;height:720px}
.project{position:relative;overflow:hidden;border:1px solid var(--line)}
.project-large{grid-row:1 / span 2}
.project-bg{position:absolute;inset:0;transition:.6s ease}
.project:hover .project-bg{transform:scale(1.04)}
.p1{
  background:
    linear-gradient(to top,rgba(0,0,0,.65),transparent 55%),
    radial-gradient(circle at 35% 25%,#8b7762 0 18%,transparent 35%),
    linear-gradient(135deg,#3a322c,#171717 58%,#7d674e);
}
.p2{
  background:
    linear-gradient(to top,rgba(0,0,0,.65),transparent 55%),
    linear-gradient(135deg,#5d5a55,#232323 45%,#9c8a72);
}
.p3{
  background:
    linear-gradient(to top,rgba(0,0,0,.65),transparent 55%),
    linear-gradient(120deg,#262322,#6d5b49 50%,#171717);
}
.project-label{position:absolute;left:28px;right:28px;bottom:28px}
.project-label span{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.project-label h3{font-family:"Cormorant Garamond",serif;font-size:1.8rem;margin:6px 0 0}

.process{background:#0c0c0c}
.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid var(--line)}
.step{padding:28px 28px 0 0;border-right:1px solid var(--line);min-height:230px}
.step:not(:first-child){padding-left:28px}
.step span{color:var(--gold);font-size:.7rem;letter-spacing:.2em}
.step h3{font-family:"Cormorant Garamond",serif;font-size:1.8rem;margin:38px 0 14px}
.step p{color:var(--muted);font-size:.86rem;line-height:1.75}

.contact{
  padding:120px clamp(24px,7vw,110px);
  background:
    radial-gradient(circle at 80% 30%,rgba(199,164,109,.16),transparent 26%),
    #14100c;
}
.contact-inner{max-width:980px;margin:0 auto}
.contact h2{font-size:clamp(4rem,7vw,7rem);margin:18px 0 22px}
.contact-inner>p:not(.section-kicker){max-width:720px;color:#bcb5aa;line-height:1.85}
.contact-form{margin-top:55px;padding:34px;border:1px solid rgba(199,164,109,.28);background:rgba(0,0,0,.25)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
label{display:block;margin-bottom:18px}
label span{display:block;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#a59d92;margin-bottom:9px}
input,select,textarea{
  width:100%;border:1px solid rgba(255,255,255,.16);
  background:#0f0e0c;color:#eee;padding:15px 16px;
  font:inherit;outline:none
}
input:focus,select:focus,textarea:focus{border-color:var(--gold)}
textarea{resize:vertical}
.form-note{font-size:.68rem;color:#777;margin:16px 0 0}

footer{
  padding:40px clamp(24px,5vw,76px);
  display:grid;grid-template-columns:1fr auto auto;gap:40px;
  align-items:center;border-top:1px solid var(--line);background:#090909
}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand strong{display:block;letter-spacing:.22em;font-size:.86rem}
.footer-brand small{display:block;color:#777;font-size:.55rem;letter-spacing:.25em;margin-top:4px}
.footer-links{display:flex;gap:22px;font-size:.7rem;color:#8d8983}
footer>p{color:#666;font-size:.7rem}

@media(max-width:980px){
  .nav{display:none;position:absolute;top:82px;left:0;right:0;background:#0b0b0b;padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}
  .menu-toggle{display:block}
  .hero{grid-template-columns:1fr;gap:50px;padding-top:130px}
  .hero-logo-card{justify-self:start;width:min(600px,100%)}
  .intro-grid,.section-head,.about{grid-template-columns:1fr}
  .service-grid{grid-template-columns:1fr}
  .service-card{min-height:330px}
  .portfolio-grid{height:auto;grid-template-columns:1fr;grid-template-rows:none}
  .project,.project-large{min-height:420px;grid-row:auto}
  .steps{grid-template-columns:1fr 1fr}
  .step{border-bottom:1px solid var(--line)}
  footer{grid-template-columns:1fr}
}
@media(max-width:640px){
  .site-header{height:70px;padding:0 18px}
  .brand-name{font-size:.72rem}
  .hero,.section,.contact{padding-left:20px;padding-right:20px}
  .hero{min-height:auto;padding-top:120px}
  .hero h1{font-size:4rem}
  .hero-logo-card{width:100%}
  .intro-grid{gap:32px}
  .service-card{padding:26px}
  .about-image:before{inset:14px -10px -14px 10px}
  .facts{grid-template-columns:1fr}
  .portfolio-grid .project{min-height:320px}
  .steps{grid-template-columns:1fr}
  .step,.step:not(:first-child){padding:26px 0}
  .form-row{grid-template-columns:1fr}
  .contact-form{padding:22px}
  .contact h2{font-size:3.6rem}
  .footer-links{flex-wrap:wrap}
}

/* ARTEMURO – ergänzende Bildpräsentation unter Leistungen */
.service-card{overflow:hidden}
.service-photo{display:block;width:100%;height:190px;object-fit:cover;border-radius:4px;margin:0 0 24px;filter:saturate(.9)}
.services-inspiration{margin-top:64px}
.services-inspiration-heading{max-width:740px;margin-bottom:24px}
.services-inspiration-heading h3{font-family:"Cormorant Garamond",serif;font-size:clamp(32px,4vw,48px);font-weight:500;margin:8px 0 10px}
.services-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.services-gallery figure{margin:0;background:#181818;overflow:hidden;border:1px solid rgba(190,156,101,.3)}
.services-gallery img{display:block;width:100%;height:250px;object-fit:cover;transition:transform .35s ease}
.services-gallery figure:hover img{transform:scale(1.025)}
.services-gallery figcaption{padding:16px 18px;letter-spacing:.08em;font-size:13px;text-transform:uppercase}
.example-note{font-size:12px;opacity:.7;margin-top:18px}
@media(max-width:800px){.services-gallery{grid-template-columns:1fr}.services-gallery img{height:230px}.service-photo{height:210px}}
