:root{--fh-ink:#254936;--fh-green:#24663c;--fh-yellow:#ffdc35}
.full-hero-site{background:#fffdf3;color:var(--fh-ink)}
.full-hero-site .brand-symbol{width:43px;height:43px;object-fit:contain}
.full-hero-site .site-header{height:94px;padding:0 58px}
#design-content{min-height:0}
.full-hero{max-width:1480px;margin:0 auto;position:relative;isolation:isolate;--fh-accent:#24663c}
.full-hero *{box-sizing:border-box}
.fh-stage{position:relative;touch-action:pan-y}
.fh-viewport{overflow:hidden;width:100%}
.fh-track{display:flex;width:100%;align-items:stretch;transition:transform .72s cubic-bezier(.22,.68,.16,1);will-change:transform}
.fh-slide{flex:0 0 100%;min-width:0;display:grid;grid-template-columns:1.03fr 1fr;gap:28px;align-items:center;padding:30px 64px;min-height:530px;position:relative;overflow:hidden}
.fh-copy{position:relative;min-width:0;padding:4px 0 8px}
.fh-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;font-weight:700;line-height:1.7;margin:0 0 18px;width:fit-content;max-width:100%;position:relative;z-index:1}
.fh-kicker strong{font-size:12px;white-space:nowrap}
.fh-service-number{font:700 10px/1 Arial,sans-serif;color:var(--fh-green);background:#fff2aa;border:1px solid #daca81;width:23px;height:23px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none}
.fh-eyebrow{font-size:10px;font-weight:500;letter-spacing:0;color:#67775a}
.fh-title{font-size:46px;line-height:1.48;font-weight:900;letter-spacing:-.055em;margin:0 0 19px;text-wrap:pretty}
.fh-title>span{white-space:nowrap}
.fh-lead{font-size:16px;line-height:1.8;font-weight:750;margin:0 0 13px}
.fh-body{font-size:13px;line-height:2;color:#61745c;margin:0 0 24px}
.fh-actions{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:0}
.fh-actions>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 17px;min-height:53px;line-height:1.55;border:1px solid transparent;font-size:12px;font-weight:800;text-decoration:none;transition:transform .2s,background .2s;max-width:100%}
.fh-actions>a:hover{transform:translateY(-2px)}
.fh-actions>a>span{font-size:20px;line-height:1;flex:none}
.fh-primary{color:#fff;background:var(--fh-green);border-radius:11px}
.fh-secondary{color:var(--fh-ink);background:#fffef6;border-color:#ccd6be!important;border-radius:11px}
.fh-point{font-size:10px;line-height:1.7;color:#6a795f;margin:17px 0 0;display:flex;gap:6px;align-items:baseline}
.fh-point>span{color:var(--fh-green);font-size:12px;font-weight:800}
.fh-copy-accent{pointer-events:none}
.fh-art{position:relative;min-width:0;width:100%;height:480px;background:#ffdc35;border-radius:64px 24px 64px 24px;container-type:size;overflow:hidden;isolation:isolate}
.fh-art .av1{container-type:size}
.fh-arrow{position:absolute;z-index:10;top:50%;transform:translateY(-50%);width:43px;height:43px;border:1px solid #294b3124;border-radius:50%;background:#fffef7ed;box-shadow:0 4px 10px #3540190c;display:grid;place-items:center;color:#294c35;padding:0;transition:background .2s,box-shadow .2s}
.fh-arrow:hover{background:#fff;box-shadow:0 4px 15px #35401926}
.fh-arrow svg{width:22px;height:22px}
.fh-prev{left:10px}.fh-next{right:10px}
.fh-controls{display:flex;gap:32px;align-items:center;padding:6px 64px 7px;border-top:1px solid #52653a14}
.fh-pagination{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;flex:1.7;min-width:0}
.fh-pagination button{padding:10px 11px;display:grid;grid-template-columns:24px auto;column-gap:7px;row-gap:3px;text-align:left;align-content:center;align-items:center;font-size:11px;font-weight:800;color:#67735c;background:transparent;border:1px solid transparent;border-radius:9px;min-width:0;line-height:1.5;transition:background .2s,color .2s}
.fh-pagination button[aria-pressed=true]{color:#254936;background:#fff;border-color:#d7ddc8;box-shadow:0 2px 0 #ced4ba}
.fh-pagination button:hover{background:#ffffffab}
.fh-tab-number{font-family:Arial,sans-serif;font-size:10px;color:#7f8a69;grid-row:1/3;text-align:center;font-weight:700}
.fh-pagination button[aria-pressed=true] .fh-tab-number{color:#254936;background:#ffe56a;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}
.fh-pagination small{font-size:8px;font-weight:500;white-space:nowrap;grid-column:2}
.fh-playback{flex:1;display:flex;align-items:center;gap:10px;min-width:0}
.fh-counter{font-family:Arial,sans-serif;font-size:10px;white-space:nowrap;color:#859178}
.fh-counter b{font-size:15px;color:#254936;letter-spacing:.03em;margin-right:4px}
.fh-progress{height:3px;flex:1;background:#dfe4d1;min-width:25px;border-radius:2px;overflow:hidden}
.fh-progress i{display:block;width:100%;height:100%;background:#3b7746;transform:scaleX(0);transform-origin:left center}
.fh-auto,.fh-replay{border:0;background:none;padding:7px 0;color:#5e7157;display:flex;align-items:center;gap:5px;font:inherit;font-size:9px;white-space:nowrap;line-height:1}
.fh-auto-symbol{font-size:14px;width:16px;text-align:center}
.fh-replay{font-size:21px;padding:5px}
.fh-auto:disabled,.fh-replay:disabled{opacity:.5;cursor:default}
.fh-caption{padding:5px 64px 15px;display:flex;justify-content:space-between;gap:12px;font-size:8px;color:#7e8a70;line-height:1.5}
.fh-caption>span:last-child{font-weight:700}
.full-hero-site .service-strip{max-width:1352px;margin:0 58px;padding-top:24px}
.full-hero-site .preview-footer{padding-left:58px;padding-right:58px}
.fh-slide.is-active .fh-title{animation:fh-copy-reveal .75s .08s both}
.fh-slide.is-active .fh-lead{animation:fh-copy-reveal .7s .16s both}
.fh-slide.is-active .fh-body{animation:fh-copy-reveal .7s .22s both}
.fh-slide.is-active .fh-actions{animation:fh-copy-reveal .7s .28s both}
.fh-slide:not(.is-active) *{animation:none!important}
.yuzu-buddy{position:relative;width:143px;height:153px;margin:0 auto;isolation:isolate;flex:none;transform-origin:center bottom}
.yuzu-character{width:100%;height:100%;object-fit:contain;position:relative;z-index:2;display:block}
.yuzu-arm{position:absolute;z-index:1;top:60%;width:24px;height:35px;border:5px solid #467540;border-top:0;border-left:0;border-radius:0 0 24px 0;transform-origin:top center}
.yuzu-arm-left{left:-5px;transform:rotate(45deg)}
.yuzu-arm-right{right:-4px;transform:rotate(-135deg);top:57%}
.yuzu-foot{position:absolute;bottom:0;width:17px;height:8px;background:#467540;border-radius:50%;z-index:1}
.yuzu-foot-left{left:31px;transform:rotate(-16deg)}.yuzu-foot-right{right:31px;transform:rotate(16deg)}
.fh-slide.is-active .yuzu-buddy{animation:yuzu-bounce 3.2s ease-in-out infinite}
.fh-slide.is-active .yuzu-arm-right{animation:yuzu-wave 2.6s ease-in-out infinite}
.fh-art .av1-mini-face{background:transparent;border:0;border-radius:0;flex-basis:23px;height:26px;margin-top:0}
.fh-art .av1-mini-face img{width:23px;height:26px;object-fit:contain}
.fh-art .av1-card-logo{border:0;background:none}
.fh-art .av1-card-logo img{object-fit:contain;width:25px;height:25px}
.full-hero.d2-animation-paused *{animation-play-state:paused!important}
.full-hero.fh-static-story *,.full-hero.d2-reduced-motion *{animation:none!important}
.full-hero.fh-static-story .av1-process,.full-hero.fh-static-story .av1-scanline{opacity:0}
.fh-reduced .fh-track{transition:none}
/* A pause during entrance must leave the heading, explanation and CTA readable. */
.motion-paused .fh-slide.is-active .fh-copy > *{animation:none!important;opacity:1}
@keyframes fh-copy-reveal{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}
@keyframes yuzu-bounce{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}
@keyframes yuzu-wave{0%,55%,100%{transform:rotate(-135deg)}18%,36%{transform:rotate(-155deg)}27%,45%{transform:rotate(-119deg)}}
@container(max-width:490px){.yuzu-buddy{width:115px;height:123px}.yuzu-foot-left{left:25px}.yuzu-foot-right{right:25px}}
@container(max-width:430px){.yuzu-buddy{width:61px;height:66px}.yuzu-arm{width:13px;height:19px;border-width:3px}.yuzu-arm-left{left:-2px}.yuzu-arm-right{right:-2px}.yuzu-foot{width:9px;height:4px}.yuzu-foot-left{left:14px}.yuzu-foot-right{right:14px}}
@media(min-width:761px) and (max-height:800px){.fh-slide{min-height:0;padding-top:19px;padding-bottom:18px}.fh-art{height:430px}.yuzu-buddy{width:119px;height:127px}.fh-body{margin-bottom:19px}.fh-point{margin-top:14px}.fh-kicker{margin-bottom:14px}.fh-title{margin-bottom:16px}.fh-caption{padding-bottom:11px}}
@media(max-width:1100px) and (min-width:761px){.fh-slide{padding-left:54px;padding-right:54px;gap:21px;grid-template-columns:1fr 1fr}.fh-controls{padding-left:54px;padding-right:54px;gap:16px}.fh-caption{padding-left:54px;padding-right:54px}.fh-actions>a{font-size:10px;gap:8px;padding:12px 11px;min-height:50px}.fh-actions{gap:7px}.fh-eyebrow{display:block;flex-basis:100%;font-size:9px}.fh-pagination button{padding:8px 5px;font-size:10px;column-gap:3px}.fh-pagination small{font-size:7px}.fh-copy-accent{display:none!important}.fh-playback{gap:6px}.fh-auto{font-size:8px}.full-hero-site .site-header{padding:0 34px}}
@media(max-width:940px){.full-hero-site .site-header{height:84px;padding:0 28px}.fh-controls{gap:16px}.fh-pagination small{display:none}.fh-pagination button{grid-template-columns:20px auto}.fh-tab-number{grid-row:auto}.fh-pagination button[aria-pressed=true] .fh-tab-number{width:20px;height:20px}.fh-auto-text{display:none}}
@media(max-width:760px){
 :root{--bar-height:64px}
 .design-bar{gap:5px;padding:0 9px}
 .design-tabs{gap:2px}
 .design-tabs button{flex:1;min-width:0;padding:6px 2px;display:flex;flex-direction:column;gap:3px}
 .design-tabs .tab-name{display:block;font-size:7px;line-height:1.4;letter-spacing:-.3px;white-space:nowrap}
 .motion-control{flex:none;width:29px;height:32px;margin:0}
 .full-hero-site .site-header{height:77px;padding:0 20px}
 .full-hero-site .brand-symbol{width:34px;height:37px}
 .fh-slide{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:22px;padding:30px 24px 20px;min-height:0}
 .fh-copy{width:100%;padding-bottom:0;flex:1}
 .fh-kicker{margin-bottom:16px;gap:5px}
 .fh-kicker strong{font-size:11px}
 .fh-eyebrow{font-size:9px;flex-basis:100%;line-height:1.7}
 .fh-service-number{width:20px;height:20px;font-size:9px}
 .fh-title{font-size:31px;line-height:1.5;margin-bottom:17px}
 .fh-lead{font-size:13px;line-height:1.8;margin-bottom:12px}
 .fh-body{font-size:11px;line-height:1.95;margin-bottom:20px}
 .fh-body br{display:none}
 .fh-actions{gap:8px;flex-wrap:wrap}
 .fh-actions>a{font-size:10px;gap:8px;min-height:49px;padding:12px 11px;white-space:nowrap}
 .fh-actions>a>span{font-size:17px}
 .fh-primary{flex:1.45}
 .fh-secondary{flex:1}
 .fh-point{font-size:9px!important;margin-top:16px}
 .fh-art{height:512px;flex:none;width:100%;container-type:size}
 .fh-arrow{width:38px;height:38px;top:auto;bottom:256px;transform:none;background:#fffef7f5}
 .fh-prev{left:5px}.fh-next{right:5px}
 .fh-controls{flex-direction:column;gap:9px;padding:12px 24px 4px}
 .fh-pagination{flex:none;width:100%;gap:4px}
 .fh-pagination button{grid-template-columns:16px auto;gap:4px;padding:9px 5px;font-size:10px;white-space:nowrap}
 .fh-tab-number{font-size:9px}.fh-pagination button[aria-pressed=true] .fh-tab-number{width:18px;height:18px;font-size:9px}
 .fh-playback{width:100%;flex:none;gap:10px;min-height:30px}
 .fh-auto-text{display:inline;font-size:8px}
 .fh-counter b{font-size:13px}
 .fh-caption{padding:4px 24px 19px;font-size:7px}
 .full-hero-site .service-strip{margin:0 24px}
 .full-hero-site .preview-footer{padding-left:24px;padding-right:24px}
 .fh-copy-accent{display:none!important}
}
@media(max-width:360px){
 .full-hero-site .site-header{padding:0 14px;gap:6px}
 .full-hero-site .brand-symbol{width:28px;height:32px}
 .design-tabs .tab-name{font-size:6px;letter-spacing:-.3px}
 .fh-slide{padding-left:17px;padding-right:17px;padding-top:25px}
 .fh-title{font-size:26px}
 .fh-lead{font-size:12px}
 .fh-body{font-size:10px}
 .fh-actions{gap:7px}
 .fh-actions>a{font-size:9px;gap:5px;padding:11px 9px;min-height:46px}
 .fh-actions>a>span{font-size:14px}
 .fh-primary{flex-basis:100%}.fh-secondary{flex-basis:100%}
 .fh-controls{padding-left:17px;padding-right:17px}
 .fh-pagination button{font-size:9px;padding-left:3px;padding-right:3px;gap:3px}
 .fh-caption{padding-left:17px;padding-right:17px}
}
@media(prefers-reduced-motion:reduce){.full-hero *{animation:none!important}.fh-track{transition:none!important}.av1-process,.av1-scanline{opacity:0}}

@container(max-width:430px){.fh-art .yuzu-buddy{width:61px;height:66px}}

/* Keep the character and result card inside narrow artwork frames. */
@container(max-width:430px){
 .fh-art .av1-buddy{width:61px;right:9px}
}
@container(max-width:300px){
 .fh-art .av1-buddy{width:51px;right:9px}
 .fh-art .yuzu-buddy{width:51px;height:55px}
 .fh-art .yuzu-foot-left{left:11px}.fh-art .yuzu-foot-right{right:11px}
}
@media(min-width:761px) and (max-width:1100px){.full-hero .fh-art{height:512px}}
