/* SP first view: Figma 11072:2951, 375 x 667 including the 50px header. */
.hero-mobile-art{display:none}
@media(max-width:700px){
 body.home{--tto-header-height:calc(100vw * 50 / 375)}
 .home .hero{--sp-u:calc(100cqw / 375);position:relative;display:block;isolation:isolate;container-type:inline-size;width:100%;height:calc(100vw * 617 / 375);min-height:0;max-height:none;aspect-ratio:auto;margin:0;padding:0;overflow:hidden;background:#f7f3eb}
 .home .hero>.hero-scene,.home .hero>.hero-leaf,.home .hero>.hero-waves{display:none}
 .home .hero-mobile-art{position:absolute;inset:0;display:block;pointer-events:none}
 .home .sp-fv-board{position:absolute;left:0;top:calc(-50 * var(--sp-u));width:100%;height:calc(667 * var(--sp-u))}
 /* The native tilted mask clips the sky, leaves and family together. Its child
    applies the inverse matrix so the illustration stays upright. */
 .home .sp-fv-scene-mask{position:absolute;left:calc(-264.200683594 * var(--sp-u));top:calc(-85.398773193 * var(--sp-u));width:calc(909.820983887 * var(--sp-u));height:calc(654.976501465 * var(--sp-u));transform:matrix(.961858153343,.273548722267,-.27354902029,.961858034134,0,0);transform-origin:0 0;mask:url('../images/97d49.svg') 0 0/100% 100% no-repeat;mask-mode:alpha}
 .home .sp-fv-scene-content{position:absolute;left:calc(277.484307132 * var(--sp-u));top:calc(9.869747085 * var(--sp-u));width:calc(375 * var(--sp-u));height:calc(667 * var(--sp-u));transform:matrix(.961858055806,-.273548728431,.273549026454,.961858175016,0,0);transform-origin:0 0}
 .home .sp-fv-sky{position:absolute;left:calc(-405.961425781 * var(--sp-u));top:calc(-66.847839355 * var(--sp-u));width:calc(1185.777709961 * var(--sp-u));height:calc(666.999572754 * var(--sp-u));overflow:hidden;background:#fff;transform:scaleY(-1)}
 .home .sp-fv-sky>img{position:absolute;left:-23.007608%;top:-31.881993%;width:123.000005%;height:123.000005%;max-width:none;opacity:.4;object-fit:fill}
 .home .sp-fv-family{position:absolute;left:0;top:calc(56.884643555 * var(--sp-u));width:100%;height:calc(562.500427246 * var(--sp-u));max-width:none;object-fit:fill;mix-blend-mode:normal}
 .home .sp-fv-leaf{position:absolute;left:calc(var(--x)*var(--sp-u));top:calc(var(--y)*var(--sp-u));width:calc(var(--w)*var(--sp-u));height:calc(var(--h)*var(--sp-u));transform:matrix(var(--a),var(--b),var(--c),var(--d),0,0);transform-origin:0 0}
 .home .sp-fv-leaf-mask{position:absolute;inset:0;display:block;opacity:.6;mask:var(--mask) 0 0/100% 100% no-repeat;mask-mode:alpha}
 .home .sp-fv-leaf-mask>img{position:absolute;display:block;max-width:none;max-height:none;object-fit:fill;mix-blend-mode:normal}
 .home .sp-fv-waves{position:absolute;inset:0}
 .home .sp-fv-wave{position:absolute;display:block;max-width:none;object-fit:fill;transform-origin:center;animation-play-state:var(--leaf-play-state,running)}
 .home .sp-fv-wave-white{left:calc(-717.134765625 * var(--sp-u));top:calc(392.3097229 * var(--sp-u));width:calc(1423.423339844 * var(--sp-u));height:calc(245.405593872 * var(--sp-u))}
 .home .sp-fv-wave-green{left:calc(-493.622924805 * var(--sp-u));top:calc(480.786224365 * var(--sp-u));width:calc(1364.490112305 * var(--sp-u));height:calc(235.245193481 * var(--sp-u));transform:scaleX(-1);opacity:.8}
 .home .sp-fv-wave-soft{left:calc(-488.109863281 * var(--sp-u));top:calc(355.480621338 * var(--sp-u));width:calc(1342.617675781 * var(--sp-u));height:calc(169.88180542 * var(--sp-u))}
 .home .hero-copy{position:absolute;inset:0;z-index:2;width:100%;max-width:none;height:100%;margin:0;padding:0;letter-spacing:0;text-align:left}
 .home .hero-copy h1{position:absolute;left:calc(20.88 * var(--sp-u));top:calc(387.01 * var(--sp-u));display:block;width:calc(354 * var(--sp-u));height:calc(50.38 * var(--sp-u));margin:0;padding:0;font-size:calc(36.743 * var(--sp-u));font-weight:700;line-height:1.25;letter-spacing:0;white-space:nowrap}
 .home .hero-intro{position:absolute;left:0;top:calc(.62 * var(--sp-u))}
 .home .hero-intro>span{font-size:calc(32.15 * var(--sp-u))}
 .home .hero-copy h1 .round-word{position:absolute;left:calc(183.92 * var(--sp-u));top:calc(.62 * var(--sp-u));display:flex;gap:calc(2.404 * var(--sp-u));margin:0}
 .home .hero-copy h1 .round-word b{display:grid;place-items:center;width:calc(49.7557 * var(--sp-u));height:calc(49.7557 * var(--sp-u));border-radius:50%;background:transparent url('../images/ce425.svg') center/contain no-repeat;color:#fff;font-size:calc(36.743 * var(--sp-u));font-weight:700;line-height:1.25}
 .home .hero-tail{position:absolute;left:calc(288.79 * var(--sp-u));top:calc(6.37 * var(--sp-u));font-size:calc(32.15 * var(--sp-u))}
 .home .hero-copy>p{position:absolute;left:calc(20.88 * var(--sp-u));top:calc(443.72 * var(--sp-u));display:block;width:calc(354 * var(--sp-u));height:calc(39.24 * var(--sp-u));margin:0;font-size:calc(23.084 * var(--sp-u));line-height:1.25;letter-spacing:0;white-space:nowrap}
 .home .hero-copy .years{position:absolute;left:0;top:calc(.39 * var(--sp-u));display:grid;place-items:center;width:calc(38.8493 * var(--sp-u));height:calc(38.8493 * var(--sp-u));margin:0;border-radius:50%;background:transparent url('../images/6c31c.svg') center/contain no-repeat;color:#fff;font-size:calc(28.855 * var(--sp-u));font-weight:700;line-height:1.25;letter-spacing:calc(1.4427 * var(--sp-u))}
 .home .hero-years-copy{position:absolute;left:calc(41.27 * var(--sp-u));top:calc(6.01 * var(--sp-u))}
 .home .hero-years-copy>span,.home .hero-assurance>span{font-size:calc(20.198 * var(--sp-u))}
 .home .hero-copy>p .round-word{position:absolute;left:calc(133.85 * var(--sp-u));top:calc(3.89 * var(--sp-u));display:flex;gap:calc(1.511 * var(--sp-u));margin:0}
 .home .hero-copy>p .round-word b{display:grid;place-items:center;width:calc(31.2593 * var(--sp-u));height:calc(31.2593 * var(--sp-u));border-radius:50%;background:transparent url('../images/466b2.svg') center/contain no-repeat;color:#fff;font-size:calc(23.084 * var(--sp-u));font-weight:700;line-height:1.25}
 .home .hero-assurance{position:absolute;left:calc(195.47 * var(--sp-u));top:calc(5.01 * var(--sp-u))}
 .home .hero-badges{position:absolute;left:0;right:auto;top:calc(489.29 * var(--sp-u));bottom:auto;z-index:2;display:block;width:100%;max-width:none;height:calc(89.582 * var(--sp-u));margin:0;padding:0;letter-spacing:calc(.923 * var(--sp-u))}
 .home .hero-badges li{position:absolute;left:calc(16.59 * var(--sp-u));top:0;display:block;width:calc(134.373 * var(--sp-u));height:calc(89.582 * var(--sp-u));aspect-ratio:auto;margin:0;padding:0;background:url('../images/7f0ac.png') center/contain no-repeat;color:#251e1c;font-size:calc(11.537 * var(--sp-u));font-weight:700;line-height:1.2;transform:none;white-space:nowrap;text-align:center;text-shadow:calc(.7 * var(--sp-u)) 0 #fff,calc(-.7 * var(--sp-u)) 0 #fff,0 calc(.7 * var(--sp-u)) #fff,0 calc(-.7 * var(--sp-u)) #fff}
 .home .hero-badges li:nth-child(2){left:calc(109.2 * var(--sp-u));transform:none}
 .home .hero-badges li:nth-child(3){left:calc(211.03 * var(--sp-u));transform:none}
 .home .hero-badges li>span,.home .hero-badges li>strong{position:absolute;left:calc(72.12 * var(--sp-u));width:max-content;max-width:none;transform:translateX(-50%);margin:0;padding:0}
 .home .hero-badges li>span{top:calc(23.67 * var(--sp-u))}
 .home .hero-badges li strong{top:calc(37.514 * var(--sp-u));color:#ff8f2c;font-size:calc(21.717 * var(--sp-u));font-weight:700;line-height:1.2;-webkit-text-stroke:calc(.6 * var(--sp-u)) #fff;paint-order:stroke fill}
 .home .hero-badges li:nth-child(2)>span{left:calc(71.27 * var(--sp-u));top:calc(15.18 * var(--sp-u));color:#ff8f2c;font-size:calc(16.967 * var(--sp-u));letter-spacing:calc(1.7374 * var(--sp-u));line-height:1.4}
 .home .hero-badges li:nth-child(2)>strong{left:calc(71.27 * var(--sp-u));top:calc(45.584 * var(--sp-u));color:#251e1c;font-size:calc(11.537 * var(--sp-u));line-height:1.4}
 .home .hero-badges li:nth-child(3)>span,.home .hero-badges li:nth-child(3)>strong{left:calc(69.86 * var(--sp-u))}
 .home .hero-badges li:nth-child(3)>strong{font-size:calc(16.967 * var(--sp-u))}
 .home .hero-badges li strong b{font-size:calc(21.717 * var(--sp-u));font-weight:700}
 /* SP header keeps the office logo and menu button. */
 body.home .site-header.tto-header .tto-header-inner{--sp-header-u:calc(100cqw / 375);display:block;padding:0}
 body.home .site-header.tto-header .tto-header-brand{position:absolute;left:calc(12 * var(--sp-header-u));top:calc(13.5 * var(--sp-header-u));gap:calc(5 * var(--sp-header-u));height:calc(23.58 * var(--sp-header-u));font-size:calc(16.035 * var(--sp-header-u));letter-spacing:calc(1.2828 * var(--sp-header-u))}
 body.home .site-header.tto-header .logo-mark{content:url('../images/e02b2.svg');width:calc(19.6815 * var(--sp-header-u));height:calc(23.5809 * var(--sp-header-u))}
 body.home .site-header.tto-header .header-cta{display:none}
 body.home .site-header.tto-header .menu-toggle{position:absolute;left:calc(322.52 * var(--sp-header-u));top:calc(4 * var(--sp-header-u));width:calc(40 * var(--sp-header-u));height:calc(42 * var(--sp-header-u));padding:0}
 body.home .site-header.tto-header .menu-toggle[aria-expanded=false]{background:url('../images/4b43e.svg') center/contain no-repeat;background-size:100% auto}
 body.home .site-header.tto-header .menu-toggle[aria-expanded=false]>span{visibility:hidden}
 body.home .site-header.tto-header .menu-toggle[aria-expanded=true]>span{background:#9e6a3b}
}
/* Keep the copy and badges steady after their existing staggered entrance. */
@media(max-width:700px) and (prefers-reduced-motion:no-preference){
 .home .sp-fv-family{animation:sp-fv-family-in 1.5s cubic-bezier(.22,1,.36,1) both}
 .home .sp-fv-wave{animation:sp-fv-wave 4.8s ease-in-out infinite alternate;animation-play-state:var(--leaf-play-state,running)}
 .home .sp-fv-wave-green{animation-name:sp-fv-wave-green;animation-duration:6s;animation-delay:-2s}
 .home .sp-fv-wave-soft{animation-duration:5.5s;animation-delay:-1s}
 .home .sp-fv-leaf{animation:sp-fv-leaf 7s ease-in-out infinite;animation-play-state:var(--leaf-play-state,running)}
 .home .sp-fv-leaf:nth-of-type(even){animation-duration:8.5s;animation-delay:-3s;animation-direction:reverse}
 .home .sp-fv-leaf:nth-of-type(3n){animation-duration:9s;animation-delay:-5s}
 .leaf-motion-paused .home :is(.sp-fv-wave,.sp-fv-leaf){animation-play-state:paused}
 .tto-loading .sp-fv-family,.tto-loading .sp-fv-wave,.tto-loading .sp-fv-leaf{animation-play-state:paused}
}
@keyframes sp-fv-family-in{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes sp-fv-wave{from{translate:0 2px}to{translate:0 -6px}}
@keyframes sp-fv-wave-green{from{translate:0 -3px}to{translate:0 5px}}
@keyframes sp-fv-leaf{
 0%,100%{rotate:-4deg;translate:-2px 0}
 35%{rotate:5deg;translate:5px -7px}
 70%{rotate:-1deg;translate:-3px -3px}
}
