:root{--navy:#10283c;--ink:#253747;--paper:#fcf7ef;--cream:#f7ede2;--sand:#dfc9b2;--muted:#72695f;--blue:#8aaabd;--serif:'Cormorant Garamond',Georgia,serif;--script:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--book-height:720px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);background:#e8ddd0;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #679cbf;outline-offset:4px}button:disabled{opacity:.3;cursor:not-allowed}img{display:block;width:100%;height:100%;object-fit:cover}.skip-link{position:fixed;z-index:150;left:15px;top:-100px;padding:12px 20px;background:#fff}.skip-link:focus{top:8px}
.site-wrap{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 7% 0%,#fbf4ec 0,transparent 45%),radial-gradient(ellipse at 100% 95%,#d4c1ad 0,transparent 51%),#e8ddd0}.site-header{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:10px clamp(20px,4.7vw,90px);background:#fcf8f2;border-bottom:1px solid #d9c9b9}.brand{display:flex;align-items:center;gap:12px;flex:0 0 auto}.brand-illustration{display:grid;place-items:center;width:44px;height:58px;color:var(--navy);border:1px solid #b1aa9d;border-radius:50% 50% 3px 3px}.brand-illustration svg{width:34px;height:46px}.brand-wordmark{display:flex;flex-direction:column}.brand-wordmark strong{font-size:14px;letter-spacing:.38em;font-weight:600}.brand-wordmark em{font:29px/1 var(--script);white-space:nowrap;margin-top:2px}.chapter-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:clamp(10px,1.55vw,27px)}.chapter-nav a{position:relative;padding:12px 0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;white-space:nowrap;color:#62605e}.chapter-nav a:hover,.chapter-nav a[aria-current='page']{color:var(--navy)}.chapter-nav a[aria-current='page']:after{content:'';height:1px;position:absolute;left:0;right:0;bottom:6px;background:var(--navy)}.header-contact{flex:0 0 auto;padding:14px 18px;color:white;background:var(--navy);font-size:10px;white-space:nowrap}.header-contact span{margin-left:9px}
.book-main{width:min(1140px,calc(100% - 44px));margin:0 auto;flex:1;padding:16px 0 20px}.book-intro{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 8px 12px}.eyebrow{display:block;color:#75716c;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:.15em}.book-intro .eyebrow{display:flex;align-items:center;gap:9px;white-space:nowrap;color:var(--navy);margin:0}.intro-line{display:inline-block;width:26px;height:1px;background:var(--navy)}.sep{color:#b39880}.book-instruction{margin:0;font-size:12px;color:#8f7967}.book-instruction em{font:26px/1 var(--script);color:var(--navy);padding-left:8px;white-space:nowrap}
.book-stage{perspective:2600px;position:relative;padding:0 12px 13px;filter:drop-shadow(0 20px 22px rgba(58,43,30,.2))}.book-back{position:absolute;top:12px;bottom:6px;left:19px;right:13px;background:repeating-linear-gradient(to bottom,#e6d6c4 0 1px,#f4eadd 1px 3px);border-radius:2px 10px 10px 2px;box-shadow:8px 3px 0 -2px #c7b39e,-8px 0 0 -3px #c9b8a5,0 14px 30px #9d887260}.book-frame{position:relative;width:100%;height:var(--book-height);background:var(--paper);border-radius:2px 10px 10px 2px;transform-style:preserve-3d;box-shadow:inset -1px 0 #d0bba5,0 0 0 1px #dbccbd}.paper-current,.turn-leaf{position:absolute;inset:0}.paper-current{z-index:1;background:var(--paper);border-radius:inherit;overflow:hidden}.book-frame.is-turning .paper-current{pointer-events:none}.turn-leaf{z-index:6;transform-style:preserve-3d;transform-origin:left center;pointer-events:none;will-change:transform}.turn-leaf[hidden]{display:none}.turn-leaf-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:2px 9px 9px 2px}.turn-leaf-front{background:var(--paper);box-shadow:4px 7px 18px rgba(39,31,25,.14),13px 2px 18px rgba(54,37,20,.05)}.turn-leaf-front:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,27,18,.2),transparent 11%,transparent 70%,rgba(255,255,255,.16) 89%,rgba(23,21,22,.16));opacity:.28}.turn-leaf-back{transform:rotateY(180deg);background:linear-gradient(98deg,#eadfd1,#fffaf1 16%,#f4e7d9 91%,#d5c3af);border-left:1px solid #d7bfa9;box-shadow:-10px 0 20px rgba(23,28,34,.15)}.turn-leaf-back:before{content:'';position:absolute;inset:0;opacity:.16;background:repeating-linear-gradient(0deg,transparent 0,transparent 5px,#e0d2c2 6px,transparent 7px)}.leaf-back-ornament{position:absolute;left:20%;right:20%;top:34%;display:flex;flex-direction:column;text-align:center;color:#8a7866;border-top:1px solid #cfbdab;border-bottom:1px solid #cfbdab;padding:33px 0}.leaf-back-ornament span{font-size:21px;letter-spacing:.55em}.leaf-back-ornament em{font:55px/1 var(--script)}.leaf-back-ornament small{margin-top:21px;font-size:10px;letter-spacing:.21em}.spine-shadow{position:absolute;left:0;top:0;bottom:0;width:19px;z-index:10;pointer-events:none;background:linear-gradient(to right,rgba(44,36,32,.25),rgba(92,72,50,.09) 52%,transparent);border-radius:2px 0 0 2px}.page-edge{position:absolute;right:-4px;top:8px;bottom:6px;width:5px;z-index:4;pointer-events:none;background:repeating-linear-gradient(to bottom,#e8d5c1,#fff8ed 3px,#d2baa2 5px);border-radius:0 4px 4px 0}
/* Kein Scrollcontainer innerhalb der Buchseite. */
.page{height:100%;min-width:0;display:flex;flex-direction:column;background:var(--paper)}.page-body{flex:1;min-height:0;overflow:hidden}.folio{
  height:39px;
  flex:0 0 39px;
  margin:0 36px;
  padding-right:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid #decdb9;
  color:#776b5f;
  font-size:9px;
  letter-spacing:.15em;
}.folio b{font-size:11px;font-weight:600;color:var(--navy)}.folio span b{font-size:9px;margin:0 8px}.serif-title,.chapter-heading{color:var(--navy);font-family:var(--serif);font-weight:500;letter-spacing:-.025em;line-height:.96}.hand-title{color:var(--navy);font:clamp(45px,4.8vw,67px)/1.1 var(--script);margin:0}.rule{display:block;height:1px;width:65px;background:#cbb69f;margin:14px 0 20px}.copy,.lead{color:#48505a;font-size:14px;line-height:1.72;margin:0}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:21px;background:var(--navy);color:#fff;padding:15px 18px;min-height:46px;font-size:11px;font-weight:600;letter-spacing:.035em;white-space:nowrap;transition:background .2s}.btn:hover,.header-contact:hover{background:#35516a}.btn span{font-size:17px;font-weight:400}.simple-link{border-bottom:1px solid #bca58b;padding-bottom:6px;font-size:11px}
.single-hero,.service-intro,.single-about,.single-contact{height:100%;display:grid;min-width:0}.single-hero{grid-template-columns:49% 51%}.single-hero-image,.service-intro-image,.single-about-picture,.single-contact-picture{position:relative;overflow:hidden;min-height:0}.single-hero-image img{object-position:58% center}.single-hero-image:after,.service-intro-image:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(11,26,41,.36));pointer-events:none}.image-caption{position:absolute;bottom:30px;left:35px;font-size:10px;font-weight:600;letter-spacing:.18em;color:white;z-index:1}.single-hero-copy,.single-about-copy,.single-contact-copy,.service-intro-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(27px,4.3vw,66px)}.single-hero-copy .serif-title{font-size:clamp(65px,7vw,91px);margin:17px 0 2px}.single-hero-copy .hand-title{font-size:clamp(44px,4.8vw,64px)}.single-hero-copy .copy{margin-bottom:25px;max-width:470px}
.single-services{height:100%;display:flex;flex-direction:column;justify-content:space-evenly;padding:clamp(25px,4vw,56px) clamp(29px,5vw,70px);gap:24px}.service-head .chapter-heading{font-size:clamp(51px,5.2vw,75px);margin:10px 0 16px}.service-head .hand-title{font-size:clamp(49px,5vw,70px);font-weight:400}.service-head .copy{max-width:730px}.service-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.service-tile{position:relative;display:flex;flex-direction:column;min-width:0;padding:0 0 23px;border-bottom:1px solid #d6c4b0}.service-tile:hover .tile-photo img{transform:scale(1.045)}.tile-photo{width:100%;height:clamp(135px,16vw,225px);overflow:hidden;margin-bottom:18px}.tile-photo img{transition:transform .4s}.service-tile span{font-size:9px;color:#7b7167;letter-spacing:.13em}.service-tile h3{color:var(--navy);font:500 clamp(29px,3vw,40px)/1.15 var(--serif);margin:7px 0}.service-tile p{font-size:12px;line-height:1.6;margin:0;padding-right:15px}.service-tile b{position:absolute;right:5px;bottom:22px;font-size:20px;font-weight:400}
.service-intro{grid-template-columns:47% 53%}.service-intro-image img{object-position:center}.service-quote{position:absolute;left:36px;right:25px;bottom:37px;z-index:1;color:white;font:500 clamp(37px,4.3vw,59px)/1 var(--serif);text-shadow:0 2px 18px rgba(0,0,0,.4)}.service-intro-copy .chapter-heading{font-size:clamp(52px,5vw,74px);margin:17px 0 12px}.service-intro-copy .hand-title{font-size:clamp(46px,4.3vw,61px)}.service-intro-copy .lead{max-width:490px;margin-bottom:23px}
.service-offer{height:100%;display:flex;flex-direction:column;justify-content:center;gap:25px;padding:clamp(23px,4.4vw,58px) clamp(35px,6.5vw,90px)}.offer-top .chapter-heading{font-size:clamp(56px,5.6vw,82px);margin:13px 0}.offer-top .hand-title{font-size:clamp(50px,5.4vw,76px);font-weight:400}.offer-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 30px}.offer-list li{display:flex;align-items:baseline;gap:15px;min-height:47px;border-bottom:1px solid #e2d3c1;padding:11px 0}.offer-list li span{color:#9a8471;font-size:10px;letter-spacing:.08em}.offer-list li strong{font-size:13px;line-height:1.5;font-weight:500}.offer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.offer-bottom>span{font-size:10px;letter-spacing:.12em;color:#887f75}
.single-about{grid-template-columns:43% 57%}.single-about-picture img{object-position:32% center}.single-about-picture span{position:absolute;color:#fff;left:33px;right:15px;bottom:32px;font:47px/1 var(--script);text-shadow:0 2px 10px #342d25}.single-about-copy .chapter-heading,.single-contact-copy .chapter-heading{margin:13px 0 7px;font-size:clamp(56px,5.2vw,75px)}.single-about-copy .copy{margin-bottom:13px}.single-about-copy .btn{margin-top:5px}.single-contact{grid-template-columns:56% 44%}.single-contact-copy .copy{max-width:430px}.contact-options{display:grid;gap:12px;margin:20px 0 22px}.contact-options a,.contact-options>div{display:flex;align-items:center;gap:13px;font-size:13px;min-width:0;overflow-wrap:anywhere}.contact-options b{display:grid;place-items:center;flex-shrink:0;width:24px;color:var(--navy);font-size:19px;font-weight:500}.contact-options a:hover{text-decoration:underline}.single-contact-picture img{object-position:38% center}.contact-image-text{position:absolute;left:30px;bottom:30px;right:25px;font:47px/1.08 var(--script);color:white;text-shadow:0 2px 10px #49382d}
.book-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:0 auto;padding:20px 5px 5px}.turn-control{display:flex;align-items:center;gap:12px;color:var(--navy);cursor:pointer;border:0;background:none;font-size:11px;letter-spacing:.09em;font-weight:700;text-transform:uppercase;padding:4px 0}.turn-control:last-child{justify-content:flex-end}.turn-control:hover:not(:disabled) .arrow{transform:translateX(4px)}.turn-control:first-child:hover:not(:disabled) .arrow{transform:translateX(-4px)}.arrow{font-size:27px;line-height:1;font-weight:400;transition:transform .2s}.page-position{display:flex;align-items:center;gap:17px;color:#665e55;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.position-rule{width:32px;height:1px;background:#b49e89}.gesture-tip{margin:11px 0 0;text-align:center;font-size:11px;color:#847667}.footer{margin-top:12px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 25px;padding:19px clamp(24px,4.7vw,90px);background:#10283c;color:#d9d4cf;font-size:9px;letter-spacing:.13em}.footer b{color:var(--sand);padding:0 7px}
@media(max-width:1120px){.site-header{gap:13px;padding-inline:24px}.chapter-nav{gap:8px 13px}.chapter-nav a{font-size:9px}.header-contact{padding:12px;font-size:9px}.single-hero-copy{padding:35px}.single-hero-copy .serif-title{font-size:clamp(61px,7.5vw,84px)}.service-intro-copy{padding:35px}.service-intro-copy .chapter-heading{font-size:clamp(50px,5.5vw,67px)}}
@media(max-width:850px){:root{--book-height:720px}.site-header{flex-wrap:wrap}.chapter-nav{order:3;width:100%;justify-content:center;gap:6px 23px}.chapter-nav a{padding:9px 0}.header-contact{margin-left:auto}.book-main{width:calc(100% - 30px)}.single-hero{grid-template-columns:45% 55%}.single-hero-copy{padding:27px}.single-hero-copy .serif-title{font-size:clamp(53px,8vw,70px)}.single-hero-copy .hand-title{font-size:48px}.single-hero-copy .copy{font-size:12px}.service-head .chapter-heading{font-size:54px}.service-head .hand-title{font-size:54px}.service-tiles{gap:12px}.tile-photo{height:155px}.service-tile h3{font-size:29px}.service-intro{grid-template-columns:40% 60%}.service-intro-copy{padding:26px}.service-intro-copy .chapter-heading{font-size:52px}.service-intro-copy .hand-title{font-size:46px}.service-intro-copy .lead{font-size:12px}.single-about-copy,.single-contact-copy{padding:28px}.single-about-copy .chapter-heading,.single-contact-copy .chapter-heading{font-size:55px}.single-about-copy .copy{font-size:12px}}
@media(max-width:650px){:root{--book-height:690px}.site-header{padding:10px 15px 5px;gap:6px}.brand-illustration{width:32px;height:41px}.brand-illustration svg{width:29px;height:35px}.brand-wordmark strong{font-size:11px}.brand-wordmark em{font-size:23px}.header-contact{padding:11px;font-size:9px}.chapter-nav{gap:0 17px;padding:0 0 3px}.chapter-nav a{padding:8px 0;font-size:9px}.chapter-nav a[aria-current='page']:after{bottom:4px}.book-main{width:calc(100% - 18px);padding-top:12px}.book-intro{margin-inline:3px;flex-direction:column;gap:3px;align-items:center}.book-intro .eyebrow{font-size:8px;letter-spacing:.1em}.book-instruction{font-size:10px}.book-instruction em{font-size:23px}.book-stage{padding-inline:5px;perspective:1400px}.book-back{left:10px;right:6px}.book-frame{border-radius:2px 7px 7px 2px}.folio{height:35px;flex-basis:35px;margin:0 17px;font-size:7px;letter-spacing:.07em}.folio b{font-size:9px}.folio span b{font-size:8px;margin:0 4px}.eyebrow{font-size:9px}.copy,.lead{font-size:12px;line-height:1.63}.btn{min-height:43px;padding:12px 15px;font-size:10px}.rule{margin:11px 0 15px}.single-hero,.service-intro,.single-about,.single-contact{display:flex;flex-direction:column;height:100%}.single-hero-image{flex:0 0 31%;height:31%}.single-hero-copy{flex:1;padding:20px 24px}.single-hero-copy .serif-title{font-size:clamp(58px,14vw,78px);margin:9px 0 0}.single-hero-copy .hand-title{font-size:clamp(44px,10vw,59px)}.single-hero-copy .copy{margin-bottom:17px}.image-caption{bottom:18px;left:23px;font-size:8px}.single-services{padding:25px 23px;gap:16px;justify-content:center}.service-head .chapter-heading{font-size:clamp(41px,9.8vw,55px);margin:7px 0 9px}.service-head .hand-title{font-size:clamp(42px,10vw,56px)}.service-head .copy{font-size:11px}.service-tiles{display:flex;flex-direction:column;gap:0}.service-tile{padding:13px 0;display:grid;grid-template-columns:84px minmax(0,1fr);grid-template-rows:16px 31px auto;column-gap:13px;border-bottom:1px solid #ded0bf;min-height:111px}.service-tile:last-child{border-bottom:0}.tile-photo{height:84px;grid-row:1/4;grid-column:1;margin:0}.service-tile span{grid-column:2;font-size:8px}.service-tile h3{grid-column:2;font-size:29px;margin:0;align-self:start}.service-tile p{grid-column:2;font-size:10px;line-height:1.35;padding-right:16px}.service-tile b{right:0;bottom:21px}.service-intro-image{flex:0 0 30%;height:30%}.service-quote{font-size:40px;left:25px;bottom:20px}.service-intro-copy{flex:1;padding:22px 25px}.service-intro-copy .chapter-heading{font-size:clamp(43px,10vw,60px);margin:8px 0 7px}.service-intro-copy .hand-title{font-size:clamp(39px,9.1vw,50px)}.service-intro-copy .lead{margin-bottom:19px}.service-offer{padding:26px 25px;gap:16px;justify-content:center}.offer-top .chapter-heading{font-size:clamp(51px,12vw,65px);margin:7px 0}.offer-top .hand-title{font-size:clamp(48px,11vw,62px)}.offer-top .copy{font-size:11px}.offer-list{display:flex;flex-direction:column;gap:0}.offer-list li{min-height:0;gap:12px;padding:10px 0}.offer-list li strong{font-size:11px;line-height:1.4}.offer-bottom{align-items:flex-start;flex-direction:column;gap:11px}.offer-bottom>span{font-size:8px}.single-about-picture{flex:0 0 27%;height:27%}.single-about-picture span{bottom:18px;left:23px;font-size:41px}.single-about-copy{flex:1;padding:20px 25px}.single-about-copy .chapter-heading,.single-contact-copy .chapter-heading{font-size:clamp(50px,11vw,63px);margin:8px 0 0}.single-about-copy .hand-title,.single-contact-copy .hand-title{font-size:clamp(45px,10vw,58px)}.single-about-copy .copy{margin:0 0 11px}.single-contact-picture{order:-1;flex:0 0 24%;height:24%}.contact-image-text{font-size:37px;bottom:16px;left:24px}.single-contact-copy{flex:1;padding:17px 25px}.single-contact-copy .copy{font-size:12px}.contact-options{gap:9px;margin:13px 0 15px}.contact-options a,.contact-options>div{font-size:12px}.page-position{flex-direction:column;gap:4px;font-size:9px}.position-rule{display:none}.book-controls{gap:5px;padding-top:19px}.turn-control{gap:5px;font-size:9px;letter-spacing:0}.arrow{font-size:25px}.gesture-tip{font-size:10px;line-height:1.5}.footer{padding:18px 15px;justify-content:center;text-align:center;font-size:8px}}
@media(max-width:390px){:root{--book-height:690px}.site-header{padding-inline:10px}.chapter-nav{column-gap:14px}.book-instruction{display:none}.single-hero-copy,.single-about-copy,.single-contact-copy,.service-intro-copy{padding-inline:19px}.single-hero-copy .serif-title{font-size:57px}.single-hero-copy .hand-title{font-size:44px}.single-hero-copy .copy{font-size:11px}.service-offer{padding-inline:18px}.single-services{padding-inline:19px}.offer-list li{padding:9px 0}.service-tile{grid-template-columns:75px minmax(0,1fr);column-gap:11px}.tile-photo{height:75px}.contact-options{gap:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Lesbarkeit auch auf schmalen Geräten; niemals inneres Scrollen. */
.page-body{overflow:hidden;overscroll-behavior:none}
.single-hero,.service-intro,.single-about,.single-contact{min-height:0;grid-template-rows:minmax(0,1fr)}
.single-hero-copy,.service-intro-copy,.single-about-copy,.single-contact-copy{min-height:0}
.chapter-heading,.serif-title,.hand-title,.service-tile h3{overflow-wrap:anywhere}
@media(max-width:650px){
 .single-about-picture{flex-basis:24%;height:24%}
 .single-about-copy{padding-top:18px;padding-bottom:16px}
 .single-about-copy .chapter-heading{font-size:clamp(49px,10.6vw,61px)}
 .single-about-copy .hand-title{font-size:clamp(40px,9.4vw,55px)}
 .single-about-copy .copy{font-size:11.5px;line-height:1.5;margin-bottom:9px}
 .single-contact-picture{flex-basis:22%;height:22%}
 .single-contact-copy .chapter-heading{font-size:clamp(46px,10.8vw,60px)}
 .single-contact-copy .hand-title{font-size:clamp(40px,9vw,52px)}
 .contact-image-text{font-size:clamp(28px,7.4vw,38px);line-height:1.01}
}
@media(max-width:390px){
 .single-about-copy .chapter-heading{font-size:46px}
 .single-about-copy .hand-title{font-size:40px}
 .single-about-copy .copy{font-size:11px;line-height:1.44;margin-bottom:7px}
 .single-contact-copy .chapter-heading{font-size:46px}
 .single-contact-copy .hand-title{font-size:39px}
 .single-contact-copy{padding-top:12px;padding-bottom:12px}
 .single-contact-copy .copy{font-size:11px;line-height:1.47}
 .contact-options{margin:11px 0 12px}
 .service-intro-copy .chapter-heading{font-size:clamp(38px,9.4vw,50px)}
 .service-intro-copy .hand-title{font-size:41px}
}
@media(max-width:340px){
 .chapter-nav{column-gap:10px}
 .chapter-nav a{font-size:8px}
 .site-header{gap:4px}
 .book-main{width:calc(100% - 14px)}
 .single-hero-copy .serif-title{font-size:53px}
 .single-hero-copy .hand-title{font-size:40px}
 .service-head .chapter-heading{font-size:39px}
 .service-head .hand-title{font-size:41px}
 .service-intro-copy .chapter-heading{font-size:38px}
 .service-intro-copy .hand-title{font-size:38px}
 .single-about-copy .chapter-heading,.single-contact-copy .chapter-heading{font-size:43px}
 .single-about-copy .hand-title,.single-contact-copy .hand-title{font-size:38px}
 .single-about-copy .copy{font-size:10.8px}
}
/* Schlusskorrekturen aus den Größenprüfungen */
html,body{max-width:100%;overflow-x:clip}
@media(min-width:851px){.single-services{gap:13px;padding-top:24px;padding-bottom:22px}.tile-photo{height:clamp(120px,14.2vw,197px)}}


/* V4 — physischer Blattwechsel: gestaffelte Papierbewegung, weiche Schatten und Ecke.
   Das Buch zeigt weiterhin stets nur EINE vollständige Seite. */
.book-stage { perspective: 2000px; perspective-origin: 42% 48%; isolation: isolate; }
.book-frame { isolation: isolate; transform-style: preserve-3d; overflow: visible; }
.paper-current { z-index: 1; }
.page-reveal-shade,
.page-cast-shadow { position: absolute; inset: 0; pointer-events: none; opacity: 0; border-radius: inherit; }
.page-reveal-shade { z-index: 2; background: linear-gradient(105deg, rgba(24,27,32,.12) 0%, rgba(67,56,48,.43) 35%, rgba(128,104,82,.13) 64%, transparent 91%); mix-blend-mode:multiply; }
.page-cast-shadow { z-index: 3; background: linear-gradient(90deg,rgba(20,25,32,.29),rgba(35,34,34,.14) 18%, transparent 63%); }
.turn-leaf { z-index: 8; transform-origin: 1px 50%; backface-visibility: visible; -webkit-backface-visibility: visible; }
.turn-leaf-face { border-radius: 1px 9px 9px 1px; }
.turn-leaf-front { box-shadow: 9px 9px 25px rgba(37,29,24,.15), 1px 2px 7px rgba(20,20,20,.12); }
.turn-leaf-front::after { opacity: .2; background: linear-gradient(90deg, rgba(32,24,21,.35), transparent 8%, transparent 70%, rgba(255,255,255,.12) 86%, rgba(65,48,32,.31)); }
.turn-leaf-back { box-shadow: -9px 7px 28px rgba(24,22,20,.18); background: linear-gradient(96deg,#e4d5c5 0%,#fdf5eb 12%,#fff8f0 50%,#f3e8da 94%,#d8c6b4); }
.leaf-paper-edge { position: absolute; z-index: 11; right:-1px; top:0; bottom:0; width: clamp(10px, 1.35vw, 19px); transform-origin: 0 50%; backface-visibility: hidden; pointer-events:none; background: linear-gradient(90deg,transparent,rgba(255,255,255,.12) 27%,rgba(255,252,243,.6) 55%,rgba(145,111,81,.3) 91%,rgba(64,50,40,.3)); border-right:1px solid #bda48e; box-shadow:2px 1px 5px rgba(31,25,19,.16); opacity:.8; }
/* Kleine umgeschlagene Ecke als Interaktionshinweis */
.page-corner { position:absolute; z-index:12; right:0; bottom:0; display:grid; place-items:center; width:clamp(34px,4.5vw,58px); height:clamp(34px,4.5vw,58px); border:0; border-radius:0 0 8px 0; cursor:pointer; color:var(--navy); background:linear-gradient(135deg,transparent 49.2%,#dbccb9 50%,#fffcf6 65%,#efe1ce 100%); box-shadow:inset -1px -1px rgba(66,45,26,.09); transition:filter .25s, background-size .25s; padding:0; }
.page-corner span { font: 29px/1 var(--serif); transform:translate(12px,10px); opacity:.85; }
.page-corner:hover:not(:disabled){filter:brightness(.96) drop-shadow(-3px -3px 5px rgba(34,27,24,.17))}
.page-corner:disabled { opacity:0; pointer-events:none; }
.book-frame.is-turning .page-corner { opacity:0; pointer-events:none; }
.book-frame.is-turning .spine-shadow { opacity:.6; }
.turn-leaf.turn-forward .leaf-paper-edge { animation: paper-curl-forward 1390ms cubic-bezier(.25,.1,.23,1) both; }
.turn-leaf.turn-backward .leaf-paper-edge { animation: paper-curl-back 1390ms cubic-bezier(.25,.1,.23,1) both; }
@keyframes paper-curl-forward {
  0% { transform:rotateY(0deg) skewY(0deg); opacity:.7; }
  19% { transform:rotateY(-19deg) skewY(-1.2deg); opacity:.98; }
  44% { transform:rotateY(-43deg) skewY(1.8deg); opacity:.93; }
  69% { transform:rotateY(-26deg) skewY(-1.5deg); opacity:.7; }
  100% {transform:rotateY(0deg) skewY(0deg); opacity:.7;}
}
@keyframes paper-curl-back {
  0% {transform:rotateY(0deg) skewY(0deg); opacity:.7;}
  25% {transform:rotateY(-24deg) skewY(-1.5deg); opacity:.85;}
  55% {transform:rotateY(-44deg) skewY(1.8deg); opacity:.98;}
  85% {transform:rotateY(-15deg) skewY(-1deg);opacity:.8;}
  100% {transform:rotateY(0deg) skewY(0deg);opacity:.7;}
}
@media(max-width:650px){
 .book-stage{perspective:1150px;perspective-origin:48% 50%;}
 .page-corner{width:39px;height:39px}
 .page-corner span{font-size:24px;transform:translate(8px,7px)}
 .turn-leaf-front::after { opacity:.16; }
}
@media(prefers-reduced-motion:reduce) { .leaf-paper-edge {animation:none!important} }


/* V5: Kundenwunsch – elegante Antiqua statt stark verschnörkelter Schreibschrift.
   Alle bisherigen handschriftlichen Akzente nutzen nun gut lesbare Serifenkursivschrift;
   die bestehende Buchmechanik und Seitenstruktur bleiben erhalten. */
.hand-title,
.book-instruction em,
.single-about-picture span,
.contact-image-text,
.leaf-back-ornament em {
  font-family: var(--serif);
  font-style: italic;
  font-weight: 500;
  letter-spacing: -.016em;
  line-height: 1.08;
}
/* Zurückhaltende Wortmarke – keine kalligrafische Signatur mehr. */
.brand-wordmark em {
  font-family: var(--serif);
  font-style: normal;
  font-weight: 500;
  font-size: 23px;
  letter-spacing: .01em;
  line-height: 1.04;
  margin-top: 0;
}
.leaf-back-ornament em {
  font-size: clamp(30px, 4vw, 48px);
  font-style: normal;
}
.book-instruction em {
  font-size: 20px;
  padding-left: 5px;
}
.hand-title { font-size: clamp(35px, 3.8vw, 53px); line-height: 1.06; }
.single-hero-copy .hand-title {font-size:clamp(38px,4.1vw,55px)}
.service-head .hand-title {font-size:clamp(39px,4.3vw,55px)}
.service-intro-copy .hand-title {font-size:clamp(35px,3.8vw,53px)}
.offer-top .hand-title {font-size:clamp(41px,4.6vw,60px)}
.single-about-copy .hand-title,
.single-contact-copy .hand-title {font-size:clamp(38px,4.1vw,55px)}
.single-about-picture span, .contact-image-text {font-size:clamp(33px,3.75vw,47px)}
@media(max-width:650px){
 .hand-title {font-size:clamp(33px,8.1vw,44px)}
 .single-hero-copy .hand-title {font-size:clamp(34px,8.3vw,46px)}
 .service-head .hand-title {font-size:clamp(34px,8.3vw,46px)}
 .service-intro-copy .hand-title {font-size:clamp(32px,7.8vw,44px)}
 .offer-top .hand-title {font-size:clamp(36px,8.3vw,49px)}
 .single-about-copy .hand-title,.single-contact-copy .hand-title {font-size:clamp(33px,8vw,45px)}
 .single-about-picture span,.contact-image-text {font-size:clamp(28px,7.3vw,39px)}
 .brand-wordmark em {font-size:21px}
}
@media(max-width:390px){
 .hand-title,.single-about-copy .hand-title,.single-contact-copy .hand-title {font-size:33px}
 .service-intro-copy .hand-title {font-size:32px}
 .single-hero-copy .hand-title {font-size:35px}
 .service-head .hand-title {font-size:35px}
 .offer-top .hand-title {font-size:38px}
}


/* V6 · original MUHR Immobilien artwork supplied by client */
.brand { display:flex; align-items:center; padding:0; flex-shrink:0; line-height:1; }
.brand-logo { display:block; width:76px; height:92px; object-fit:contain; border:0; background:transparent; }
.hero-brand-seal { position:absolute; z-index:2; top:24px; left:25px; width:126px; padding:3px; background:#fff5ec; box-shadow:0 10px 25px rgba(24,30,38,.17); border:1px solid rgba(195,175,155,.43); }
.hero-brand-seal img { width:100%; height:auto; object-fit:contain; }
.leaf-back-ornament { top:21%; left:32%; right:32%; display:flex; align-items:center; border:0; padding:16px 0; }
.leaf-back-ornament img { width:min(100%,225px); height:auto; object-fit:contain; box-shadow:0 7px 20px rgba(42,36,31,.10); }
.leaf-back-ornament small { margin-top:18px; }
@media(max-width:1000px) { .brand-logo { width:66px; height:80px; } }
@media(max-width:650px) {
  .brand-logo { width:48px; height:58px; }
  .hero-brand-seal { top:10px; left:12px; width:77px; padding:2px; box-shadow:0 6px 13px rgba(24,30,38,.13); }
  .leaf-back-ornament { top:27%; left:22%; right:22%; }
}
@media(max-width:390px) { .brand-logo { width:43px; height:52px; } .hero-brand-seal { width:66px; } }

/* V7 · Fix: never crop the client’s complete original logo. */
.brand-logo { display:block; width:76px; height:99px; max-width:100%; object-fit:contain; object-position:center; }
.hero-brand-seal { box-sizing:border-box; width:135px; height:auto; overflow:visible; }
.hero-brand-seal img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; object-position:center; }
.leaf-back-ornament img { display:block; height:auto; max-height:none; object-fit:contain; object-position:center; }
@media(max-width:1000px) { .brand-logo { width:66px; height:87px; } }
@media(max-width:650px) { .brand-logo { width:48px; height:63px; } .hero-brand-seal { width:82px; } }
@media(max-width:390px) { .brand-logo { width:43px; height:57px; } .hero-brand-seal { width:71px; } }

/* V8 – längerer Kundenname: Umbruch statt Abschneiden, ohne Scrollen im Buch. */
.chapter-nav a[data-chapter="verwaltung"] { max-width: 230px; white-space:normal; text-align:center; line-height:1.4; overflow-wrap:normal; }
.service-tile-admin h3 { font-size:clamp(21px,2.15vw,30px); line-height:1.08; hyphens:manual; overflow-wrap:normal; }
.service-intro-admin .chapter-heading { font-size:clamp(36px,3.65vw,55px); line-height:1.02; hyphens:manual; overflow-wrap:normal; }
.service-intro-admin .eyebrow { overflow-wrap:anywhere; letter-spacing:.09em; }
@media(max-width:850px){
  .chapter-nav a[data-chapter="verwaltung"]{max-width:200px;}
  .service-tile-admin h3{font-size:clamp(18px,2.7vw,25px)}
  .service-intro-admin .chapter-heading{font-size:clamp(29px,4.3vw,42px)}
}
@media(max-width:650px){
  .chapter-nav a[data-chapter="verwaltung"]{max-width:155px;font-size:8px;}
  .service-tile-admin h3{font-size:clamp(18px,4.8vw,24px);line-height:1.04;}
  .service-intro-admin .chapter-heading{font-size:clamp(32px,8vw,45px)}
  .service-intro-admin .eyebrow{font-size:8px;letter-spacing:.02em;}
  .service-intro-admin .lead{font-size:11px;line-height:1.48;}
}
@media(max-width:390px){
  .chapter-nav a[data-chapter="verwaltung"]{max-width:140px;}
  .service-tile-admin h3{font-size:18px}
  .service-intro-admin .chapter-heading{font-size:clamp(29px,8.3vw,36px);line-height:1.0}
  .service-intro-admin .hand-title{font-size:37px;}
  .service-intro-admin .lead{font-size:10.8px;line-height:1.45;margin-bottom:13px;}
}


/* V9 | Geprüfte Korrekturen von Zeilenumbrüchen und Leistungs-Kacheln.
   Buchseiten bleiben ohne innere Scrollbereiche. */
.service-head .chapter-heading,
.service-tile h3,
#book[data-chapter="projekte"] .service-intro-copy .chapter-heading {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: manual;
}
.service-tile h3 {
  font-size: clamp(22px, 2.2vw, 32px);
  letter-spacing: -.035em;
}
#book[data-chapter="projekte"] .service-intro-copy .chapter-heading {
  font-size: clamp(37px, 3.7vw, 54px);
  line-height: 1.02;
}
@media (max-width: 850px) {
  .service-tile h3 { font-size: 24px; }
  #book[data-chapter="projekte"] .service-intro-copy .chapter-heading { font-size: 38px; }
}
@media (max-width: 650px) {
  .service-tile {
    grid-template-rows: auto auto auto;
    align-content: center;
    row-gap: 3px;
    min-height: 108px;
    padding-block: 10px;
  }
  .service-tile h3 {
    font-size: 22px;
    line-height: 1.05;
    align-self: auto;
    margin: 0;
  }
  .service-tile p { align-self: auto; }
  .service-tile-admin h3 { font-size: 18px; line-height: 1.07; }
  #book[data-chapter="projekte"] .service-intro-copy .chapter-heading {
    font-size: clamp(30px, 8vw, 40px);
  }
}
@media (max-width: 390px) {
  .service-head .chapter-heading { font-size: 30px; line-height: 1.05; }
  .service-head .hand-title { font-size: 33px; }
  .service-tiles { gap: 0; }
  .service-tile { grid-template-columns: 70px minmax(0, 1fr); column-gap: 10px; }
  .tile-photo { height: 70px; }
  .service-tile h3 { font-size: 20px; }
  .service-tile-admin h3 { font-size: 17px; }
  #book[data-chapter="projekte"] .service-intro-copy .chapter-heading { font-size: 29px; }
}


/* V10: Mobile contact portrait - no cropping */
@media (max-width:650px) {
  /* The client's portrait is a vertical photograph: display it fully rather
     than force it into the former 22%-high panoramic flower banner. */
  .single-contact-picture {
    position: relative;
    flex: 0 0 31%;
    height: 31%;
    background: #e9ddd0;
    isolation: isolate;
  }
  .single-contact-picture::before {
    content: "";
    position: absolute;
    inset: -8px;
    background: url("assets/Foto.jpeg") center / cover no-repeat;
    filter: blur(17px);
    opacity: .18;
    z-index: -1;
    pointer-events: none;
  }
  .single-contact-picture img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }
  /* The decorative quote previously sat across the face. The full wording
     is already presented elsewhere in the contact chapter. */
  .single-contact-picture .contact-image-text {
    display: none;
  }
  .single-contact-copy {
    flex: 1 1 0;
    min-height: 0;
    justify-content: center;
    padding: 12px 22px;
  }
  .single-contact-copy .chapter-heading {
    font-size: clamp(40px, 9.5vw, 52px);
    line-height: 1;
    margin: 7px 0 1px;
  }
  .single-contact-copy .hand-title {
    font-size: clamp(34px, 8vw, 46px);
    line-height: 1.04;
  }
  .single-contact-copy .rule { margin: 8px 0 10px; }
  .single-contact-copy .copy { font-size: 11.5px; line-height: 1.45; }
  .single-contact-copy .contact-options { gap: 7px; margin: 10px 0 11px; }
  .single-contact-copy .contact-options a,
  .single-contact-copy .contact-options > div { font-size: 11.5px; }
}
@media (max-width: 360px) {
  .single-contact-picture { flex-basis: 29%; height: 29%; }
  .single-contact-copy { padding: 10px 16px; }
  .single-contact-copy .chapter-heading { font-size: 39px; }
  .single-contact-copy .hand-title { font-size: 33px; }
  .single-contact-copy .copy { font-size: 11px; }
}


/* V11: Android vertical page swipe through book surface */
/* The former .page-body overscroll-behavior:none blocked scroll chaining
   from the book to the document on Android. A book page is not a
   separately scrollable panel, so its clipping must not trap gestures. */
@media (pointer: coarse) {
  .book-stage,
  .book-frame,
  .paper-current,
  .page,
  .page-body {
    touch-action: pan-y pinch-zoom;
  }
  .page-body { overscroll-behavior: auto; overflow: clip; }
  .paper-current { overflow: clip; }
}


/* V12: Scroll chain must be available on all pointer configurations */
/* Always permit vertical page panning through the book: some Android
   WebViews and mobile emulators report pointer:fine despite touch support.
   A clipped (not hidden) page body isn't a scroll container and cannot
   absorb/choke off the document's native swipe gesture. */
.book-stage,
.book-frame,
.paper-current,
.page,
.page-body,
.book-current {
  touch-action: pan-y pinch-zoom;
}
.page-body {
  overscroll-behavior: auto;
  overflow: clip;
}
.paper-current {
  overflow: clip;
}


/* V13: Tausche Bildmotive in Über mich und Kontakt */
.single-about-picture img {
  object-position: center 32%;
}
.single-contact-picture img {
  object-position: center;
}
@media (max-width: 650px) {
  /* Das hochformatige Porträt vollständig auf „Über mich“ zeigen. */
  .single-about-picture {
    flex: 0 0 29%;
    height: 29%;
    background: #e9ddd0;
  }
  .single-about-picture img {
    object-fit: contain;
    object-position: center;
  }
  /* Hortensien sind ein Bildmotiv, kein Porträt: wieder bildfüllend. */
  .single-contact-picture {
    flex: 0 0 24%;
    height: 24%;
    background: #e9ddd0;
  }
  .single-contact-picture::before {
    display: none;
  }
  .single-contact-picture img {
    object-fit: cover;
    object-position: center;
  }
}
@media (max-width: 360px) {
  .single-about-picture { flex-basis: 27%; height: 27%; }
  .single-contact-picture { flex-basis: 22%; height: 22%; }
}
