@font-face{font-family:BG;src:url('/assets/bg-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:BG;src:url('/assets/bg-medium.woff2') format('woff2');font-style:normal;font-weight:500 800;font-display:swap}
:root{--navy:#002641;--sky:#0caaff;--lavender:#babaff;--white:#fff;--pale-blue:#ceeeff;--pale-lavender:#f1f1ff;--muted:#667c8d;--ease:cubic-bezier(.16,.8,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:126px}body{margin:0;background:var(--white);color:var(--navy);font:400 18px/1.5 BG,Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--sky);outline-offset:5px}button{color:inherit}button:disabled{cursor:default}[hidden]{display:none!important}img{display:block;max-width:100%}.container{max-width:1440px;margin:auto;width:calc(100% - 96px)}.skip-link{position:absolute;z-index:30;top:8px;left:8px;background:#fff;padding:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{position:relative;z-index:10;background:var(--navy);color:var(--white)}.header-inner{max-width:1536px;min-height:112px;padding:23px 48px;display:flex;align-items:center;justify-content:space-between;gap:35px;margin:auto}.brand{display:block;width:485px;flex-shrink:0}.brand svg{width:100%;height:auto;display:block;filter:brightness(0) invert(1)}.desktop-nav{display:flex;align-items:center;gap:29px}.desktop-nav button,.desktop-nav a{font-size:17px;padding:14px 0;border:none;background:none;position:relative;white-space:nowrap}.desktop-nav button:after,.desktop-nav a:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:2px;background:var(--sky);transform:scaleX(0);transition:transform .25s}.desktop-nav button:hover:after,.desktop-nav a:hover:after{transform:scaleX(1)}.menu-button{display:none;border:1px solid #667c8d;border-radius:12px;width:48px;height:48px;background:transparent;flex-shrink:0;padding:13px}.menu-button span{display:block;height:2px;background:#fff;width:20px;margin:5px 0;transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{padding:0 24px 24px;grid-template-columns:1fr 1fr;gap:0 24px}.mobile-nav button,.mobile-nav a{border:0;border-bottom:1px solid #667c8d;background:none;color:#fff;text-align:left;padding:16px 0;font-size:18px}
.home-hero{position:relative;overflow:hidden}.hero-content{padding-top:42px;position:relative}.hero-copy{padding:0 12px;margin-bottom:32px}h1,h2,p{margin-top:0}h1,h2{font-weight:500;line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(34px,4.3vw,64px);margin-bottom:12px}.hero-copy p{font-size:clamp(18px,1.85vw,26px);color:var(--navy);margin-bottom:0}.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 36px}.photo-tile{padding:0;position:relative;isolation:isolate;border:0;border-radius:34px;overflow:hidden;display:block;background:var(--navy);text-align:left;box-shadow:0 10px 26px #0026411c,0 2px 6px #0026410c;transition:box-shadow .3s,translate .3s}.photo-tile img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;transition:filter .3s}.photo-tile:after{content:'';position:absolute;z-index:1;inset:48% 0 0;background:linear-gradient(transparent,#00264199);pointer-events:none}.tile-label{position:absolute;z-index:2;left:27px;bottom:24px;font-size:clamp(26px,3.2vw,44px);font-weight:500;line-height:1;color:#fff;letter-spacing:-.025em}.tile-arrow{position:absolute;z-index:2;right:24px;bottom:21px;width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--navy);font-size:27px;line-height:1;transition:transform .3s}.photo-tile:hover{translate:0 -3px;box-shadow:0 16px 34px #00264126,0 3px 8px #00264112}.photo-tile:hover .tile-arrow{transform:translateX(3px)}.photo-tile:hover img{filter:brightness(1.045)}.family-tile{grid-column:1/-1}.family-tile img{aspect-ratio:3/1}.family-tile:after{inset:0;background:linear-gradient(90deg,#00264199,transparent 56%)}.family-label{position:absolute;left:32px;bottom:32px;z-index:2;color:#fff}.family-label .tile-label{position:static;display:block;font-size:clamp(32px,4.4vw,58px);margin-bottom:10px}.tile-description{font-size:clamp(16px,1.8vw,24px);display:block}.family-tile .tile-arrow{right:28px;bottom:30px}.scroll-cue{width:fit-content;margin:25px auto 0;display:flex;flex-direction:column;align-items:center;gap:1px;color:var(--muted);font-size:13px;padding:4px 20px}.scroll-cue span:last-child{font-size:26px}.intro-replay{display:block;margin:0 auto 28px;border:0;background:none;padding:8px;font-size:12px;color:var(--muted)}
.intro{position:absolute;inset:0 0 auto;height:calc(100svh - var(--header-height,112px));max-height:850px;z-index:5;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;visibility:hidden;opacity:0}.intro-wordmark{font-size:clamp(62px,8vw,120px);display:flex;gap:22px;position:relative;z-index:2;font-weight:500;line-height:1.1;letter-spacing:-.045em}.intro-wordmark span{display:block}.intro-amp{color:var(--sky)}.intro-tagline{font-size:clamp(16px,1.8vw,24px);margin:25px 0 0;z-index:2;color:var(--navy)}.intro-cloud{position:absolute;width:min(96%,1080px);aspect-ratio:1.6;border-radius:50%;background:radial-gradient(ellipse at 32% 46%,#0caaff99,transparent 65%),radial-gradient(ellipse at 71% 55%,#babaffcc,transparent 66%),radial-gradient(ellipse at 53% 42%,#aae1ff99,transparent 67%);background-size:125% 125%,135% 135%,115% 115%;filter:blur(32px);opacity:0;pointer-events:none}.intro-active .intro{visibility:visible;animation:intro-away .8s ease 2.38s both}.intro-active .intro-tier{animation:word-left 1.5s var(--ease) .12s both}.intro-active .intro-ich{animation:word-right 1.5s var(--ease) .12s both}.intro-active .intro-amp{animation:amp-in .95s var(--ease) .45s both}.intro-active .intro-wordmark{animation:word-away .9s ease 2.3s both}.intro-active .intro-tagline{animation:copy-in .85s ease .85s both}.intro-active .intro-cloud{animation:cloud 3.3s ease-in-out .05s both}.intro-active .hero-copy{animation:copy-in .8s ease 2.9s both}.intro-active .horse-tile{animation:horse-in 1.15s var(--ease) 2.55s both}.intro-active .dog-tile{animation:dog-in 1.15s var(--ease) 2.65s both}.intro-active .cat-tile{animation:cat-in 1.15s var(--ease) 2.75s both}.intro-active .family-tile{animation:family-in 1.2s var(--ease) 2.95s both}.intro-active .scroll-cue,.intro-active .intro-replay{animation:copy-in .6s ease 3.7s both}
@keyframes intro-away{from{opacity:1}to{opacity:0;visibility:hidden}}@keyframes word-left{from{opacity:0;transform:translateX(-100px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes word-right{from{opacity:0;transform:translateX(100px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes amp-in{from{opacity:0;transform:scale(.75)}to{opacity:1;transform:none}}@keyframes word-away{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-110px) scale(.65)}}@keyframes copy-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes horse-in{from{opacity:0;transform:translateX(-120%) rotate(-3deg) scale(.95)}to{opacity:1;transform:none}}@keyframes cat-in{from{opacity:0;transform:translateX(120%) rotate(3deg) scale(.95)}to{opacity:1;transform:none}}@keyframes dog-in{from{opacity:0;transform:translateY(110%) scale(.92)}to{opacity:1;transform:none}}@keyframes family-in{from{opacity:0;transform:translateY(130%) scale(.97)}to{opacity:1;transform:none}}@keyframes cloud{0%{opacity:0;transform:translate(-18px,8px) scale(.86);background-position:0% 40%,100% 60%,45% 50%}24%{opacity:.95;transform:translate(-10px,1px) scale(.96)}58%{opacity:1;transform:translate(8px,-7px) scale(1.03);background-position:70% 58%,25% 35%,60% 45%}82%{opacity:.95;transform:translate(17px,-2px) scale(1.07)}100%{opacity:0;transform:translate(22px,-9px) scale(1.12);background-position:100% 65%,0% 25%,70% 40%}}
.mission{padding:88px 0 92px;background:linear-gradient(115deg,#fff 5%,var(--pale-lavender) 100%);scroll-margin-top:24px}.mission-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:80px}.mission-photo{margin:0}.mission-photo img{width:100%;height:auto;border-radius:32px;aspect-ratio:4/3;object-fit:contain;background:var(--pale-lavender)}.mission-photo figcaption{margin-top:15px;font-size:16px}.eyebrow{font-size:15px;font-weight:500;letter-spacing:.06em;color:var(--navy);margin:0 0 20px}.mission h2{font-size:clamp(36px,4.2vw,60px);margin-bottom:28px}.mission-copy>p:not(.eyebrow){font-size:21px;line-height:1.5;max-width:490px;margin-bottom:15px}.signature{display:flex;flex-direction:column;gap:4px;margin:30px 0;font-size:18px}.signature strong{font-weight:500}.primary-button{box-shadow:0 6px 18px #00264122;display:inline-flex;gap:30px;align-items:center;justify-content:space-between;border:0;border-radius:50px;padding:19px 29px;background:var(--navy);color:#fff;font-size:18px;min-height:56px;transition:background .25s}.primary-button:hover{background:#667c8d}.primary-button span{font-size:25px;line-height:1}
footer{background:var(--navy);color:#fff;padding:52px 0 25px}.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.footer-tagline{font-size:29px;line-height:1.15;font-weight:500;margin-bottom:24px}.footer-agency{font-size:14px;line-height:1.6;margin:0;color:#ccd3d9}.footer-contact{display:flex;flex-direction:column;gap:16px;padding-top:5px;font-size:20px}.footer-contact a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px;color:#ccd3d9;border-top:1px solid #667c8d;margin-top:38px;padding-top:22px}.footer-bottom>div{display:flex;gap:25px;flex-wrap:wrap}.footer-bottom button{border:none;background:none;color:inherit;font-size:13px;padding:0;min-height:32px}.footer-bottom button:hover{text-decoration:underline}
#site-dialog{color:var(--navy);border:0;border-radius:26px;padding:0;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 48px);background:#fff;box-shadow:0 25px 100px #00264155}#site-dialog::backdrop{background:#00264177;backdrop-filter:blur(6px)}.dialog-inner{padding:48px 38px 38px;position:relative}.dialog-close{position:absolute;top:12px;right:14px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pale-lavender);font-size:28px;line-height:1}#site-dialog h2{font-size:36px;margin:10px 0 22px}#site-dialog p{font-size:17px;line-height:1.6}#site-dialog h3{font-size:21px;font-weight:500;margin:24px 0 10px}.dialog-links{display:flex;flex-direction:column;gap:12px;margin:25px 0}.dialog-link{display:flex;align-items:center;justify-content:space-between;background:var(--pale-lavender);border-radius:15px;padding:17px 18px;font-size:18px;min-height:58px}.dialog-link:hover{background:#e7e7ff}.dialog-link span{margin-left:15px;font-size:23px}.dialog-source{font-size:14px!important;color:var(--navy)}.dialog-source a,#site-dialog p a{text-decoration:underline;text-underline-offset:3px}.dialog-open{overflow:hidden}.noscript-note{padding:25px;background:var(--pale-blue)}
@media(min-width:1500px){.hero-content{padding-top:40px}.family-grid{gap:28px 38px}.photo-tile:not(.family-tile) img{aspect-ratio:4/3}.family-tile img{max-height:340px;object-fit:contain;background:#fff}}
@media(max-width:1150px){.header-inner{padding:23px 32px}.brand{width:380px}.desktop-nav{gap:20px}.desktop-nav button,.desktop-nav a{font-size:16px}.container{width:calc(100% - 64px)}.family-grid{gap:26px}.mission-grid{gap:45px}.mission-copy>p:not(.eyebrow){font-size:19px}}
@media(max-width:950px){.header-inner{min-height:96px;padding:18px 24px}.brand{width:400px;max-width:calc(100% - 75px)}.desktop-nav{display:none}.menu-button{display:block}.mobile-nav:not([hidden]){display:grid}.container{width:calc(100% - 48px)}.hero-content{padding-top:35px}.family-grid{gap:20px}.photo-tile{border-radius:25px}.tile-label{left:18px;bottom:18px;font-size:30px}.tile-arrow{right:16px;bottom:15px;width:34px;height:34px;font-size:23px}.family-label{left:23px;bottom:25px}.mission-grid{gap:35px}.mission h2{font-size:40px}.mission{padding:62px 0}.signature{font-size:16px}.primary-button{font-size:16px;padding:17px 23px}}
@media(max-width:600px){body{font-size:16px}.header-inner{min-height:88px;padding:20px 16px;gap:16px}.brand{width:300px;max-width:calc(100% - 58px)}.menu-button{width:44px;height:44px;padding:11px}.mobile-nav{padding:0 18px 18px}.container{width:calc(100% - 32px)}.hero-content{padding-top:31px}.hero-copy{padding:0 3px;margin-bottom:25px}h1{font-size:clamp(33px,8.2vw,46px);max-width:400px;margin-bottom:15px;letter-spacing:-.035em}.hero-copy p{font-size:17px;line-height:1.45;max-width:310px}.family-grid{gap:15px 12px}.photo-tile{border-radius:19px;box-shadow:0 7px 20px #0026411c,0 2px 5px #0026410c}.photo-tile:not(.family-tile){background:#fff;color:var(--navy)}.photo-tile:not(.family-tile) img{aspect-ratio:4/3;object-fit:contain}.photo-tile:not(.family-tile):after{display:none}.photo-tile:not(.family-tile) .tile-label{position:static;display:block;font-size:19px;text-align:center;color:var(--navy);padding:12px 0 10px;line-height:1}.photo-tile:not(.family-tile) .tile-arrow{display:none}.family-tile{border-radius:22px;margin-top:5px}.family-tile img{aspect-ratio:3/1;object-fit:contain}.family-tile:after{display:none}.family-label{position:static;display:block;padding:17px 18px 18px}.family-label .tile-label{font-size:29px;margin-bottom:7px}.tile-description{font-size:14px;line-height:1.3;max-width:calc(100% - 38px)}.family-tile .tile-arrow{width:33px;height:33px;right:17px;bottom:22px}.scroll-cue{margin-top:22px;font-size:12px}.intro-replay{margin-bottom:19px}.intro{justify-content:center;padding:0}.intro-wordmark{font-size:60px;gap:15px;letter-spacing:-.045em}.intro-tagline{font-size:16px;margin-top:23px;text-align:center;padding:0 20px}.intro-cloud{top:50%;left:50%;translate:-50% -50%;width:113%;aspect-ratio:1.4;filter:blur(25px)}.mission{padding:44px 0 48px}.mission-grid{grid-template-columns:1fr;gap:30px}.mission-photo img{border-radius:25px;aspect-ratio:4/3}.mission-photo figcaption{font-size:14px;margin-top:12px}.mission-copy{padding:0 5px}.eyebrow{font-size:14px;margin-bottom:15px}.mission h2{font-size:40px;line-height:1.1;margin-bottom:23px}.mission-copy>p:not(.eyebrow){font-size:18px}.signature{font-size:16px;margin:25px 0}.primary-button{font-size:17px;padding:17px 25px}.footer-inner{flex-direction:column;gap:24px}.footer-tagline{font-size:27px}.footer-agency{font-size:13px}.footer-contact{font-size:19px;gap:13px}.footer-bottom{gap:15px}.footer-bottom>div{gap:8px 18px}.dialog-inner{padding:49px 23px 26px}#site-dialog h2{font-size:31px}#site-dialog p{font-size:16px}.dialog-link{font-size:16px}.photo-tile:hover{translate:none}}
/* The requested brand intro always uses the complete choreography.
   A visible skip control and Escape remain available throughout. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-tile,.tile-arrow,.photo-tile img{transition:none}.photo-tile:hover{translate:none}}
.intro-skip{display:none;position:absolute;top:20px;right:32px;z-index:7;border:0;border-radius:30px;padding:10px 17px;background:#f1f1ff;color:var(--navy);font-size:14px;min-height:44px}
.intro-active .intro-skip{display:block}
@media(max-width:600px){.intro-skip{top:12px;right:16px;font-size:12px}}

@media(max-width:360px){.header-inner{flex-wrap:wrap;gap:8px;padding:16px}.brand{width:100%;max-width:none}.menu-button{margin-left:auto}}
/* Compact legal tiles; detailed information stays inside the dialog. */
.footer-petra{margin-top:18px}.footer-bottom{align-items:center}.footer-bottom>div{gap:10px}.footer-bottom .legal-tile{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 15px;border:1px solid #496174;border-radius:13px;background:#11354e;color:#fff;font-size:13px;min-height:46px;box-shadow:0 4px 12px #00142126;text-decoration:none}.footer-bottom .legal-tile:hover{background:#1e455f;text-decoration:none}.footer-bottom .legal-tile span{font-size:17px}.dialog-inner{padding-top:0}.dialog-close{position:sticky;display:block;top:10px;margin-left:auto;margin-right:-18px;z-index:2;box-shadow:0 2px 10px #00264118;flex-shrink:0;transform:translateY(10px)}#dialog-content{padding-top:8px}#site-dialog:has(.legal-copy){width:min(790px,calc(100% - 32px))}#site-dialog:has(.legal-copy) h2{padding-right:30px}#site-dialog .legal-copy p{font-size:16px}#site-dialog .legal-copy h3{margin-top:30px}.legal-actions a{text-decoration:underline}.legal-copy{overflow-wrap:anywhere}.legal-copy li{line-height:1.6;margin-bottom:6px}.legal-notice{padding:1px 20px 10px;background:#f0f0ff;border-radius:16px}.legal-date{border-top:1px solid #d5e0e7;padding-top:18px;margin-top:30px;font-size:13px!important}@media(max-width:600px){.footer-bottom>div{display:grid;grid-template-columns:1fr 1fr;width:100%}.footer-bottom .legal-tile{gap:8px;font-size:12px;padding:12px}.dialog-close{margin-right:-8px}.dialog-inner{padding-top:0}#site-dialog .legal-copy p{font-size:15px}.legal-copy ul{padding-left:20px}}
@media(max-width:380px){.footer-bottom>div{grid-template-columns:1fr}}

/* Original ProvenExpert widget below the family tile, before the team section. */
.customer-reviews{padding:42px 0 9px}.reviews-heading{text-align:center;margin-bottom:23px}.reviews-heading .eyebrow{font-size:12px;margin-bottom:10px;letter-spacing:.1em;color:var(--muted)}.reviews-heading h2{font-size:clamp(25px,3vw,36px);margin-bottom:0}.reviews-widget{border-radius:22px;overflow:hidden;box-shadow:0 7px 24px #00264112;background:#fff}.reviews-widget #pewl{width:100%;max-width:none;margin:0;border-radius:22px;overflow:hidden}.reviews-profile{text-align:center;font-size:13px;line-height:1.5;margin:17px 0 0;color:var(--muted)}.reviews-profile a{text-decoration:underline;text-underline-offset:4px}@media(max-width:600px){.customer-reviews{padding-top:32px}.reviews-heading{margin-bottom:18px}.reviews-heading h2{font-size:27px}.reviews-widget,.reviews-widget #pewl{border-radius:17px}.reviews-profile{font-size:12px;margin-top:15px}}

@media(min-width:992px){.reviews-widget #pewl .pew-content>.pew-middle{width:41.6666667%}.reviews-widget #pewl .pew-content>.pew-right{width:41.6666667%}.reviews-widget #pewl .pew-content>.pew-middle>div>.pew-left,.reviews-widget #pewl .pew-content>.pew-middle>div>.pew-middle{width:50%}}@media(max-width:767px){.reviews-widget #pewl .pew-content.pew-not-s>.pew-right{display:block!important;visibility:visible!important;width:100%;height:145px;margin-top:16px;padding:0}.reviews-widget #pewl .pew-content>.pew-right>div:before,.reviews-widget #pewl .pew-content>.pew-right>div:after{display:none}}
.reviews-widget #pewl .pew-content>.pew-middle .pew-left .pew-2{justify-content:center!important;gap:3px}@media(max-width:370px){.reviews-widget #pewl .pew-content.pew-v1>.pew-middle>div>.pew-left{width:100%}}
/* Once-only section entrances; native scrolling and full image framing remain intact. */
.scroll-motion [data-reveal]{--reveal-x:0px;--reveal-y:28px;opacity:0;transform:translate3d(var(--reveal-x),var(--reveal-y),0);transition:opacity .85s ease var(--reveal-delay,0ms),transform .95s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.scroll-motion [data-reveal="left"]{--reveal-x:-32px;--reveal-y:18px}.scroll-motion [data-reveal="right"]{--reveal-x:28px;--reveal-y:16px}.scroll-motion [data-reveal].is-revealed,.scroll-motion [data-reveal]:focus-within{opacity:1;transform:translate3d(0,0,0)}
.mission{position:relative;isolation:isolate;overflow:hidden}.mission::before{content:'';position:absolute;z-index:0;inset:-12% -8%;pointer-events:none;background:radial-gradient(ellipse at 16% 46%,#ceeeffb3,transparent 54%),radial-gradient(ellipse at 86% 62%,#babaff4d,transparent 54%);transform:translate3d(0,var(--mission-drift,0px),0)}.mission-grid{position:relative;z-index:1}
@media(max-width:600px){.scroll-motion [data-reveal]{--reveal-y:20px;transition-duration:.7s,.8s}.scroll-motion [data-reveal="left"]{--reveal-x:-14px;--reveal-y:16px}.scroll-motion [data-reveal="right"]{--reveal-x:12px;--reveal-y:14px}}
@media(prefers-reduced-motion:reduce){.scroll-motion [data-reveal]{opacity:1;transform:none;transition:none}.mission::before{transform:none}}
@media print{.scroll-motion [data-reveal]{opacity:1;transform:none;transition:none}.mission::before{display:none}}

/* Longer FAQ label stays readable before the mobile menu takes over. */
@media(min-width:951px) and (max-width:1250px){.header-inner{gap:24px;padding-left:24px;padding-right:24px}.brand{width:350px}.desktop-nav{gap:20px}.desktop-nav button,.desktop-nav a{font-size:16px}}
@media(min-width:951px) and (max-width:1090px){.desktop-nav{display:none}.menu-button{display:block}.mobile-nav:not([hidden]){display:grid}}
.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}

/* Navigation targets stay accessible without a browser frame around plain headings. */
:is(h1,h2,h3,h4,h5,h6)[tabindex="-1"]:focus{outline:none}
