/* PRACTICE INSIDES · arch.css — Praxen-Sektion im Architektur-/Interior-Look (3 Varianten) */
@font-face{font-family:"Scto";src:url("/fonts/scto-light.woff2") format("woff2");font-weight:300;font-display:swap}
.arch{background:#F3F1EE;color:#0A0A0A}
.arch .pv-bar{position:sticky;top:0;z-index:50;display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap;padding:.6rem 1rem;background:#0A0A0A;color:#fff;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase}
.arch .pv-bar nav a{color:#fff;margin-left:.6rem;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.15rem .6rem;text-decoration:none}
.pv-tag{position:absolute;left:1.2rem;top:1rem;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:#8E403F;border:1px solid rgba(10,10,10,.12);border-radius:999px;padding:.3rem .7rem;z-index:3;background:rgba(255,255,255,.6)}
.arch img{display:block}
.arch figure{margin:0}

.ar-sec{position:relative;padding:clamp(5rem,9vw,8rem) 0 clamp(4rem,7vw,6rem);border-top:1px solid rgba(10,10,10,.08)}
.ar-head{margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.ar-head h2{margin-bottom:1rem}
.ar-sub{font-weight:300;font-size:clamp(1.15rem,1.6vw,1.45rem);color:#4A4A4E;letter-spacing:-.01em;max-width:620px;line-height:1.4}

/* Bild-Reveal */
[data-ar]{clip-path:inset(0 0 0 0);}
[data-ar] img{transform:scale(1.04);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
[data-ar].in img{transform:scale(1)}
[data-ar] figcaption{opacity:0;transform:translateY(6px);transition:opacity .8s ease .4s,transform .8s ease .4s}
[data-ar].in figcaption{opacity:1;transform:none}

/* Bildunterschriften wie im Portfolio */
.arch figcaption{font-family:var(--font-mono);font-weight:300;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:#6E6E73}

/* Projektdaten */
.ar-no{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.2em;color:#8E403F}
.ar-project{display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;padding:clamp(2.5rem,5vw,4.5rem) 0}
.ar-pt{display:flex;flex-direction:column;gap:1rem}
.ar-pt h3{font-weight:300;font-size:clamp(2.6rem,5vw,4.6rem);letter-spacing:-.04em;line-height:.95;margin:0}
.ar-data{margin:0}
.ar-data div{display:grid;grid-template-columns:160px 1fr;gap:1rem;padding:1rem 0;border-top:1px solid rgba(10,10,10,.14)}
.ar-data div:last-child{border-bottom:1px solid rgba(10,10,10,.14)}
.ar-data dt{font-family:var(--font-mono);font-weight:300;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:#6E6E73;padding-top:.3em}
.ar-data dd{margin:0;font-weight:300;font-size:1.25rem;letter-spacing:-.015em}
.ar-data--s div{grid-template-columns:110px 1fr;padding:.7rem 0}
.ar-data--s dd{font-size:1.05rem}
.ar-data--row{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}
.ar-data--row div{display:block;border:0;border-top:1px solid rgba(10,10,10,.14);padding-top:1rem}
.ar-data--row div:last-child{border-bottom:0}
.ar-data--row dd{margin-top:.4rem;font-size:1.15rem}

/* ---------- A · Portfolio ---------- */
.ar-full{position:relative;width:100%;height:min(92vh,980px);overflow:hidden}
.ar-full img{width:100%;height:100%;object-fit:cover}
.ar-full figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;padding:1.4rem clamp(1.2rem,4vw,3rem);color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.45))}
.ar-seq{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;padding-bottom:clamp(3rem,6vw,5rem);align-items:start}
.ar-seq figure{position:relative;overflow:visible}
.ar-seq .ar-tall img{aspect-ratio:2/3}
.ar-seq .ar-wide{grid-column:span 2;align-self:end}.ar-seq .ar-wide img{aspect-ratio:3/2}
.ar-seq .ar-off{margin-top:clamp(2rem,6vw,5rem)}
.ar-seq img{width:100%;height:auto;object-fit:cover;overflow:hidden}
.ar-seq figcaption{position:absolute;left:0;bottom:-1.6rem;color:#6E6E73}
.ar-seq figure{margin-bottom:1.8rem}
.ar-seq3{grid-template-columns:repeat(3,1fr)}

/* ---------- B · Sticky ---------- */
.st{display:grid;grid-template-columns:.9fr 1.4fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.st-side{position:sticky;top:5.5rem;padding-bottom:2rem;min-height:70vh;display:flex;flex-direction:column}
.st-block{position:absolute;inset:0 auto auto 0;width:100%;opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease;pointer-events:none}
.st-block.on{opacity:1;transform:none;pointer-events:auto}
.st-block h3{font-weight:300;font-size:clamp(2.6rem,5vw,4.6rem);letter-spacing:-.04em;line-height:.95;margin:.6rem 0 1.2rem}
.st-block p{font-weight:300;font-size:1.1rem;color:#4A4A4E;line-height:1.55;max-width:380px;margin-bottom:1.6rem}
.st-logo{height:22px;width:auto;margin-top:auto;opacity:.8;position:absolute;bottom:0;left:0}
.st-imgs{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1.4rem}
.st-imgs figure{position:relative;grid-column:span 2;overflow:visible;margin-bottom:1.6rem}.st-imgs figure img{aspect-ratio:3/2}
.st-imgs figure.st-half{grid-column:span 1}.st-imgs figure.st-half img{aspect-ratio:2/3}
.st-imgs figure.st-half.r{margin-top:4rem}
.st-imgs img{width:100%;height:auto;object-fit:cover}
.st-imgs figcaption{position:absolute;left:0;bottom:-1.5rem}

/* ---------- C · Fullscreen Stack ---------- */
.fsk{position:relative}
.fsk-slide{position:sticky;top:0;height:100vh;overflow:hidden;background:#000}
.fsk-slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 2.4s cubic-bezier(.2,.7,.2,1)}
.fsk-slide.in img{transform:scale(1)}
.fsk-slide figcaption{position:absolute;left:clamp(1.2rem,4vw,3rem);right:clamp(1.2rem,4vw,3rem);bottom:clamp(1.4rem,4vw,3rem);display:grid;grid-template-columns:1fr auto;align-items:end;color:#fff;text-transform:none}
.fsk-slide b{display:block;font-weight:300;font-size:clamp(2.4rem,6vw,5.5rem);letter-spacing:-.04em;line-height:.9;font-family:"Scto",sans-serif}
.fsk-slide span{display:block;margin-top:.6rem;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.fsk-slide i{font-style:normal;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.2em;color:rgba(255,255,255,.7)}
.fsk-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.5));pointer-events:none}
.ar-project--c{display:block;padding-top:3rem}

@media (max-width:900px){
  .ar-sec{padding:4rem 0 3rem}
  .ar-head,.ar-project,.ar-seq,.st{padding-left:1rem;padding-right:1rem}
  .ar-full{height:70vh}
  .ar-full figcaption{flex-direction:column;gap:.3rem;padding:1rem}
  .ar-project{grid-template-columns:1fr;gap:1.6rem;padding:2.2rem 1rem}
  .ar-data div{grid-template-columns:110px 1fr}
  .ar-data dd{font-size:1.05rem}
  .ar-seq{grid-template-columns:1fr 1fr;gap:1rem}
  .ar-seq .ar-off{margin-top:2rem}
  .ar-seq .ar-wide{grid-column:span 2}
  .ar-seq3{grid-template-columns:1fr 1fr}
  .ar-seq figcaption{bottom:-1.3rem;font-size:.56rem}
  .st{grid-template-columns:1fr}
  .st-side{position:relative;top:auto;min-height:0}
  .st-block{position:relative;opacity:1;transform:none;pointer-events:auto;margin-bottom:2rem}
  .st-block[data-st="kulmbach"]{display:none}
  .st-logo{display:none}
  .st-imgs figure.st-half.r{margin-top:0}
  .fsk-slide{height:80vh}
  .ar-data--row{grid-template-columns:1fr 1fr;gap:1rem}
  .pv-tag{left:.8rem;top:.7rem}
}
/* Aufmacher ungeschnitten zeigen (ganzes Bild, 3:2) */
.ar-full--whole{height:auto;aspect-ratio:3/2;max-height:none}
.ar-full--whole img{object-fit:cover;object-position:50% 50%}
@media (max-width:900px){.ar-full--whole{height:auto;aspect-ratio:3/2}}
/* Office-Aufmacher: fast ganz, aber nicht höher als der Bildschirm */
.ar-full--whole{aspect-ratio:auto;height:min(82vh,60vw);max-height:none}
.ar-full--whole img{object-fit:cover;object-position:50% 58%}
@media (max-width:900px){.ar-full--whole{height:auto;aspect-ratio:3/2}}
