/* Automatic viewport adaptation: script.js sets data-device-view to mobile, tablet, or desktop. */
:root{--ink:#172b3a;--muted:#65727b;--paper:#f7f8f8;--white:#fff;--olive:#777572;--orange:#722f3d;--line:#dce2e6;--dark:#343332;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.topline{background:var(--dark);color:#d7dbd1;font-size:.78rem;letter-spacing:.04em}.topinner{display:flex;justify-content:space-between;padding:9px 0}.topinner a:hover{color:#fff}.header{position:sticky;top:0;z-index:20;background:rgba(246,245,240,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(32,38,31,.08)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-weight:850;font-size:1.35rem;letter-spacing:-.06em;line-height:1}.brand small{display:block;font-size:.52rem;letter-spacing:.16em;margin-top:7px;font-weight:700;color:var(--muted)}.brandmark{display:grid;place-items:center;width:39px;height:39px;background:var(--orange);color:#fff;border-radius:50% 50% 50% 12%;font-family:Georgia,serif;font-size:1.9rem;font-style:italic}.navlinks{display:flex;align-items:center;gap:30px;font-size:.88rem;font-weight:650}.navlinks>a:not(.navcta){color:#5b6259}.navlinks>a:hover,.navlinks>a.active{color:var(--ink)}.navcta{padding:12px 17px;border:1px solid #bfc4b7;border-radius:3px}.navcta:hover{background:var(--ink);color:#fff!important;border-color:var(--ink)}.menu-toggle{display:none;border:0;background:none;font-size:1.7rem}.hero{padding:76px 0 70px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:var(--olive);margin:0 0 19px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--orange);margin-right:8px;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:560;letter-spacing:-.055em;line-height:1.06}h1{font-size:clamp(3.1rem,5.5vw,5.2rem);margin-bottom:25px}h2{font-size:clamp(2.3rem,4vw,3.65rem);margin-bottom:20px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;color:var(--olive)}.lead{font-size:1.12rem;line-height:1.8;color:#61685e;max-width:550px}.actions{display:flex;align-items:center;gap:26px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:24px;padding:15px 19px;font-weight:750;font-size:.88rem;border-radius:3px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--orange);color:#fff}.primary:hover{background:#57212d}.textlink{font-weight:750;font-size:.88rem;border-bottom:1px solid #b5b9ae;padding-bottom:5px}.textlink span{margin-left:10px}.hero-proof{display:flex;gap:15px;align-items:center;border-top:1px solid var(--line);margin-top:46px;padding-top:22px}.proof-number{font-size:1.75rem;font-weight:800;letter-spacing:-.07em}.hero-proof strong,.hero-proof small{display:block}.hero-proof strong{font-size:.85rem}.hero-proof small{font-size:.77rem;color:var(--muted)}.hero-visual{min-height:475px;position:relative;background:#e8e6e3;overflow:hidden}.visual-tag,.visual-caption{position:absolute;z-index:2;left:24px;right:24px;display:flex;justify-content:space-between;font-size:.65rem;font-weight:800;letter-spacing:.13em}.visual-tag{top:22px}.visual-tag span{color:#777572}.visual-caption{bottom:21px;color:#343332}.building-art{position:absolute;inset:70px 0 55px;background:linear-gradient(145deg,#d8d5d1 0%,#f1efed 70%);overflow:hidden}.building{position:absolute;left:27%;right:10%;bottom:0;height:62%;background:#f4f0e6;clip-path:polygon(0 19%,58% 0,100% 18%,100% 100%,0 100%);box-shadow:20px 10px 40px #454d3d20}.roof{position:absolute;left:18%;top:14%;width:69%;height:35%;background:#777572;clip-path:polygon(0 46%,57% 0,100% 41%,95% 54%,57% 16%,5% 59%)}.window{position:absolute;width:15%;height:24%;background:#722f3d;border:5px solid #efedeb}.w1{left:15%;top:42%}.w2{left:43%;top:42%}.w3{left:15%;top:72%;height:20%}.w4{left:43%;top:72%;height:20%}.door{position:absolute;right:12%;bottom:0;width:18%;height:38%;background:#722f3d}.beam{position:absolute;background:var(--orange);height:9px;width:65%;left:14%;top:36%;transform:rotate(-27deg);opacity:.85}.beam2{top:48%;left:25%;width:45%;transform:rotate(31deg);height:6px;background:#f9f4e9}.trust-strip{border-block:1px solid var(--line);background:#efedeb}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:24px 0;gap:20px}.trust-grid div{padding-left:22px;border-left:2px solid #c9c5c1}.trust-grid strong,.trust-grid span{display:block}.trust-grid strong{font-size:.94rem}.trust-grid span{font-size:.78rem;color:var(--muted);margin-top:3px}.section{padding:105px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}.section-head h2{margin-bottom:0}.section-intro{max-width:390px;color:var(--muted);margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{position:relative;min-height:300px;padding:25px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service-card:hover{background:#eeeee6}.card-index{font-size:.67rem;letter-spacing:.12em;font-weight:800;color:var(--olive)}.line-icon{font-family:Georgia,serif;font-size:2.4rem;color:var(--orange);margin:28px 0 18px}.service-card h3{font-size:1.2rem;letter-spacing:-.03em;margin-bottom:10px}.service-card p{font-size:.88rem;color:var(--muted);line-height:1.7}.card-arrow{position:absolute;right:22px;bottom:20px;font-size:1.2rem}.dark-section{background:var(--dark);color:#f5f3e9;padding:92px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.light{color:#c5cbb7}.dark-section h2 em,.contact-band h2 em{color:#c3cba8}.dark-lead{font-size:1.25rem;color:#f5f3e9;line-height:1.55}.split p:not(.eyebrow){color:#c4c9bf}.light-button{background:#f4f1e7;color:var(--ink);margin-top:15px}.light-button:hover{background:#fff}.projects{padding-bottom:110px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.project-art{height:300px;position:relative;overflow:hidden;background:#e8e6e3}.art-label{position:absolute;z-index:2;top:20px;left:20px;font-size:.65rem;letter-spacing:.12em;font-weight:800}.art-one{background:linear-gradient(135deg,#d7d9cc,#a8b09b)}.house-shape{position:absolute;left:24%;right:18%;bottom:-5%;height:76%;background:#f2eee2;clip-path:polygon(0 23%,52% 0,100% 20%,100% 100%,0 100%)}.house-shape:before{content:"";position:absolute;left:-5%;top:5%;width:112%;height:24%;background:#555e4e;clip-path:polygon(0 100%,50% 0,100% 100%)}.house-shape:after{content:"";position:absolute;left:15%;top:43%;width:65%;height:35%;background:repeating-linear-gradient(90deg,#9da592 0 26px,#e5e1d5 26px 36px)}.art-two{background:linear-gradient(150deg,#d5d8cf,#a7b2a3)}.roof-shape{position:absolute;left:8%;right:8%;bottom:12%;height:68%;background:#f0ece1;clip-path:polygon(0 38%,48% 0,100% 35%,100% 100%,0 100%)}.roof-shape:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 17px,#8e9886 18px 20px)}.art-three{background:linear-gradient(135deg,#e2d8c8,#b5b9a9)}.art-four{background:linear-gradient(135deg,#ccd4c7,#929d8b)}.building-block{position:absolute;left:25%;bottom:0;width:52%;height:72%;background:#eae5d8;box-shadow:inset 0 12px #b4b6a8}.building-block:after{content:"";position:absolute;inset:20% 12%;background:repeating-linear-gradient(90deg,#929d8d 0 24px,transparent 24px 39px),repeating-linear-gradient(0deg,transparent 0 28px,#d2cdbf 29px 33px)}.project-info{display:flex;justify-content:space-between;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.project-info h3{font-size:1.15rem;margin-bottom:5px}.project-info p{font-size:.84rem;color:var(--muted);margin:0}.project-info>span{font-size:1.2rem}.contact-band{background:var(--olive);color:#fff;padding:76px 0}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-band h2{margin-bottom:0}.contact-band h2 em{color:#e5e8d8}.footer{background:#20261f;color:#e7e8df;padding:62px 0 22px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr .7fr;gap:45px}.footer-brand{color:#fff}.footer p{max-width:280px;color:#aeb5a9;font-size:.86rem;margin-top:20px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:.82rem;color:#bbc1b7}.footer-grid strong{color:#fff;margin-bottom:8px}.footer a:hover{color:#fff;text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #444b41;margin-top:48px;padding-top:18px;font-size:.74rem;color:#aeb5a9}.page-hero{padding:82px 0 78px;background:#eeeee7;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3rem,5.5vw,4.7rem)}.page-hero .lead{max-width:670px}.service-detail-list{display:flex;flex-direction:column;gap:0}.service-detail{display:grid;grid-template-columns:100px 1fr;gap:38px;padding:48px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}.detail-number{font-size:2.3rem;font-weight:350;color:var(--orange);letter-spacing:-.06em}.service-detail h2{font-size:2.4rem}.service-detail>div:nth-child(2){max-width:780px}.service-detail p:not(.eyebrow){color:var(--muted);max-width:720px}.service-detail ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;padding-left:20px;color:#4f594d;font-size:.9rem}.project-list{display:flex;flex-direction:column;gap:64px}.reference{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;scroll-margin-top:110px}.reference:nth-child(even) .project-art{order:2}.reference h2{font-size:2.5rem}.reference p:not(.eyebrow){color:var(--muted)}.reference dl{display:grid;grid-template-columns:120px 1fr;gap:7px 18px;font-size:.83rem}.reference dt{color:var(--olive);font-weight:800}.reference dd{margin:0}.note{color:#777d72;font-size:.78rem;margin-top:32px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.team-card{padding:28px;border:1px solid var(--line);background:#f9f8f3}.avatar{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#d9dfcf;color:#3e4939;font-family:Georgia,serif;font-size:1.8rem;margin-bottom:32px}.avatar-dark{background:#d7d5c9;color:#353c32}.avatar-olive{background:#c8d0b6;color:#3d4a34}.team-card h2{font-size:1.65rem;margin-bottom:15px}.team-card p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.team-card>a{font-size:.82rem;font-weight:750;color:var(--olive);overflow-wrap:anywhere}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-block{padding-bottom:28px;margin-bottom:26px;border-bottom:1px solid var(--line)}.contact-block h2{font-size:1.5rem}.contact-block p:not(.eyebrow){color:var(--muted)}.biglink{font-size:1.4rem;color:var(--ink)}.contact-form-wrap{padding:38px;background:#eeeee7}.contact-form-wrap h2{font-size:2.2rem}.contact-form-wrap>p{color:var(--muted)}.form-note{font-size:.76rem;margin-top:24px}.legal{max-width:800px}.legal h2{font-size:1.6rem;margin-top:35px}.legal p{color:var(--muted)}@media(max-width:900px){.navlinks{gap:16px}.hero-grid{gap:28px}.hero-visual{min-height:410px}.service-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.split{gap:35px}.reference{gap:28px}.contact-grid{gap:35px}}@media(max-width:680px){.wrap{width:min(100% - 32px,var(--max))}.topinner{font-size:.68rem}.nav{height:72px}.menu-toggle{display:block}.navlinks{display:none;position:absolute;left:0;right:0;top:72px;padding:18px 24px 24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.navlinks.open{display:flex}.navlinks a{padding:13px 0}.navlinks .navcta{margin-top:8px;text-align:center}.hero{padding:50px 0}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:36px}.hero-visual{min-height:360px}.hero-proof{margin-top:30px}.trust-grid{gap:18px 12px}.trust-grid div{padding-left:12px}.trust-grid strong{font-size:.82rem}.trust-grid span{font-size:.7rem}.section{padding:70px 0}.section-head{display:block}.section-intro{margin-top:22px}.section-head>.textlink{display:inline-block;margin-top:20px}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:18px 15px;min-height:285px}.card-index{font-size:.58rem}.service-card h3{font-size:1rem}.service-card p{font-size:.8rem}.dark-section{padding:65px 0}.split{gap:20px}.project-grid{grid-template-columns:1fr}.project-art{height:240px}.contact-band-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:12px;flex-wrap:wrap}.page-hero{padding:58px 0}.service-detail{grid-template-columns:45px 1fr;gap:15px;padding:35px 0}.detail-number{font-size:1.5rem}.service-detail h2{font-size:2rem}.service-detail ul{grid-template-columns:1fr}.reference{grid-template-columns:1fr;gap:20px}.reference:nth-child(even) .project-art{order:0}.reference h2{font-size:2rem}.project-list{gap:48px}.team-grid{grid-template-columns:1fr}.team-card{padding:24px}.contact-form-wrap{padding:25px}.contact-block{margin-bottom:20px}.contact-grid{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Dropdown navigation aligned with the original site's information architecture */
.navgroup{position:relative;height:100%;display:flex;align-items:center}
.navgroup>a{color:#5b6259}
.navgroup>a span{font-size:.8em;margin-left:3px}
.dropdown{display:none;position:absolute;top:calc(100% - 8px);left:-16px;min-width:190px;padding:9px;background:#fbfaf5;border:1px solid var(--line);box-shadow:0 14px 32px #20261f18;border-radius:4px}
.dropdown a{display:block;padding:10px 12px;font-size:.83rem;color:var(--ink);border-radius:3px}
.dropdown a:hover{background:#eeeee7}
.navgroup:hover .dropdown,.navgroup:focus-within .dropdown{display:block}
@media(max-width:680px){.navgroup{display:block;height:auto}.navgroup>a{display:block;padding:13px 0}.dropdown{display:block;position:static;box-shadow:none;border:0;border-left:2px solid var(--line);border-radius:0;margin:0 0 6px 8px;padding:0 0 0 10px;background:transparent}.dropdown a{padding:8px 10px}.navlinks .navgroup>a{padding-bottom:6px}}

/* Original Fairwork identity + photographic project imagery */
.brand{gap:0;min-width:230px}
.brand-logo{display:block;width:245px;max-width:100%;height:auto}
.footer .brand-logo{width:245px;filter:brightness(0) invert(1);opacity:.92}
.brandmark{display:none}
.hero-visual{background:#e5ebef}
.hero-visual .building-art{inset:0;background:linear-gradient(180deg,rgba(20,43,58,.02),rgba(20,43,58,.42)),url('https://www.fair-work.net/assets/images/9/Dachdecker_Berlin-c0008399.jpg') center/cover no-repeat}
.hero-visual .roof,.hero-visual .building,.hero-visual .beam,.hero-visual .beam2{display:none}
.visual-tag,.visual-caption{color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.35)}
.visual-tag span{color:#fff}
.project-art{background-size:cover!important;background-position:center!important}
.art-one{background:linear-gradient(180deg,rgba(20,43,58,.02),rgba(20,43,58,.18)),url('https://www.fair-work.net/assets/images/2/Dacharbeiten-e17d4d42.jpg') center/cover no-repeat!important}
.art-two{background:linear-gradient(180deg,rgba(20,43,58,.02),rgba(20,43,58,.18)),url('https://www.fair-work.net/assets/images/5/Bauplanung_Dachdecker-05d06805.jpg') center/cover no-repeat!important}
.art-three{background:linear-gradient(180deg,rgba(20,43,58,.02),rgba(20,43,58,.18)),url('https://www.fair-work.net/assets/images/0/Zimmerer-Arbeiten-39cd50d0.jpg') center/cover no-repeat!important}
.art-four{background:linear-gradient(180deg,rgba(20,43,58,.02),rgba(20,43,58,.18)),url('https://www.fair-work.net/assets/images/9/Dachdecker_Berlin-c0008399.jpg') center/cover no-repeat!important}
.house-shape,.roof-shape,.building-block{display:none}
.primary{background:var(--orange)}
.primary:hover{background:#57212d}
.eyebrow,h1 em,h2 em{color:var(--orange)}
.dot{background:var(--orange)}
@media(max-width:700px){.brand-logo{width:205px}.brand{min-width:0}}

/* Neutral grey + wine red brand palette; clickable Fairworker profiles */
.team-card{transition:transform .2s,border-color .2s,box-shadow .2s}
.team-card:hover{transform:translateY(-4px);border-color:var(--orange);box-shadow:0 16px 36px rgba(35,30,28,.08)}
.team-name-link:hover{color:var(--orange)}
.profile-link{display:inline-flex;gap:8px;align-items:center;margin:0 0 14px;padding:8px 0;font-weight:800;color:var(--orange);border-bottom:1px solid #d8b8bd}
.profile-link:hover{color:#57212d}
.profile-hero{padding:72px 0 42px;background:#efedeb}
.profile-layout{display:grid;grid-template-columns:180px 1fr;gap:34px;align-items:start}
.profile-avatar{display:grid;place-items:center;width:150px;height:150px;border-radius:50%;background:var(--orange);color:#fff;font-size:3rem;font-weight:800;letter-spacing:-.06em}
.profile-focus{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}
.profile-focus span{padding:8px 12px;border:1px solid var(--line);border-radius:99px;background:#fff;font-size:.88rem}
.back-link{display:inline-block;margin-top:22px;color:var(--orange);font-weight:750}
@media(max-width:650px){.profile-layout{grid-template-columns:1fr}.profile-avatar{width:110px;height:110px;font-size:2.3rem}}

/* Fairworker: original-site photos and personal profiles */
.team-grid{align-items:stretch}
.team-card-photo{padding:0!important;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:4px}
.team-photo-link{display:block;position:relative;overflow:hidden;background:#e8e6e3;aspect-ratio:1.42}
.team-photo{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.team-photo-link:hover .team-photo{transform:scale(1.035)}
.photo-open{position:absolute;right:14px;bottom:14px;background:var(--orange);color:white;padding:8px 12px;font-size:.8rem;font-weight:800;opacity:.98}
.team-card-body{padding:24px}
.team-card-body h2{font-size:1.65rem;margin-bottom:14px}
.team-responsibility{font-size:.9rem;color:var(--muted);line-height:1.7}
.team-quote,.profile-quote{margin:20px 0;padding:14px 18px;border-left:3px solid var(--orange);background:#f3f1ef;font-family:Georgia,serif;font-size:1.04rem}
.team-email{display:block;color:var(--muted);font-size:.88rem;margin-top:8px}
.profile-original{display:grid;grid-template-columns:minmax(280px,.9fr) 1.1fr;gap:48px;align-items:start}
.profile-photo-wrap{background:#e8e6e3}
.profile-photo{display:block;width:100%;height:auto;object-fit:cover}
.profile-copy h2{font-size:clamp(2rem,3.4vw,3rem)}
.profile-copy p{line-height:1.8}
@media(max-width:760px){.profile-original{grid-template-columns:1fr;gap:28px}.team-card-body{padding:20px}}

/* Simplified Fairworker cards: no extra link below; photo and name open profile */
.team-card-photo{position:relative}
.team-photo-link{cursor:pointer}
.team-name-link{position:relative;z-index:2}
.team-photo-link .photo-open{display:none}

/* Clear profile affordance on worker photos */
.team-photo-link{display:block;position:relative;cursor:pointer}
.team-photo-link .photo-open{display:inline-flex;position:absolute;right:14px;bottom:14px;z-index:3;background:var(--orange);color:#fff;padding:10px 14px;font-size:.82rem;font-weight:800;border-radius:2px;opacity:1;box-shadow:0 3px 14px rgba(0,0,0,.16)}
.team-photo-link:hover .photo-open{background:#57212d}
.team-photo-link:focus-visible{outline:3px solid var(--orange);outline-offset:4px}


/* Mobile-first polish: touch targets, readable type, and no horizontal overflow */
html{ -webkit-text-size-adjust:100%; }
img{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
@media(max-width:680px){
  body{font-size:16px;line-height:1.65;overflow-wrap:break-word}
  .wrap{width:calc(100% - 32px)}
  .topinner{gap:12px;align-items:center;flex-wrap:wrap;padding:8px 0}
  .topinner span,.topinner a{font-size:.72rem}
  .nav{height:70px;gap:12px}
  .brand-logo{width:min(205px,58vw)}
  .menu-toggle{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border-radius:4px;color:var(--ink);cursor:pointer}
  .menu-toggle:active{background:#e9e6e2}
  .navlinks{top:70px;max-height:calc(100dvh - 70px);overflow-y:auto;padding:10px 20px 22px;box-shadow:0 16px 24px rgba(20,20,20,.08)}
  .navlinks>a,.navgroup>a{min-height:44px;display:flex;align-items:center}
  .navlinks .navcta{justify-content:center;min-height:48px}
  .hero{padding:42px 0 48px}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  h1{font-size:clamp(2.45rem,10vw,3.5rem);line-height:1.04;letter-spacing:-.045em}
  h2{font-size:clamp(1.9rem,7.5vw,2.7rem)}
  .lead{font-size:1rem;line-height:1.7}
  .actions{gap:16px;margin-top:24px}
  .button{min-height:48px;justify-content:center;padding:13px 16px}
  .hero-visual{min-height:310px}
  .visual-tag,.visual-caption{left:16px;right:16px;font-size:.58rem}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 0;gap:18px 10px}
  .trust-grid div{min-width:0;padding-left:10px}
  .section{padding:54px 0}
  .section-head{margin-bottom:28px}
  .service-grid{grid-template-columns:minmax(0,1fr)}
  .service-card{min-height:0;padding:20px 18px 50px}
  .line-icon{margin:18px 0 12px}
  .service-card p{font-size:.9rem}
  .dark-section{padding:54px 0}
  .split{grid-template-columns:minmax(0,1fr);gap:24px}
  .project-grid{grid-template-columns:minmax(0,1fr);gap:22px}
  .project-art{height:clamp(190px,60vw,280px)}
  .project-info{align-items:flex-start}
  .project-info h3{font-size:1.05rem}
  .contact-band{padding:52px 0}
  .contact-band-inner{gap:22px}
  .footer{padding:44px 0 20px}
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .footer-grid>div:first-child{grid-column:auto}
  .footer-bottom{margin-top:30px;padding-top:16px;font-size:.75rem}
  .page-hero{padding:46px 0 42px}
  .page-hero h1{font-size:clamp(2.4rem,9vw,3.35rem)}
  .service-detail{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:28px 0}
  .service-detail h2,.reference h2{font-size:1.8rem}
  .service-detail ul{padding-left:18px}
  .reference{grid-template-columns:minmax(0,1fr);gap:18px}
  .reference dl{grid-template-columns:95px minmax(0,1fr);gap:6px 12px}
  .team-grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .team-photo-link{aspect-ratio:1.55}
  .team-photo{object-position:center 35%}
  .team-card-body{padding:20px}
  .team-card-body h2{font-size:1.55rem}
  .photo-open{right:12px;bottom:12px;padding:10px 13px}
  .profile-original{grid-template-columns:minmax(0,1fr);gap:22px}
  .profile-photo{max-height:65vh;object-fit:cover;object-position:center 30%}
  .profile-copy h2{font-size:clamp(1.9rem,7vw,2.6rem)}
  .contact-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .biglink{font-size:clamp(1.05rem,4.5vw,1.35rem);overflow-wrap:anywhere}
  .contact-form-wrap{padding:22px 18px}
  input,select,textarea,button{max-width:100%;font:inherit}
}
@media(min-width:390px) and (max-width:680px){
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-card{padding:18px 14px 48px}
}
@media(max-width:360px){
  .wrap{width:calc(100% - 24px)}
  .brand-logo{width:54vw}
  .topinner{justify-content:center}
  .trust-grid{grid-template-columns:minmax(0,1fr)}
  .service-grid{grid-template-columns:minmax(0,1fr)}
  .footer-bottom{flex-direction:column}
}

/* Admin-Zugang und verwaltbare Termine */
.nav-login{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border:1px solid #722f3d;border-radius:2px;color:#722f3d;font-size:.88rem;font-weight:600;text-decoration:none;white-space:nowrap}.nav-login:hover{background:#722f3d;color:#fff}.events-list{display:grid;gap:18px;margin-bottom:28px}.event-entry{padding:24px;border:1px solid #ded9d7;border-left:4px solid #722f3d;background:#fff}.event-entry h2{margin-top:0}.event-meta{font-weight:600;color:#722f3d}.event-entry img{max-width:100%;height:auto;margin-top:12px}

.team-photo-placeholder{display:grid;place-items:center;background:#eee7e8;color:#722f3d;font:700 2rem Georgia,serif;min-height:240px}.worker-profile{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:36px;align-items:start}.worker-profile>img{width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:12px}@media(max-width:700px){.worker-profile{grid-template-columns:1fr;gap:20px}}
