/* User-approved contact/brand match + moving 2026 homepage (14 Nov 2026).
   All animation is decorative. Tested reduced-motion and pause controls. */
:root{--footer-bg:#00333e;--mint-hero:#b3f0bd}
/* Keep body background and footer consistent with reference homepage. */
.motion-home{position:relative!important;isolation:isolate;overflow:hidden!important;background:#003741!important;padding-bottom:64px!important}
.motion-home::before,.motion-home::after{content:none!important;display:none!important}
.motion-home>.container{position:relative;z-index:2}
.home-motion-background{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none;user-select:none}
.motion-blob{position:absolute;pointer-events:none;will-change:transform,border-radius}
.motion-blob-a{width:740px;height:740px;left:calc(50% - 1190px);top:-320px;background:linear-gradient(130deg,#d7f6ba 1%,#76ddc7 72%,#56b9ad);border-radius:48% 52% 60% 40%;animation:homeBlobA 19s ease-in-out infinite alternate;opacity:.94}
.motion-blob-b{width:525px;height:525px;right:-270px;top:-270px;background:#08646a;border-radius:50% 45% 60% 40%;opacity:.7;animation:homeBlobB 23s ease-in-out infinite alternate}
.motion-blob-c{width:190px;height:190px;right:12%;bottom:-150px;border-radius:50%;background:#60c7b7;opacity:.09;filter:blur(11px);animation:homeBlobC 17s ease-in-out infinite alternate}
.motion-image-stack{position:absolute;right:-104px;top:15px;width:min(40vw,530px);height:370px;overflow:hidden;clip-path:ellipse(44% 62% at 61% 49%);opacity:.35;filter:saturate(.82);transform:rotate(-5deg);mask-image:linear-gradient(90deg,transparent 1%,#000 23%);}
.motion-image-stack::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#003741,transparent 45%);z-index:3;pointer-events:none}
.motion-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:homePhotoCycle 21s infinite ease-in-out,homePhotoPan 21s infinite ease-in-out}
.motion-photo-1{animation-delay:0s,0s}
.motion-photo-2{animation-delay:-14s,-14s}
.motion-photo-3{animation-delay:-7s,-7s}
@keyframes homeBlobA{0%{transform:translate3d(-36px,-12px,0) rotate(-13deg);border-radius:48% 52% 60% 40%}50%{transform:translate3d(25px,16px,0) rotate(2deg);border-radius:57% 43% 45% 55%}100%{transform:translate3d(56px,-6px,0) rotate(12deg);border-radius:45% 55% 57% 43%}}
@keyframes homeBlobB{0%{transform:translate(-45px,4px) rotate(-10deg)}100%{transform:translate(25px,37px) rotate(14deg)}}
@keyframes homeBlobC{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-70px,-65px,0)}}
@keyframes homePhotoCycle{0%,24%{opacity:1}33%,94%{opacity:0}100%{opacity:1}}
@keyframes homePhotoPan{0%{transform:scale(1.02) translateX(0)}100%{transform:scale(1.20) translateX(-8%)}}
.motion-home .hero{position:relative;z-index:2;min-height:295px!important;padding-top:57px!important;padding-bottom:30px!important;display:flex;align-items:center;justify-content:center;}
.motion-home .hero-copy{max-width:1020px!important;text-align:center;position:relative;z-index:2}
.motion-home .hero h1{font-size:clamp(38px,4.15vw,62px)!important;line-height:1.13!important;font-weight:800;letter-spacing:-.045em!important;max-width:990px;margin:0 auto 22px!important}
.motion-home .hero p{font-size:clamp(14px,1.3vw,17px)!important;line-height:1.68;max-width:800px;margin-inline:auto;color:#e3f0ee}
.motion-toggle{position:absolute;right:4px;bottom:0;z-index:4;border:1px solid #ccede275;border-radius:999px;background:#00343bbd;color:#e3f7ed;padding:7px 12px;font-size:10px;font-weight:800;display:inline-flex;align-items:center;gap:7px;min-height:33px;cursor:pointer}
.motion-toggle:hover{background:#09555b}
.motion-toggle:focus-visible{outline:3px solid #f8ba2d;outline-offset:3px}
.motion-home .reference-search{position:relative;z-index:4;margin:7px auto 0!important;max-width:1190px}
.motion-home .home-intros.home-reference-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:15px!important;margin-top:24px!important;position:relative;z-index:3}
.motion-home .home-intros.home-reference-tiles .intro-card{min-height:205px!important;padding:24px 22px!important;border-radius:9px!important;display:flex;flex-direction:column;align-items:flex-start;background:#fff;box-shadow:0 7px 17px #032a2e17}
.motion-home .home-intros.home-reference-tiles .intro-card h3{font-size:18px!important;letter-spacing:-.028em;margin-bottom:13px}
.motion-home .home-intros.home-reference-tiles .intro-card p{font-size:12px!important;line-height:1.65!important;color:#4d686c;margin-bottom:18px;max-width:34ch}
.motion-home .home-intros.home-reference-tiles .intro-card .btn{margin-top:auto;font-size:11px!important;background:#b2ebaf;color:#003e40;min-height:38px;padding:10px 17px;border-radius:25px}
.motion-home .home-intros.home-reference-tiles .intro-card .btn:hover{background:#91dca1}
.motion-paused .home-motion-background *, .motion-paused .home-motion-background *::before,.motion-paused .home-motion-background *::after{animation-play-state:paused!important}
/* Accurate three-column footer and full business identification strip */
.footer.footer-brand-2026{background:#00333e!important;color:#e8f4ef;padding:62px 0 0!important}
.footer-brand-2026 .footer-columns.footer-reference.footer-three-columns{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:42px!important;margin-bottom:37px;padding-bottom:36px}
.footer-brand-2026 .footer-accordion{min-width:0}
.footer-brand-2026 .footer-accordion summary{font-size:15px!important;color:#fff;font-weight:850;letter-spacing:-.01em}
.footer-brand-2026 .footer-links{margin-top:17px;display:grid;gap:12px!important}
.footer-brand-2026 .footer-links a{font-size:13px;color:#c7dcda;text-decoration:none;text-underline-offset:3px}
.footer-brand-2026 .footer-links a:hover{color:#b7ecb8;text-decoration:underline}
.footer-brand-2026 .footer-contact-strip{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:31px 0 29px;border-top:1px solid #427078;min-width:0}
.footer-brand-2026 .footer-brand .logo{display:inline-flex;color:#fff;font-size:34px;align-items:center}
.footer-brand-2026 .footer-contact-strip address{font-style:normal;font-size:12px;line-height:1.7;display:flex;flex-direction:column;gap:7px;align-items:flex-end;color:#c5dedb;max-width:400px;text-align:right}
.footer-brand-2026 .footer-contact-strip address a,.footer-brand-2026 .footer-contact-strip address span{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}
.footer-brand-2026 .footer-contact-strip address a:hover{text-decoration:underline;color:#b7ecb8}
.footer-brand-2026 .footer-bottom.footer-legal-2026{display:flex!important;align-items:center;justify-content:space-between;gap:24px;padding:24px 0 29px;border-top:1px solid #427078}
.footer-brand-2026 .footer-company-statement{font-size:11.5px;line-height:1.8;margin:0;color:#c4dad7;max-width:790px}
.footer-brand-2026 .footer-legal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:11px;flex-shrink:0}
.footer-brand-2026 .footer-legal-actions a{font-size:11px!important;margin:0!important;color:#c4dad7}
.footer-brand-2026 .footer-back-to-top{background:#c0eec0!important;color:#003943!important;border-radius:7px;font-size:11px;font-weight:850;padding:10px 13px;min-height:39px}
@media(max-width:1080px){
 .motion-home .home-intros.home-reference-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .motion-home .home-intros.home-reference-tiles .intro-card{min-height:172px!important}
 .motion-image-stack{right:-145px;opacity:.24}
 .footer-brand-2026 .footer-bottom.footer-legal-2026{flex-wrap:wrap}
}
@media(max-width:760px){
 .motion-blob-a{width:475px;height:525px;left:-377px;top:-190px;opacity:.84}
 .motion-blob-b{width:260px;height:260px;top:-110px;right:-190px}
 .motion-image-stack{right:-115px;top:65px;width:330px;height:265px;opacity:.16}
 .motion-home .hero{min-height:280px!important;padding:45px 0 34px!important}
 .motion-home .hero h1{font-size:clamp(31px,7vw,44px)!important;margin-bottom:15px!important;line-height:1.17!important}
 .motion-home .hero p{font-size:13px!important;line-height:1.65!important;max-width:540px}
 .motion-toggle{right:0;bottom:0;font-size:10px}
 .motion-home .reference-search{margin-top:15px!important}
 .motion-home .home-intros.home-reference-tiles{grid-template-columns:1fr!important;gap:12px!important;margin-top:18px!important}
 .motion-home .home-intros.home-reference-tiles .intro-card{min-height:0!important;padding:21px 23px!important}
 .motion-home .home-intros.home-reference-tiles .intro-card p{max-width:65ch;margin-bottom:14px}
 .footer.footer-brand-2026{padding-top:32px!important}
 .footer-brand-2026 .footer-columns.footer-reference.footer-three-columns{grid-template-columns:1fr!important;gap:0!important;margin-bottom:0;padding-bottom:14px}
 .footer-brand-2026 .footer-accordion{border-bottom:1px solid #2c5b65}
 .footer-brand-2026 .footer-accordion summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
 .footer-brand-2026 .footer-accordion:not([open]) .footer-links{display:none}
 .footer-brand-2026 .footer-accordion .footer-links{padding:0 0 20px;margin-top:0}
 .footer-brand-2026 .footer-contact-strip{align-items:flex-start;flex-direction:column;gap:18px;padding:24px 0}
 .footer-brand-2026 .footer-contact-strip address{align-items:flex-start;max-width:100%;text-align:left}
 .footer-brand-2026 .footer-contact-strip address a,.footer-brand-2026 .footer-contact-strip address span{justify-content:flex-start}
 .footer-brand-2026 .footer-bottom.footer-legal-2026{align-items:flex-start;flex-direction:column;gap:15px}
 .footer-brand-2026 .footer-company-statement{font-size:11px}
 .footer-brand-2026 .footer-legal-actions{justify-content:flex-start}
}
@media(max-width:380px){.motion-home .hero{min-height:297px!important}.motion-home .home-intros.home-reference-tiles .intro-card{padding:20px!important}.motion-toggle{right:0;bottom:0}.footer-brand-2026 .footer-contact-strip address{font-size:11px}}
@media(prefers-reduced-motion:reduce){.motion-home .home-motion-background *, .motion-home .home-motion-background *::before,.motion-home .home-motion-background *::after{animation:none!important;transition:none!important}.motion-home .motion-photo{opacity:0!important}.motion-home .motion-photo-1{opacity:1!important}}
