/* DEEP TOUCH Markenintro — Original-PNG mit zeitlich gesteuerten SVG-Masken.
   Solider Inhalt bleibt ohne JS und bei reduzierter Bewegung unmittelbar sichtbar. */
.brand-intro{display:none}
html.intro-ready{overflow:hidden}
html.intro-ready .brand-intro,.brand-intro.intro-leaving{display:flex}
html.intro-ready .site-header,html.intro-ready main,html.intro-ready .footer,html.intro-ready .page-progress{opacity:0;pointer-events:none}
.site-header,main,.footer,.page-progress{transition:opacity .53s ease}
.brand-intro{position:fixed;inset:0;z-index:900;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:#0b2118;color:#e4e5cf;isolation:isolate;opacity:1;transition:opacity .58s ease,visibility .58s ease}
.brand-intro.intro-mark-out .intro-center,.brand-intro.intro-mark-out .intro-bottom{opacity:0;transition:opacity .26s ease}
.brand-intro.intro-leaving{opacity:0;visibility:hidden;pointer-events:none}
.brand-intro::before{content:'';position:absolute;inset:-20%;background:radial-gradient(ellipse at 50% 42%,rgba(89,121,84,.12),transparent 40%),radial-gradient(ellipse at 50% 130%,rgba(165,139,80,.08),transparent 65%);pointer-events:none}
.brand-intro::after{content:'';position:absolute;inset:30px;border:1px solid rgba(220,211,172,.09);pointer-events:none}
.intro-vignette{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(232,223,192,.025) 1px,transparent 1px);background-size:calc(100vw / 8) 100%;opacity:.4;pointer-events:none}
.intro-center{position:relative;width:min(92vw,530px);display:flex;align-items:center;flex-direction:column;transform:translateY(-12px)}
.intro-logo-holder{width:clamp(225px,34vh,335px);aspect-ratio:653/746;position:relative;filter:drop-shadow(0 12px 34px rgba(0,0,0,.15))}
.intro-original-mark{width:100%;height:100%;display:block;overflow:visible}
.intro-wordmark{margin-top:12px;text-align:center;opacity:0;transform:translateY(9px);transition:opacity .55s ease,transform .7s cubic-bezier(.18,.7,.23,1)}
.intro-wordmark.intro-wordmark-visible{opacity:1;transform:translateY(0)}
.intro-wordmark-title{font-family:Georgia,'Times New Roman',serif;letter-spacing:.23em;font-weight:400;line-height:1.15;font-size:clamp(30px,4vw,43px);padding-left:.23em;color:#e6e1d0}
.intro-wordmark-sub{font-size:9px;letter-spacing:.35em;margin-top:12px;padding-left:.35em;color:#bcbfa9}
.intro-loading{width:min(230px,70vw);margin-top:49px}
.intro-loading-label{font-family:'Lato',Arial,sans-serif;font-size:9px;letter-spacing:.23em;display:flex;justify-content:space-between;line-height:1.3;color:#c8c8ae;font-variant-numeric:tabular-nums}
.intro-loading-track{height:1px;background:rgba(228,219,188,.2);margin-top:16px;position:relative;overflow:hidden}
.intro-loading-track span{display:block;height:100%;width:0;background:#dbcb95;box-shadow:0 0 13px rgba(221,209,143,.5)}
.intro-skip{position:absolute;z-index:2;top:clamp(18px,4vw,41px);right:clamp(18px,4vw,46px);background:none;border:0;color:#bbc8b8;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.12em;cursor:pointer;padding:12px 0;text-transform:uppercase;transition:color .2s}
.intro-skip span{margin-left:10px;color:#dccb99}
.intro-skip:hover{color:white}
.intro-skip:focus-visible{outline:2px solid #dec994;outline-offset:4px}
.intro-bottom{position:absolute;bottom:clamp(27px,5vh,50px);font-family:Georgia,'Times New Roman',serif;font-size:clamp(12px,2vw,17px);letter-spacing:.14em;color:rgba(219,219,192,.68)}
@media(max-width:540px){.brand-intro::after{inset:15px}.intro-center{transform:translateY(-9px)}.intro-logo-holder{width:min(61vw,254px)}.intro-loading{margin-top:39px}.intro-skip{top:23px;right:24px}.intro-bottom{font-size:12px;letter-spacing:.09em}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none!important}html.intro-ready{overflow:auto!important}html.intro-ready .site-header,html.intro-ready main,html.intro-ready .footer,html.intro-ready .page-progress{opacity:1!important;pointer-events:auto!important}.site-header,main,.footer,.page-progress{transition:none!important}}
