#home-refresh.machin-panels-host{isolation:isolate;background-image:none!important;overflow:hidden}.machin-panels-host>.container{position:relative;z-index:2}.machin-panel-background{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;--panel-travel:1400px}.machin-panel-background>svg{position:absolute;top:0;left:50%;width:1979px;height:1264px;max-width:none;transform:translateX(-50%)}.machin-panel-light{transform:translateX(calc(-1 * var(--panel-travel)))}.machin-panel-dark{transform:translateX(var(--panel-travel))}.has-entered .machin-panel-light{animation:machin-panel-from-left 1.9s cubic-bezier(.22,1,.36,1) .1s both}.has-entered .machin-panel-dark{animation:machin-panel-from-right 1.9s cubic-bezier(.22,1,.36,1) .1s both}@keyframes machin-panel-from-left{from{transform:translateX(calc(-1 * var(--panel-travel)))}to{transform:translateX(0)}}@keyframes machin-panel-from-right{from{transform:translateX(var(--panel-travel))}to{transform:translateX(0)}}@media(max-width:767px){.machin-panel-background{--panel-travel:1050px}.has-entered .machin-panel{animation-duration:1.6s}}@media(prefers-reduced-motion:reduce){.machin-panel,.has-entered .machin-panel{animation:none!important;transform:none!important}}

/* Selected logo motion: variant 04, one entrance per page load. */
.machin-logo-four{display:block;overflow:visible}
.machin-logo-four .petals{transform-origin:60px 61px;animation:machin-logo-orbit 2.2s cubic-bezier(.22,1,.36,1) both}
.machin-logo-four .wordmark{animation:machin-logo-fade 1.2s .55s both}
@keyframes machin-logo-orbit{from{transform:rotate(-180deg);opacity:.25}to{transform:rotate(0);opacity:1}}
@keyframes machin-logo-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.machin-logo-four .petals,.machin-logo-four .wordmark{animation:none}}
/* After ten seconds of inactivity: outline, fill, then a gentle lift. */
.machin-logo-four.is-idle-drawing .petals,.machin-logo-four.is-idle-drawing .wordmark{animation:none}
.machin-logo-four.is-idle-drawing path{stroke:var(--path-fill);stroke-width:1.2;stroke-dasharray:1;animation:machin-idle-draw 2.6s ease both}
.machin-logo-four.is-idle-drawing .whole{transform-box:fill-box;transform-origin:center;animation:machin-idle-lift .7s 2.55s ease-in-out both}
@keyframes machin-idle-draw{0%{stroke-dashoffset:1;fill-opacity:0;stroke-opacity:1}65%{stroke-dashoffset:0;fill-opacity:0;stroke-opacity:1}100%{stroke-dashoffset:0;fill-opacity:1;stroke-opacity:0}}
@keyframes machin-idle-lift{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.045)}}
@media(prefers-reduced-motion:reduce){.machin-logo-four.is-idle-drawing *{animation:none!important;stroke:none!important}}
.machin-logo-four.entrance-complete .petals,.machin-logo-four.entrance-complete .wordmark{animation:none}
.header .navbar-brand .machin-logo-four{width:220px;height:auto;max-width:100%}
.home-refresh{position:relative;padding:48px 0 28px!important;background:transparent!important}
.home-refresh>.container>.row{align-items:center}
.home-refresh .title-section-image{padding:24px 12px 0!important}
.home-refresh .title-section-heading h1{font-size:clamp(30px,3vw,49px);line-height:1.25}


.home-refresh .banner-slider{width:100%;max-width:760px;margin:0 auto;position:relative}
.home-refresh .banner-window{position:relative;aspect-ratio:2000/1489;overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 18px 50px #293d3015}
.home-refresh .banner-slide{position:absolute;inset:0;opacity:0;transform:translateX(20px);transition:opacity .65s ease,transform .65s ease;pointer-events:none}
.home-refresh .banner-slide.is-active{opacity:1;transform:translateX(0);pointer-events:auto}
.home-refresh .banner-slide img{display:block;width:100%;height:100%;object-fit:contain;filter:none;max-width:100%}
.home-refresh .banner-controls{display:flex;justify-content:center;align-items:center;gap:3px;padding-top:15px}
.home-refresh .banner-dot,.home-refresh .banner-pause{display:flex;align-items:center;justify-content:center;border:0;background:transparent;width:40px;height:40px;padding:0;color:#527b24;border-radius:50%;cursor:pointer}
.home-refresh .banner-dot::after{content:"";display:block;width:7px;height:7px;border-radius:8px;background:#b5c7a0;transition:width .25s,background .25s}
.home-refresh .banner-dot[aria-pressed=true]::after{width:7px;background:#6a9c2e}
.home-refresh .banner-controls button:focus-visible{outline:2px solid #527b24;outline-offset:2px}
.home-refresh .banner-controls button:hover{background:#ffffff80}
@media(max-width:991px){.home-refresh{padding-top:25px!important}.home-refresh .title-section-image{padding-top:35px!important}}
@media(prefers-reduced-motion:reduce){.home-refresh .banner-slide,.home-refresh .banner-dot::after{transition:none;transform:none}}


/* Original design SVG proportions and motion; never stretch either axis. */
.home-refresh .machin-panel-background>svg{top:0;left:50%;width:1979px;height:1264px;transform:translateX(-50%)}
.home-refresh .banner-controls{width:100%;justify-content:center;gap:3px}

/* Let the original planes finish beyond the hero instead of cutting their diagonal edges. */
#home-refresh.machin-panels-host{overflow:visible!important;z-index:1}.home-refresh .machin-panel-background{bottom:auto;height:1264px;overflow:hidden}
#home-refresh.machin-panels-host{overflow-x:clip!important;overflow-y:visible!important}

.header.home-motion-header{position:relative;z-index:5;background:transparent!important}.header.home-motion-header>.container-fluid{background:transparent!important}

/* Refined local hero carousel motion. */
.home-refresh .banner-controls{padding-top:0;margin-top:-2px}
.home-refresh .banner-window{animation:banner-enter .9s cubic-bezier(.22,1,.36,1) both;transition:translate .4s ease,box-shadow .4s ease}
.home-refresh .banner-slide{transform:translate3d(12px,6px,0) scale(1.015);transition:opacity .8s ease,transform 1s cubic-bezier(.22,1,.36,1)}
.home-refresh .banner-slide.is-active{transform:translate3d(0,0,0) scale(1)}
@keyframes banner-enter{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(hover:hover) and (pointer:fine){.home-refresh .banner-slider:hover .banner-window{translate:0 -5px;box-shadow:0 24px 55px #293d3026}}
@media(prefers-reduced-motion:reduce){.home-refresh .banner-window{animation:none;transition:none;translate:none!important}.home-refresh .banner-slide{transition:none;transform:none}}

/* Match the 1200 x 800 reference images without letterboxing. */
.home-refresh .banner-window{aspect-ratio:3/2;background:transparent}
@keyframes banner-hover-wiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-.55deg)}50%{transform:rotate(.55deg)}75%{transform:rotate(-.25deg)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.home-refresh .banner-slider:hover .banner-window{animation:banner-hover-wiggle .48s ease-in-out;translate:0 0}}
