:root{--cream:#faf7f2;--sand:#eee6dc;--brown:#6b5040;--ink:#493a30;--muted:#86766a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-weight:300;line-height:1.8}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.25}h1{font-size:clamp(2.8rem,5vw,5.4rem);margin:14px 0}h2{font-size:clamp(2.3rem,4vw,4rem);margin:12px 0 26px}h3{font-size:1.6rem;margin:12px 0}p{margin:0 0 20px}a{color:inherit}img{max-width:100%;display:block}.header{height:90px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#faf7f2;position:relative;z-index:5}.brand{text-decoration:none;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:1.6rem;line-height:1.1}.brand span{display:block;font:400 9px 'DM Sans',sans-serif;letter-spacing:.36em;text-align:center;margin-top:6px}.header nav{display:flex;gap:32px}.header nav a{text-decoration:none;font-size:12px;letter-spacing:.08em}.header nav a:hover,.contact-links a:hover{text-decoration:underline}.menu{display:none}.hero{display:grid;grid-template-columns:1.03fr .97fr;min-height:680px;background:#f1e9df}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 43%}.hero-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:55px 8%}.hero-copy .logo{width:min(390px,100%);mix-blend-mode:multiply;margin:5px auto 22px}.eyebrow{font-size:11px;letter-spacing:.25em;font-weight:600;color:#927a66}.hero-copy>p:not(.eyebrow){font-size:16px}.btn{display:inline-block;margin-top:22px;padding:14px 29px;background:#705441;color:white;text-decoration:none;font-size:12px;letter-spacing:.08em;transition:background .2s}.btn:hover{background:#4d382c}.intro{max-width:740px;text-align:center;margin:auto;padding:105px 25px 110px}.intro p:last-child{font-size:17px}.section{padding:100px max(6%,calc((100vw - 1240px)/2))}.about{display:grid;grid-template-columns:.88fr 1.12fr;gap:9%;align-items:center;background:#ede4da}.about-image img{width:100%;height:620px;object-fit:cover;object-position:center}.about-copy{max-width:620px}.signature{margin-top:28px}.signature em{display:block;font-family:'Playfair Display',Georgia,serif;font-size:2rem;color:#8a6b56}.section-heading{text-align:center;margin-bottom:50px}.section-heading p:last-child{color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.gallery figure{margin:0;aspect-ratio:3/4;overflow:hidden}.gallery figure img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery figure:hover img{transform:scale(1.035)}.services{text-align:center;background:#f1e9df}.services-intro{max-width:600px;margin:0 auto 45px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left}.service-grid article{background:#faf7f2;padding:34px}.service-grid span{font-size:11px;letter-spacing:.2em;color:#a28b78}.service-grid p{font-size:14px;margin-bottom:0}.quote{padding:85px 20px;text-align:center;background:#d5c2b0}.quote p{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(1.6rem,3.2vw,3rem);margin:0}.contact{text-align:center;max-width:900px;margin:auto}.contact>p:not(.eyebrow){max-width:580px;margin:0 auto 16px}.contact-links{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;margin-top:40px}.contact-links a{text-decoration:none;font-size:14px}.location{font-size:12px;color:var(--muted);margin-top:30px!important}footer{padding:30px 6%;display:flex;justify-content:space-between;gap:20px;background:#e8ddd1;font-size:12px}footer div{display:flex;gap:22px}footer a{text-decoration:none}.legal{max-width:760px;margin:90px auto;padding:0 25px;min-height:50vh}.legal h1{font-size:2.7rem}.notice{padding:20px;background:#fff0dc;border:1px solid #c7aa83;font-weight:500}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-photo{height:460px}.hero-copy{padding:55px 24px 70px}.hero-copy .logo{max-width:320px}.about{grid-template-columns:1fr;gap:35px}.about-image img{height:auto;max-height:650px;object-fit:contain}.gallery{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.section{padding:70px 6%}.intro{padding:80px 22px}.header{height:75px}.menu{display:block;border:0;background:none;font-size:25px;color:var(--ink)}.header nav{display:none;position:absolute;top:75px;left:0;right:0;padding:22px;background:#faf7f2;flex-direction:column;gap:18px;box-shadow:0 8px 15px #0001}.header nav.open{display:flex}}@media(max-width:480px){.hero-photo{height:350px}.gallery{gap:8px}.service-grid{grid-template-columns:1fr}.about-image img{max-height:540px}.contact-links{gap:14px;flex-direction:column}footer{flex-direction:column;align-items:center;text-align:center}}
.photo-credit{font-size:12px;color:#786457;margin:10px 0 0;text-align:center}

/* Logo als grossflaechiger Einstieg */
.hero{display:flex;justify-content:center;align-items:center;min-height:570px;background:#f7f0e8}.hero-copy{width:100%;max-width:980px;padding:70px 5%}.hero-copy .logo{width:min(740px,94%);max-width:none;mix-blend-mode:normal;margin:10px auto 22px}.gallery figure img{object-fit:contain;background:#eee6dc}@media(max-width:850px){.hero{min-height:480px}.hero-copy .logo{width:min(620px,100%);max-width:none}}

/* Large centered brand mark on the landing page */
.hero{display:flex;justify-content:center;align-items:center;min-height:650px}.hero-copy{width:100%;max-width:1000px;padding:75px 6%}.hero-copy .logo{width:min(760px,100%);mix-blend-mode:normal;margin:0 auto 18px}
@media(max-width:700px){.hero{min-height:540px}.hero-copy{padding:48px 6%}.hero-copy .logo{width:100%}}
