/* v19 — high-fidelity architectural sketch reveal. Last stylesheet intentionally overrides v9/v10. */
.hero.sketch-motion-ready .hero-rotating {
 position:relative; display:block; max-width:min(100%,980px);
 width:max-content; color:transparent!important; -webkit-text-stroke:0!important;
 background:none!important; text-shadow:none!important; overflow:visible;
 isolation:isolate; white-space:normal; text-wrap:balance;
}
.hero.sketch-motion-ready .hero-rotating::before,
.hero.sketch-motion-ready .hero-rotating::after {
 content:attr(data-text)!important; display:block!important; position:absolute!important;
 inset:0; width:100%; height:100%; white-space:inherit; overflow-wrap:inherit;
 font:inherit; font-weight:inherit; letter-spacing:inherit; line-height:inherit;
 text-transform:none; text-wrap:inherit; pointer-events:none; background:none;
 -webkit-text-fill-color:initial; clip-path:inset(0 100% 0 0);
}
/* First render is the fine pencil-outline; the ink fill follows the moving ruler. */
.hero.sketch-motion-ready .hero-rotating::before {
 color:transparent; -webkit-text-stroke:1.2px #167544!important;
 text-shadow:0 0 .5px rgba(10,92,48,.12);
}
.hero.sketch-motion-ready .hero-rotating::after {
 color:#00ad54; -webkit-text-stroke:0!important;
 text-shadow:none; background:none!important;
}
.hero.sketch-motion-ready .hero-rotating.is-drawing::before {
 animation:mt-sketch-outline 1s cubic-bezier(.22,.87,.31,1) both!important;
}
.hero.sketch-motion-ready .hero-rotating.is-drawing::after {
 animation:mt-sketch-fill .95s cubic-bezier(.17,.78,.22,1) .38s both!important;
}
.hero.sketch-motion-ready .hero-rotating.is-erasing::before,
.hero.sketch-motion-ready .hero-rotating.is-erasing::after {
 animation:mt-sketch-erase .38s ease-in both!important;
}
@keyframes mt-sketch-outline {
 0%{clip-path:inset(0 100% 0 0);opacity:.4;filter:blur(.8px);transform:translateX(-2px)}
 42%{opacity:1;filter:blur(0);transform:translateX(0)}
 100%{clip-path:inset(0 0 0 0);opacity:1;filter:none;transform:none}
}
@keyframes mt-sketch-fill{
 0%{clip-path:inset(0 100% 0 0);opacity:.2}
 18%{opacity:.8}
 100%{clip-path:inset(0 0 0 0);opacity:1}
}
@keyframes mt-sketch-erase {
 from{clip-path:inset(0 0 0 0);opacity:1}
 to{clip-path:inset(0 0 0 100%);opacity:0}
}
.hero.sketch-motion-ready .hero-rotating.is-holding::before,
.hero.sketch-motion-ready .hero-rotating.is-holding::after {
 clip-path:inset(0 0 0 0)!important;
 opacity:1!important;
 animation:none!important;
}
/* Images are the real matched architectural sketches, not animated circles/cutouts. */
.hero .hero-stage.hero-sketch-stage {background:#fafefc!important;isolation:isolate;}
.hero .hero-art-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .52s ease,visibility .52s;overflow:hidden;}
.hero .hero-art-slide.is-current{opacity:1;visibility:visible;z-index:2;}
.hero .hero-art-slide img {
 position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;
 object-position:center center;max-width:none!important;max-height:none!important;
 transform:none!important;filter:none; mask-image:none!important;-webkit-mask-image:none!important;
}
.hero .hero-art-slide .hero-art-underlay{opacity:.38;filter:grayscale(1) contrast(.82) brightness(1.08);}
.hero .hero-art-slide .hero-art-ink{opacity:1;clip-path:inset(0 100% 0 0);}
.hero .hero-art-slide.is-current .hero-art-ink{clip-path:inset(0 0 0 0);}
.hero .hero-art-slide.is-drawing .hero-art-ink{animation:mt-illustration-ink 1.55s cubic-bezier(.17,.8,.25,1) both;}
.hero .hero-art-slide.is-erasing .hero-art-ink{animation:mt-illustration-erase .38s ease-in both;}
@keyframes mt-illustration-ink{
 0%{clip-path:inset(0 100% 0 0);filter:grayscale(1) contrast(.95)}
 45%{filter:grayscale(.6)}
 100%{clip-path:inset(0 0 0 0);filter:none}
}
@keyframes mt-illustration-erase{
 from{clip-path:inset(0 0 0 0);opacity:1}
 to{clip-path:inset(0 0 0 100%);opacity:.15}
}
/* The left side of each sketch melts into the exact brand paper, even across monitor widths. */
.hero .hero-art-slide {mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.6) 13%,#000 27%);-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.6) 13%,#000 27%);}
/* Graphic loading failure should not obstruct typography. */
.hero .hero-stage.hero-sketch-stage img {background:transparent;}
@media(max-width:980px){
 .hero .hero-art-slide{mask-image:none;-webkit-mask-image:none}
 .hero .hero-art-slide img{object-fit:contain;object-position:center center}
}
@media(prefers-reduced-motion:reduce){
 .hero.sketch-motion-ready .hero-rotating{color:#00ad54!important;-webkit-text-stroke:0!important}
 .hero.sketch-motion-ready .hero-rotating::before,.hero.sketch-motion-ready .hero-rotating::after{content:none!important;display:none!important}
 .hero .hero-art-slide{transition:none!important;}
 .hero .hero-art-slide.is-current .hero-art-ink{animation:none!important;clip-path:none!important}
}
