
.fc-area-motion .fp-grid-four>.fc-area-enter{transition:opacity 1.15s ease var(--area-delay,0ms),transform 1.35s cubic-bezier(.22,.65,.25,1) var(--area-delay,0ms)!important}.fc-area-motion .fp-grid-four>.fc-area-enter:not(.fc-area-visible){opacity:0!important;transform:translate3d(var(--area-offset,-48px),0,0)!important}.fc-area-motion .fp-grid-four>.fc-area-visible{opacity:1!important;transform:translate3d(0,0,0)!important}.fp-projects{overflow-x:clip}
.fc-nature-breeze,.fc-shower-water{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.fc-nature-breeze{opacity:.9;transform-origin:50% 48%;animation:fcNatureSway 11s ease-in-out infinite;animation-play-state:paused;will-change:transform}.fc-door-story[data-ambient-active=true] .fc-nature-breeze{animation-play-state:running}@keyframes fcNatureSway{0%,100%{transform:translateX(-.35px) skewX(-.025deg)}42%{transform:translateX(1px) skewX(.04deg)}70%{transform:translateX(.1px) skewX(-.015deg)}}
.fc-shower-water{opacity:var(--water-opacity,0);transition:opacity .35s ease}.fc-shower-water path{stroke-dasharray:15 7 35 11 21 8;animation:fcWaterFall var(--water-time,1.6s) linear var(--water-delay,0s) infinite;animation-play-state:paused}.fc-door-story[data-ambient-active=true] .fc-shower-water path{animation-play-state:running}.fc-water-mist{filter:blur(4px)}@keyframes fcWaterFall{to{stroke-dashoffset:-194}}
@media(max-width:1000px){.fc-area-motion .fp-grid-four>.fc-area-enter:not(.fc-area-visible){transform:translate3d(var(--area-mobile-offset,-25px),0,0)!important}main [id]{scroll-margin-top:101px}}
@media(prefers-reduced-motion:reduce){.fc-area-motion .fp-grid-four>.fc-area-enter{opacity:1!important;transform:none!important;transition:none!important}.fc-nature-breeze,.fc-shower-water{display:none!important}}
@media print{.fc-area-motion .fp-grid-four>.fc-area-enter{opacity:1!important;transform:none!important}}.top .nav.open{max-height:calc(100svh - 88px);overflow-y:auto;overscroll-behavior:contain}
/* Small leaf clusters move as independent compositor layers; no full-image filters. */
.fc-leaf-garden{position:absolute;inset:0;pointer-events:none}.fc-leaf-patch{position:absolute;background-repeat:no-repeat;mask-image:radial-gradient(ellipse at center,#000 38%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at center,#000 38%,transparent 72%);opacity:1;transform-origin:50% 90%;animation:fcLeafGust var(--leaf-duration,7s) ease-in-out var(--leaf-delay,0s) infinite;animation-play-state:paused;will-change:transform}.fc-door-pivot .fc-leaf-patch{background-image:url('images/door-pivot-garden.webp')}.fc-door-frame .fc-leaf-patch{background-image:url('images/door-frame-garden.webp')}.fc-door-story[data-breeze-active=true] .fc-leaf-patch{opacity:1;animation-play-state:running}@keyframes fcLeafGust{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}28%{transform:translate3d(calc(.8px * var(--breeze-strength,0)),calc(-.15px * var(--breeze-strength,0)),0) rotate(calc(var(--leaf-turn,.25deg) * var(--breeze-strength,0)))}51%{transform:translate3d(calc(-.3px * var(--breeze-strength,0)),calc(.1px * var(--breeze-strength,0)),0) rotate(calc(-.08deg * var(--breeze-strength,0)))}72%{transform:translate3d(calc(.4px * var(--breeze-strength,0)),0,0) rotate(calc(.12deg * var(--breeze-strength,0)))}}
.fc-door-world{will-change:transform}.fc-door-copy{will-change:transform}.fc-door-shower .fc-door-leaf{filter:none}.fc-copper-hinge,.fc-copper-grip{filter:none}
@media(prefers-reduced-motion:reduce){.fc-leaf-garden{display:none!important}}

/* Four areas stay visible in one horizontal row, without repeating in the menu. */
.fc-direct-areas{display:flex;align-items:center;justify-content:center;gap:clamp(30px,7vw,110px);height:44px;padding:0 24px;background:#151515;border-top:1px solid #ffffff17;color:#dedbd5;font:400 13px/1.3 FocusGothic,Arial,sans-serif;letter-spacing:.025em}.fc-direct-areas a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;position:relative;white-space:nowrap}.fc-direct-areas a:hover,.fc-direct-areas a[aria-current=page]{color:var(--orange)}.fc-direct-areas a[aria-current=page]:after{content:"";position:absolute;bottom:8px;left:0;right:0;height:1px;background:var(--orange)}.fc-direct-areas a:focus-visible{outline:2px solid var(--orange);outline-offset:-2px}.fc-door-hero .fc-door-stage{height:calc(100svh - 132px)}.top .nav.open{max-height:calc(100svh - 132px)}
@media(max-width:1000px){.top .nav{top:100%!important}.fc-direct-areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 12px;font-size:12px}main [id]{scroll-margin-top:145px}}
