/* ============================================================
   MTILES — Robert Koch · Fliesen & Bäder, Poing
   Brand foundation (shared across all pages)
   Marke aus Logo: Anthrazit #383836 + Signalgelb #FCEC0B
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800;900&family=Manrope:wght@400;500;600;700;800&family=Spectral:ital,wght@0,400;0,500;0,600;1,400&display=swap');

:root{
  /* core */
  --ink:#201F1C;
  --anthracite:#383836;
  --anthracite-2:#2B2B29;
  --anthracite-3:#202020;
  --yellow:#FCEC0B;
  --yellow-2:#F4DF00;
  --yellow-deep:#D9C400;

  /* neutrals */
  --paper:#FFFFFF;
  --bone:#F7F5F1;
  --stone:#EDE8E1;
  --stone-2:#E0D9CE;
  --taupe:#8A8175;
  --line:#E7E3DC;
  --line-dark:rgba(255,255,255,.14);
  --muted:#6C6960;
  --muted-2:#9A968D;

  /* type */
  --font-display:'Archivo', system-ui, sans-serif;
  --font-body:'Manrope', system-ui, sans-serif;
  --font-serif:'Spectral', Georgia, serif;

  /* layout */
  --container:1240px;
  --gutter:clamp(20px, 5vw, 64px);
  --radius:3px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--paper);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--font-display);margin:0;line-height:1.02;letter-spacing:-.02em;font-weight:800}
p{margin:0}

.container{max-width:var(--container);margin:0 auto;padding-inline:var(--gutter)}
.eyebrow{
  font-family:var(--font-display);
  font-weight:700;font-size:13px;letter-spacing:.18em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:10px;color:var(--muted);
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--yellow);display:inline-block}

/* ---- buttons ---- */
.btn{
  font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.01em;
  display:inline-flex;align-items:center;gap:10px;
  padding:15px 26px;border-radius:var(--radius);border:2px solid transparent;
  cursor:pointer;transition:transform .15s ease, background .2s, color .2s, border-color .2s;
  line-height:1;white-space:nowrap;
}
.btn:hover{transform:translateY(-2px)}
.btn--solid{background:var(--anthracite);color:#fff}
.btn--solid:hover{background:var(--ink)}
.btn--yellow{background:var(--yellow);color:var(--ink)}
.btn--yellow:hover{background:var(--yellow-2)}
.btn--ghost{background:transparent;border-color:var(--anthracite);color:var(--anthracite)}
.btn--ghost:hover{background:var(--anthracite);color:#fff}
.btn--ghost-light{background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.btn--ghost-light:hover{background:#fff;color:var(--ink);border-color:#fff}
.btn .ico{width:18px;height:18px;flex:none}

/* ---- photo placeholders (until real project photos arrive) ---- */
.ph{
  position:relative;overflow:hidden;background:var(--stone);
  --t:rgba(56,56,54,.07);
  background-image:
    linear-gradient(135deg, #ECE7E0 0%, #E2DBD1 50%, #D8D0C4 100%);
  display:flex;align-items:flex-end;
}
.ph::before{
  content:"";position:absolute;inset:0;
  background-image:
    repeating-linear-gradient(0deg, transparent 0 var(--tile,54px), var(--t) var(--tile,54px) calc(var(--tile,54px) + 1.5px)),
    repeating-linear-gradient(90deg, transparent 0 var(--tile,54px), var(--t) var(--tile,54px) calc(var(--tile,54px) + 1.5px));
  mix-blend-mode:multiply;opacity:.9;
}
.ph::after{
  content:attr(data-label);position:relative;z-index:1;
  font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(56,56,54,.55);padding:14px 16px;
  display:flex;align-items:center;gap:8px;
}
.ph--dark{background-image:linear-gradient(135deg,#33332F,#26261F);--t:rgba(255,255,255,.06)}
.ph--dark::after{color:rgba(255,255,255,.5)}
.ph--icon::after{content:"◳  " attr(data-label)}

/* utility */
.kicker-num{font-family:var(--font-display);font-weight:800;font-variant-numeric:tabular-nums}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

@media (max-width:760px){
  body{font-size:16px}
}
