/* Approved hero refinements. Shared base and portrait assets stay intact. */
.compare-bar{min-height:54px;padding:8px 20px;gap:20px}
.compare-top{display:flex;align-items:center;gap:16px;flex:none}
.current-concept{display:none;font-size:10px;color:#65768b}
.compare-toggle{display:none;background:transparent;padding:9px 0 9px 12px;font-size:11px;font-weight:700}
.compare-panel,.compare-panel[hidden]{display:flex;align-items:center;gap:16px;flex:1;min-width:0}
.compare-panel nav{flex:1;gap:3px}
.compare-panel nav a{padding:9px 10px}
.compare-panel nav a span{display:none}
.motion-tools{margin-left:auto}
.site-header,.concept-2 .site-header{height:84px}
.concept-1 .hero,.concept-4 .hero,.concept-5 .hero{display:grid;grid-template-columns:1.05fr 1fr;grid-template-areas:"heading visual" "foot visual";align-content:center;align-items:center;column-gap:4%;row-gap:24px;min-height:calc(100svh - 186px);padding:35px 5.5% 54px}
.hero-heading{grid-area:heading;min-width:0;align-self:end;position:relative;z-index:2}
.hero-foot{grid-area:foot;min-width:0;align-self:start;position:relative;z-index:2}
.hero .hero-heading h1{font-size:clamp(40px,4.5vw,66px);font-weight:900;line-height:1.24;letter-spacing:-.055em}
.hero h1 em{font-style:normal;color:var(--blue)}
.hero h1 .title-top{font-size:.82em;letter-spacing:-.06em}
.concept-1 h1 em{background:linear-gradient(transparent 83%,#ffe478 83%,#ffe478 96%,transparent 96%)}
.hero .role{font-size:13px;letter-spacing:.035em;margin-bottom:22px;line-height:1.6}
.hero .role>span{width:8px;height:8px}
.hero .hero-desc{margin:0;font-size:15px;line-height:1.9;letter-spacing:0}
.hero .ctas{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:27px;gap:16px}
.hero .cta{font-size:14px;min-height:54px;padding:15px 22px;gap:28px;white-space:nowrap}
.hero .cta.primary{min-width:250px;justify-content:center}
.hero .cta.secondary{border:0;background:transparent;box-shadow:none;padding:12px 4px;font-size:13px;gap:12px;min-height:42px}
.hero .cta.secondary:hover{text-decoration:underline;text-underline-offset:5px}
.hero-bottom{font-size:11px}
/* 01: larger faces close to the headline, with three distinct messages. */
.hero .talk-art{grid-area:visual;aspect-ratio:1.04;width:100%;margin:0;max-width:none;position:relative}
.hero .talk-art:before{inset:17% 0 4%;border-radius:43% 46% 30% 35%}
.hero .talk-ring{top:8%;left:13%;width:74%}
.hero .talk-art>.people{height:79%;bottom:7%;overflow:hidden;border-radius:0 0 30% 30%}
.hero .people>.photo-man{height:115%;width:64%;left:-5%;bottom:-15%}
.hero .people>.photo-woman{height:110%;width:66%;right:-5%;bottom:-15%}
.hero .bubble-one{top:0;left:0;font-size:22px;line-height:1.4;padding:17px 25px;transform:rotate(-7deg);border-radius:26px}
.hero .bubble-two{top:7%;right:-1%;font-size:22px;line-height:1.4;padding:18px 23px;transform:rotate(6deg);border-radius:26px}
.hero .talk-art .bubble-three{left:29%;bottom:0;font-size:20px;line-height:1.45;padding:15px 20px;text-align:center;transform:rotate(-3deg);border-radius:25px}
.bubble-three strong{font-size:1.12em;letter-spacing:-.06em}
.hero .talk-spark{top:7%;left:48%;font-size:32px}
.playing .bubble-three{animation:bubble-pop .75s .7s both,breathe 4s 1.55s infinite ease-in-out}
/* 02: move closer to the people; the paper set supports them. */
.concept-2 .hero{display:grid;grid-template-columns:1fr;grid-template-areas:"heading" "visual" "foot";gap:20px;min-height:calc(100svh - 186px);padding:20px 5.5% 30px;align-content:center;overflow:hidden}
.concept-2 .hero-heading{text-align:center;align-self:auto}
.concept-2 .hero .role{justify-content:center;margin-bottom:14px}
.concept-2 .hero .hero-heading h1{font-size:clamp(38px,4.2vw,61px)}
.concept-2 .hero-foot{text-align:center;align-self:auto}
.concept-2 .hero .hero-desc{font-size:14px;line-height:1.8}
.concept-2 .hero .ctas{justify-content:center;margin-top:17px}
.hero .event-stage{grid-area:visual;width:min(860px,100%);height:300px;margin:0 auto;position:relative}
.hero .event-stage>.event-people{width:69%;left:21%;height:100%;top:0;position:absolute;z-index:3;overflow:hidden}
.hero .event-people>.photo-man{height:110%;width:58%;left:-3%;bottom:-10%}
.hero .event-people>.photo-woman{height:105%;width:58%;right:-1%;bottom:-10%}
.hero .event-board{left:4%;bottom:12%;width:120px;height:174px;padding:15px 12px;box-shadow:6px 5px 0 #173c96}
.hero .event-board>strong{font-size:12px;margin-top:12px}
.hero .event-board .phone-icon{width:29px;height:47px;margin-top:10px}
.hero .event-counter{left:33%;width:245px;height:85px;bottom:1%;padding:16px 22px;box-shadow:8px 5px 0 #dd825b}
.hero .event-counter>span{font-size:23px}
.hero .event-counter>strong{font-size:10px;margin-top:5px}
.hero .event-wheel{scale:.75;right:4%;bottom:3%;transform-origin:bottom}
.hero .event-stage>.event-flag{right:2%;top:0;scale:.8;transform-origin:right top}
.hero .stage-label{display:none}
.playing .event-board{animation:paper-unfold .75s both}
.playing .event-counter{animation:paper-unfold .8s .12s both}
.playing .event-people{animation:join-stage .5s .3s both}
/* 03: a typographic poster with a single, larger person. */
.concept-3 .hero{display:block;min-height:calc(100svh - 186px);padding:20px 5.5% 35px;overflow:hidden}
.concept-3 .rhythm-top .role{margin-bottom:0}
.concept-3 .type-poster{position:relative;margin:28px 0 28px;min-height:350px;padding:0;isolation:isolate}
.type-poster .rhythm-heading{font-size:clamp(64px,8.7vw,136px);font-weight:900;line-height:1.12;letter-spacing:-.085em;position:relative;z-index:2}
.rhythm-heading>span{display:inline-block}
.rhythm-main{position:relative;z-index:2;display:table;font-size:clamp(86px,11.5vw,180px);font-weight:900;line-height:1.12;letter-spacing:-.075em;color:var(--blue);margin-top:20px}
.rhythm-main:after{content:"";position:absolute;height:7px;left:0;right:9%;bottom:-10px;background:var(--blue);transform-origin:left}
.rhythm-portrait{position:absolute;right:-1%;bottom:-5px;width:31%;height:110%;z-index:1;overflow:hidden}
.rhythm-portrait>.person-photo{position:absolute;bottom:-12%;width:100%;height:115%;max-width:none}
.playing .rhythm-heading>span:first-child{animation:type-align .55s both}
.playing .rhythm-heading>span:last-child{animation:type-align .55s .12s both}
.concept-3 .hero-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px}
.concept-3 .hero .ctas{margin:0;flex:none}
/* 04: one team image, a supporting phone, and a finer connecting line. */
.hero .connect-art{grid-area:visual;width:100%;aspect-ratio:1.03;margin:0;max-width:none}
.hero .route{stroke-width:3.5}
.hero .connect-scene.consult{left:1%;top:4%;width:87%;transform:rotate(-3deg)}
.hero .consult-photo{aspect-ratio:1.32;border-width:3px;border-radius:65px 65px 35px 35px}
.hero .consult-photo>.photo-group{inset:5% 0 -12%}
.hero .consult-photo .photo-man{height:112%;width:66%;left:-7%;bottom:-12%}
.hero .consult-photo .photo-woman{height:108%;width:65%;right:-5%;bottom:-12%}
.hero .connect-scene.service{right:1%;bottom:0;width:30%;transform:rotate(6deg)}
.hero .service-photo{aspect-ratio:1;border-width:3px;border-radius:35px;background:#eef5ff}
.connect-phone{display:block;width:85%;height:100%;margin:auto}
.hero .connect-scene figcaption{font-size:11px;padding:8px 11px;left:4px;top:-12px}
.hero .connect-star{left:15%;bottom:4%;font-size:32px}
.concept-4 .hero h1:after{display:none}
/* 05: the person precedes the controls on narrow screens. */
.hero .strength-stage{grid-area:visual;width:100%;max-width:520px;margin:0 auto;padding:0}
.hero .strength-art{height:350px;aspect-ratio:auto;width:100%}
.hero .strength-art:before{inset:6% 0 0;border-radius:48% 46% 35% 38%}
.hero .strength-photo-group{inset:0 0;overflow:hidden;border-radius:0 0 25% 25%}
.hero .strength-photo-group>.photo-man{height:114%;width:65%;bottom:-14%;left:-5%}
.hero .strength-photo-group>.photo-woman{height:110%;width:65%;bottom:-14%;right:-4%}
.hero .strength-photo-group.solo>.person-photo{height:114%;width:90%;inset:auto 5% -14%;max-width:none}
.hero .strength-photo-group.enjoying>.photo-woman{height:116%;right:25%;width:68%;bottom:-14%}
.hero .strength-photo-group.enjoying>.photo-man{height:93%;left:42%;width:60%;bottom:-14%}
.hero .scene-caption{height:118px;padding:16px 0 0;text-align:center}
.hero .scene-caption h2{font-size:17px;line-height:1.6;margin-top:9px}
.hero .scene-caption p{font-size:12px;line-height:1.7;margin-top:6px}
.hero .strength-orbit{width:94%;left:3%;top:-2%;border-style:solid;opacity:.6}
.hero .strength-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-width:490px;margin-top:20px}
.hero .strength-choices button{min-width:0;width:100%;min-height:52px;padding:10px 8px;gap:7px;justify-content:center;box-shadow:0 3px 0 var(--ink);font-size:14px;white-space:nowrap}
.hero .strength-choices .choice-number{font-size:9px;opacity:.65;flex:none}
.choice-short{display:none}
.choice-long{font-size:inherit;opacity:1!important;font-family:var(--sans)!important}
.hero .strength-choices .choice-long{font:700 14px var(--sans);opacity:1}
.hero .strength-choices i{display:none}
.hero .strength-choices button[aria-pressed=true],.hero .strength-choices button:active{box-shadow:none;transform:translateY(3px);outline:2px solid var(--ink);outline-offset:2px}
.hero .strength-choices button[aria-pressed=true]:after{content:"✓";font-size:12px}
.hero .strength-choices button:focus-visible{outline:3px solid #b15420;outline-offset:5px}
/* Keep preview copy synchronized with the larger headings. */
.thumb-2 .thumb-copy{left:12%;width:76%;font-size:25px;top:35px}
.thumb-3 .thumb-copy{font-size:39px;width:68%;line-height:1.5;top:70px}
.thumb-3 .photo-preview{width:36%;right:0;height:91%;bottom:0}
.thumb-1 .mini-bubble{right:80px;top:20px;font-size:10px}
.thumb-4 .thumb-copy,.thumb-5 .thumb-copy{font-size:25px;width:55%}
@media(min-width:651px) and (max-height:800px){
 .site-header,.concept-2 .site-header{height:70px}
 .concept-1 .hero,.concept-4 .hero,.concept-5 .hero{min-height:calc(100svh - 172px);padding-top:25px;padding-bottom:40px;row-gap:20px}
 .hero .hero-heading h1{font-size:clamp(40px,4.3vw,60px)}
 .hero .talk-art{max-width:510px;margin:auto}
 .hero .strength-art{height:300px}
 .hero .scene-caption{height:105px}
 .concept-2 .hero{min-height:calc(100svh - 172px);gap:13px;padding-top:10px;padding-bottom:22px}
 .concept-2 .hero .hero-heading h1{font-size:clamp(37px,3.7vw,52px)}
 .hero .event-stage{height:230px;width:min(760px,100%)}
 .hero .event-board{height:144px;width:105px;padding:10px}
 .hero .event-board>strong{font-size:10px;margin-top:9px}
 .hero .event-board .phone-icon{height:36px;width:23px}
 .hero .event-counter{height:72px;width:210px;padding:10px 20px}
 .hero .event-counter>span{font-size:22px}
 .concept-3 .hero{min-height:calc(100svh - 172px);padding-top:14px}
 .concept-3 .type-poster{min-height:310px;margin-top:23px}
}
@media(min-width:651px) and (max-width:1000px){
 .compare-bar{gap:12px;padding:8px 14px}.compare-panel{gap:8px}.compare-panel nav a{padding:8px}.motion-tools button{padding:8px;font-size:9px}
 .hero .hero-heading h1{font-size:clamp(34px,4.7vw,48px)}.hero .role{font-size:11px}.hero .hero-desc{font-size:13px}
 .hero .ctas{gap:10px;margin-top:20px}.hero .cta.primary{min-width:220px}.hero .cta{font-size:13px}
 .hero .bubble-one,.hero .bubble-two{font-size:16px;padding:12px 17px}.hero .talk-art .bubble-three{font-size:14px;padding:12px 16px;left:24%}
 .hero .strength-art{height:270px}.hero .scene-caption{height:120px}.hero .scene-caption h2{font-size:14px}.hero .scene-caption p{font-size:11px}
 .hero .strength-choices button{font-size:14px;gap:3px;padding:8px 4px}.hero .strength-choices .choice-number{display:none}.hero .strength-choices .choice-long{display:none}.hero .strength-choices .choice-short{display:block;font:700 14px var(--sans);opacity:1}
 .concept-3 .type-poster{min-height:300px}.type-poster .rhythm-heading{font-size:9vw}.rhythm-main{font-size:11.8vw}
 .concept-3 .hero-foot{display:block}.concept-3 .hero .ctas{margin-top:20px}
 .hero .connect-scene figcaption{font-size:9px}
 .thumb-3 .thumb-copy{font-size:30px}.thumb-4 .thumb-copy,.thumb-5 .thumb-copy{font-size:20px}
}
@media(max-width:650px){
 .compare-bar{display:block;min-height:42px;padding:0 16px;background:#f0f2f5}
 .compare-top{height:42px;justify-content:space-between;gap:8px}.compare-top .back{font-size:10px}.current-concept{display:inline;font-size:9px}.compare-toggle{display:flex;align-items:center;gap:7px;font-size:10px;padding:8px 0}
 .compare-panel,.compare-panel[hidden]{display:none}.compare-panel:not([hidden]){display:block;padding:0 0 12px}.compare-panel nav{display:flex;gap:6px;margin-bottom:9px}.compare-panel nav a{padding:9px 0;font-size:11px;flex:1;text-align:center;background:#e1e6ee}.compare-panel .motion-tools{justify-content:end;margin:0}.motion-tools .replay span{font-size:10px}.motion-tools .replay span:after{display:none}.motion-tools button{font-size:10px}
 .site-header,.concept-2 .site-header{height:60px;padding:0 20px;gap:12px}.site-header .wordmark{font-size:21px}.site-header .wordmark>span{font-size:7px;letter-spacing:3px}.site-header .header-note{display:none}
 .concept-1 .hero,.concept-2 .hero,.concept-4 .hero,.concept-5 .hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "visual" "foot";min-height:0;align-content:start;align-items:start;row-gap:17px;padding:16px 20px 26px;overflow:hidden}
 .hero-heading,.hero-foot{align-self:auto}
 .hero .role{font-size:11px;font-weight:700;line-height:1.5;letter-spacing:0;margin-bottom:13px;gap:7px}.hero .role>span{width:6px;height:6px}
 .hero .hero-heading h1{font-size:clamp(30px,9.3vw,40px);line-height:1.25;letter-spacing:-.06em}
 .hero h1 .title-top{font-size:.8em;letter-spacing:-.06em}.concept-1 .hero h1 em{font-size:1.12em}
 .hero .hero-desc,.concept-2 .hero .hero-desc{font-size:14px;line-height:1.75;margin:0;text-align:left}.hero-desc br{display:none}
 .hero .ctas,.concept-2 .hero .ctas{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;align-items:stretch;margin-top:17px}
 .hero .cta,.concept-2 .hero .cta{font-size:14px;padding:13px 19px;min-height:48px;flex:auto}
 .hero .cta.primary{min-width:0;width:100%;justify-content:center;position:relative}.hero .cta.primary>span{position:absolute;right:18px;font-size:20px}
 .hero .cta.secondary{padding:7px 8px;min-height:34px;font-size:13px;justify-content:center;border:0;background:transparent}
 .hero-bottom{height:44px;margin:0 20px;font-size:9px;gap:14px}.hero-bottom>span:last-child{font-size:7px;letter-spacing:.6px}
 .hero .talk-art{height:280px;aspect-ratio:auto;width:100%;max-width:410px;margin:0 auto}
 .hero .talk-art:before{inset:17% 0 6%}.hero .talk-art>.people{height:80%;bottom:8%;border-radius:0 0 22% 22%}
 .hero .people>.photo-man{height:125%;width:66%;left:-6%;bottom:-34%}.hero .people>.photo-woman{height:120%;width:68%;right:-6%;bottom:-34%}
 .hero .bubble-one{font-size:15px;line-height:1.35;padding:10px 15px;left:0;top:0;border-radius:20px}
 .hero .bubble-two{font-size:15px;padding:12px 15px;top:1%;right:0;border-radius:20px}
 .hero .talk-art .bubble-three{font-size:17px;left:auto;right:5%;bottom:0;padding:10px 15px;border-radius:21px;line-height:1.35}
 .hero .talk-spark{top:2%;left:44%;font-size:25px}
 .concept-2 .hero-heading{text-align:left}.concept-2 .hero .role{justify-content:start;margin-bottom:13px}.concept-2 .hero .hero-heading h1{font-size:clamp(29px,8.6vw,38px);line-height:1.25}
 .concept-2 .hero-foot{text-align:left}
 .hero .event-stage{height:235px;width:100%;max-width:410px;margin:0 auto}
 .hero .event-stage>.event-people{height:100%;width:90%;left:9%;top:0;z-index:3}
 .hero .event-people>.photo-man{height:120%;width:60%;left:-2%;bottom:-20%}.hero .event-people>.photo-woman{height:115%;width:60%;right:-2%;bottom:-20%}
 .hero .event-board{width:67px;height:112px;padding:9px 6px;left:0;bottom:11%;box-shadow:4px 4px 0 #173c96}
 .hero .event-board>span{font-size:5px}.hero .event-board>strong{font-size:8px;line-height:1.5;margin-top:8px}.hero .event-board .phone-icon{width:20px;height:33px;margin-top:8px;border-width:2px}.hero .event-board i{left:25px;height:15px;bottom:-15px;width:8px}
 .hero .event-counter{width:55%;height:64px;left:24%;bottom:0;padding:10px 14px;box-shadow:5px 4px 0 #dd825b}.hero .event-counter>span{font-size:19px}.hero .event-counter>strong{font-size:8px;margin-top:3px}
 .hero .event-wheel{width:42px;height:68px;right:0;bottom:1%;scale:.75}.hero .event-wheel span{width:42px;height:42px}.hero .event-wheel i{left:18px;width:7px;height:26px}
 .hero .event-stage>.event-flag{right:0;top:-3%;width:94px;height:28px;padding:9px;font-size:8px;scale:.7}
 .hero .floor{top:75%;height:25%}
 .concept-3 .hero{display:block;min-height:0;padding:16px 20px 26px;overflow:hidden}
 .concept-3 .rhythm-top{display:block}.concept-3 .rhythm-top .role{margin:0}.concept-3 .rhythm-top>.small-en{display:none}
 .concept-3 .type-poster{display:grid;grid-template-columns:58% 42%;grid-template-rows:190px auto;align-items:center;min-height:0;margin:15px 0 25px;padding:0}
 .type-poster .rhythm-heading{grid-column:1;grid-row:1;font-size:clamp(44px,13vw,60px);line-height:1.13;letter-spacing:-.07em}
 .rhythm-heading>span{display:block}
 .rhythm-main{grid-column:1/-1;grid-row:2;font-size:clamp(52px,15.5vw,70px);margin:0;line-height:1.18;letter-spacing:-.065em;white-space:nowrap;width:max-content}
 .rhythm-main:after{height:5px;bottom:-7px;right:8%}
 .rhythm-portrait{position:relative;grid-column:2;grid-row:1;right:auto;bottom:0;width:112%;height:206px;align-self:end;overflow:hidden;z-index:1;margin-left:-12%}
 .rhythm-portrait>.person-photo{height:127%;width:112%;left:-4%;bottom:-28%}
 .concept-3 .hero-foot{display:block;margin-top:23px}.concept-3 .hero .ctas{margin-top:17px}
 .hero .connect-art{height:270px;aspect-ratio:auto;max-width:410px;margin:0 auto}
 .hero .route{stroke-width:2.8}.hero .connect-scene.consult{width:92%;left:0;top:1%;transform:rotate(-2deg)}
 .hero .consult-photo{aspect-ratio:1.36;border-width:2.5px;border-radius:45px 45px 28px 28px}
 .hero .consult-photo>.photo-group{inset:0 0 -15%}.hero .consult-photo .photo-man{height:119%;width:68%;left:-7%;bottom:-19%}.hero .consult-photo .photo-woman{height:115%;width:67%;right:-6%;bottom:-19%}
 .hero .connect-scene.service{width:26%;right:0;bottom:0}.hero .service-photo{border-width:2.5px;border-radius:24px}.hero .connect-scene figcaption{font-size:9px;padding:6px 8px;top:-10px;left:3px}.hero .service figcaption{font-size:8px;left:-18px}.hero .connect-star{font-size:25px;bottom:1%;left:14%}
 .hero .strength-stage{max-width:410px;margin:0 auto}
 .hero .strength-art{height:198px;aspect-ratio:auto}
 .hero .strength-photo-group>.photo-man{height:132%;width:64%;left:-4%;bottom:-30%}.hero .strength-photo-group>.photo-woman{height:127%;width:64%;right:-4%;bottom:-30%}
 .hero .strength-photo-group.solo>.person-photo{height:132%;width:90%;inset:auto 5% -30%}
 .hero .strength-photo-group.enjoying>.photo-woman{height:135%;width:67%;right:26%;bottom:-30%}.hero .strength-photo-group.enjoying>.photo-man{height:110%;width:60%;left:43%;bottom:-30%}
 .hero .scene-caption{height:79px;padding:9px 0 0}.hero .scene-label{display:none}.hero .scene-caption h2{font-size:14px;line-height:1.5;margin:0}.hero .scene-caption p{font-size:12px;line-height:1.6;margin-top:5px}
 .hero .strength-orbit{width:75%;left:12.5%;top:-2%}
 .hero .strength-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-width:none;margin-top:14px}
 .hero .strength-choices button{min-height:44px;padding:8px 6px;gap:4px;font-size:14px;letter-spacing:0}
 .hero .strength-choices .choice-number{display:none}.choice-long{display:none}.hero .strength-choices .choice-short{display:block;font:700 14px var(--sans);opacity:1}
 .thumb-2 .thumb-copy{font-size:22px;top:30px}.thumb-3 .thumb-copy{font-size:33px;top:63px}.thumb-4 .thumb-copy,.thumb-5 .thumb-copy{font-size:21px}.thumb-1 .thumb-copy{font-size:16px;width:49%}
 .thumb-5 .thumb-copy{width:42%;font-size:19px}
 .thumb-1 .mini-bubble{right:58px;top:18px;font-size:9px}
}
@media(max-width:360px){
 .current-concept{font-size:8px}.compare-bar{padding:0 12px}.compare-top{gap:4px}.compare-toggle{font-size:9px}.compare-top .back{font-size:9px}
 .hero .hero-heading h1{font-size:30px}.concept-2 .hero .hero-heading h1{font-size:28px}
 .hero .role{font-size:10px}.hero .hero-desc,.concept-2 .hero .hero-desc{font-size:13px}.hero .cta,.concept-2 .hero .cta{font-size:14px}
 .hero .talk-art{height:260px}.hero .bubble-one,.hero .bubble-two{font-size:13px;padding:9px 12px}.hero .talk-art .bubble-three{font-size:13px;padding:9px 13px}
 .hero .event-stage{height:215px}.hero .connect-art{height:245px}
 .hero .strength-art{height:185px}.hero .scene-caption h2{font-size:13px}.hero .scene-caption p{font-size:11px}
 .concept-3 .type-poster{grid-template-rows:170px auto}.rhythm-portrait{height:185px}.rhythm-main{font-size:15vw}
 .thumb-3 .thumb-copy{font-size:28px}.thumb-4 .thumb-copy,.thumb-5 .thumb-copy{font-size:19px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.travel-dot{display:none}.route{stroke-dashoffset:0}}
/* Browser comments 1–10, 2026-10-20. */
.concept-1 .hero .role,.concept-2 .hero .role,.concept-4 .hero .role{font-size:15px}
/* 02: a new paper scene, with smaller people and no counter or game wheel. */
.hero .paper-event{isolation:isolate}
.paper-backdrop{position:absolute;inset:12% 2% 0;border-radius:140px 140px 24px 24px;background:#e4edff;border-bottom:8px solid #c4d4f4;overflow:hidden;z-index:0}
.paper-backdrop:before{content:"";position:absolute;width:50%;height:150%;left:14%;top:-40%;background:#fff8;transform:rotate(28deg)}
.paper-backdrop>span{position:absolute;width:100px;height:100px;border:1px solid #bed0f1;border-radius:50%;right:8%;top:10%}
.paper-backdrop>i{position:absolute;width:180px;height:180px;border:1px solid #bed0f1;border-radius:50%;right:0;top:-12%}
.hero .paper-event>.event-people{width:64%;left:23%;height:100%;top:0}
.hero .paper-event .photo-man{height:96%;width:56%;left:0;bottom:0}
.hero .paper-event .photo-woman{height:92%;width:56%;right:0;bottom:0}
.event-phone-panel{z-index:2;width:145px;height:232px;left:7%;bottom:6%;border:4px solid #17385c;border-radius:23px;background:#fff;padding:36px 14px 16px;box-shadow:8px 7px 0 #bfd1f0;transform:rotate(-8deg)}
.phone-speaker{position:absolute;width:40px;height:5px;background:#17385c;top:12px;left:calc(50% - 20px);border-radius:5px}
.phone-tag{display:block;font:700 8px Arial,sans-serif;letter-spacing:.7px;color:#245de9}
.event-phone-panel strong{display:block;font-size:17px;line-height:1.5;margin-top:13px;letter-spacing:-.03em}
.plan-lines{margin-top:15px;display:grid;gap:7px}.plan-lines i{height:7px;background:#c8e9e3;border-radius:4px}.plan-lines i:nth-child(2){width:74%;background:#f6bc9d}.plan-lines i:nth-child(3){width:90%;background:#dbe6ff}
.phone-home{position:absolute;width:9px;height:9px;border:2px solid #17385c;border-radius:50%;bottom:9px;left:calc(50% - 4px)}
.event-chat-card{z-index:4;bottom:0;left:34%;width:240px;background:#f8b692;padding:15px 20px 17px;border:2px solid #17385c;border-radius:5px 22px 22px 22px;box-shadow:5px 5px 0 #d79474;transform:rotate(-3deg)}
.event-chat-card:before{content:"";position:absolute;left:25px;top:-15px;width:24px;height:24px;transform:skewY(30deg);background:#f8b692;border:2px solid #17385c;border-right:0;border-bottom:0;z-index:-1}
.event-chat-card>span{font:700 9px Arial,sans-serif;letter-spacing:1.2px}.event-chat-card>strong{display:block;font-size:18px;line-height:1.45;margin-top:5px}.event-chat-card>i{position:absolute;right:20px;bottom:18px;font-style:normal;font-size:30px}
.event-plan-card{z-index:4;right:4%;bottom:7%;width:115px;height:126px;background:#a7e2d5;border:2px solid #17385c;border-radius:12px;box-shadow:5px 5px 0 #78b9ad;padding:12px;transform:rotate(10deg)}
.event-plan-card>span{display:block;font:700 8px Arial,sans-serif;letter-spacing:1px}.event-plan-card>i{display:block;font-style:normal;font-size:35px;line-height:1.3}.event-plan-card>b{display:block;height:5px;border-radius:5px;background:#fff;margin-top:6px}.event-plan-card>b:last-child{width:65%}
.paper-spark{position:absolute;right:9%;top:0;color:#245de9;font-size:35px;z-index:2}
.playing .event-phone-panel{animation:paper-unfold .75s both}.playing .event-chat-card{animation:paper-unfold .75s .18s both}.playing .event-plan-card{animation:paper-unfold .75s .32s both}
/* 03: restore the previous words and the two original cutout placements. */
.concept-3 .restored-poster{display:block;min-height:0;margin:35px 0 35px;padding:0}
.restored-poster .type-line.first .rhythm-heading{font-size:clamp(80px,10.8vw,170px);line-height:1.16;letter-spacing:-.09em}
.restored-poster .rhythm-heading>span{display:inline-block}
.restored-poster .type-line.second{display:flex;margin-top:18px;padding-bottom:35px}
.restored-poster .poster-title{display:flex;white-space:nowrap}
.restored-poster .rhythm-listen{width:16%;height:190px;right:2%;bottom:-12px}
.restored-poster .rhythm-cheer{width:14%;height:180px;right:0;left:auto;bottom:0}
.thumb-3 .thumb-copy{font-size:clamp(22px,2.5vw,36px);width:74%;line-height:1.5}
.thumb-3 .photo-preview{width:42%;height:83%;right:-3%}
/* 05: explain the selection and show full labels inside framed buttons. */
.strength-picker{min-width:0;max-width:490px;margin:22px 0 0;padding:12px;border:1px solid #b3cce3;border-radius:12px;background:#ffffffa8}
.strength-picker legend{font-size:13px;font-weight:700;padding:0 7px;letter-spacing:0}
.picker-help{font-size:11px;line-height:1.7;color:#4f6580;margin:0}
.hero .strength-picker .strength-choices{margin:11px 0 0;gap:8px}
.hero .strength-picker .strength-choices button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;white-space:normal;min-height:92px;border:1.5px solid #17385c;border-top-width:5px;border-radius:8px;box-shadow:0 3px 0 #17385c;padding:9px 5px;background:#fffdf3}
.hero .strength-picker .strength-choices button:nth-child(1){border-top-color:#e3bd39;background:#fffbeb}.hero .strength-picker .strength-choices button:nth-child(2){border-top-color:#5db6a7;background:#eefaf6}.hero .strength-picker .strength-choices button:nth-child(3){border-top-color:#dd9987;background:#fff2ee}
.hero .strength-picker .choice-long{display:block;font:700 14px/1.4 var(--sans);letter-spacing:0;color:var(--ink)}
.hero .strength-picker .choice-action{font:500 10px/1.4 var(--sans);opacity:1;color:#4f6580}
.hero .strength-picker button[aria-pressed=true]{background:#dce9ff;outline:2px solid #245de9;outline-offset:2px;box-shadow:none;transform:translateY(3px)}
.hero .strength-picker button[aria-pressed=true]:after{display:none}
@media(min-width:651px) and (max-height:800px){
 .event-phone-panel{height:188px;width:125px;padding:29px 11px 12px;left:10%;border-width:3px}.event-phone-panel strong{font-size:14px;margin-top:9px}.plan-lines{margin-top:11px;gap:5px}.plan-lines i{height:6px}.phone-home{bottom:6px}
 .event-chat-card{width:215px;padding:12px 17px}.event-chat-card>strong{font-size:16px}.event-plan-card{width:98px;height:110px;right:6%;padding:10px}.event-plan-card>i{font-size:29px}
}
@media(min-width:651px) and (max-width:1000px){
 .restored-poster .rhythm-listen{height:145px}.restored-poster .rhythm-cheer{height:135px}
 .hero .strength-picker .choice-long{font-size:12px}.strength-picker{padding:10px}.strength-picker legend{font-size:12px}
}
@media(max-width:650px){
 .concept-1 .hero .role,.concept-2 .hero .role,.concept-4 .hero .role{font-size:14px}
 .hero .paper-event>.event-people{width:82%;left:14%}
 .hero .paper-event .photo-man{height:104%;width:56%;left:0;bottom:-4%}.hero .paper-event .photo-woman{height:100%;width:56%;right:0;bottom:-4%}
 .paper-backdrop{inset:12% 0 0;border-bottom-width:6px;border-radius:85px 85px 20px 20px}
 .event-phone-panel{width:82px;height:145px;left:1%;bottom:5%;padding:25px 7px 12px;border-width:2px;border-radius:15px;box-shadow:4px 4px 0 #bfd1f0}.phone-speaker{width:24px;height:3px;left:calc(50% - 12px);top:9px}.phone-tag{font-size:5px;letter-spacing:.3px}.event-phone-panel strong{font-size:11px;line-height:1.5;margin-top:9px}.plan-lines{margin-top:10px;gap:5px}.plan-lines i{height:4px}.phone-home{width:6px;height:6px;border-width:1px;left:calc(50% - 3px);bottom:6px}
 .event-chat-card{left:29%;width:49%;padding:10px 12px 11px;border-width:1.5px;border-radius:4px 16px 16px 16px;box-shadow:3px 3px 0 #d79474}.event-chat-card:before{width:16px;height:16px;top:-10px;left:17px;border-width:1.5px}.event-chat-card>span{font-size:7px;letter-spacing:.7px}.event-chat-card>strong{font-size:12px;line-height:1.4;margin-top:3px}.event-chat-card>i{font-size:21px;bottom:12px;right:10px}
 .event-plan-card{width:61px;height:83px;right:0;bottom:5%;padding:8px 6px;border-width:1.5px;border-radius:9px;box-shadow:3px 3px 0 #78b9ad}.event-plan-card>span{font-size:5px;letter-spacing:.4px}.event-plan-card>i{font-size:24px}.event-plan-card>b{height:3px;margin-top:4px}
 .paper-spark{font-size:25px;right:3%;top:-1%}
 .concept-3 .restored-poster{display:block;margin:45px 0 25px;min-height:0;padding:0}
 .restored-poster .type-line.first .rhythm-heading{font-size:12.2vw;line-height:1.2;letter-spacing:-.1em}
 .restored-poster .type-line.second{display:block;margin-top:23px;padding-bottom:15px}
 .restored-poster .poster-title{display:block;white-space:normal}
 .restored-poster .poster-title .achieved{font-size:clamp(40px,12.3vw,72px);display:block;width:max-content}
 .restored-poster .poster-title .more{font-size:clamp(36px,10.4vw,66px);display:block;margin-top:23px;letter-spacing:-.08em}
 .restored-poster .rhythm-listen{width:24%;height:115px;right:-4%;bottom:-3px}
 .restored-poster .rhythm-cheer{width:31%;height:155px;right:-2%;bottom:-5px}
 .concept-4 .hero .connect-art{height:auto;min-height:245px;aspect-ratio:1.2}
 .concept-4 .hero-foot{padding-top:24px}
 .strength-picker{max-width:none;padding:11px 9px 12px;margin-top:18px}.strength-picker legend{font-size:12px;padding:0 5px}.picker-help{font-size:10px;line-height:1.65}
 .hero .strength-picker .choice-long{font-size:13px}.hero .strength-picker .strength-choices{gap:8px;margin-top:10px}.hero .strength-picker .strength-choices button{min-height:87px;padding:8px 4px;gap:5px}.hero .strength-picker .choice-action{font-size:9px}
 .thumb-3 .thumb-copy{font-size:28px}
}
@media(max-width:360px){
 .concept-1 .hero .role,.concept-2 .hero .role,.concept-4 .hero .role{font-size:13px}
 .event-phone-panel{width:70px;height:133px;padding-left:5px;padding-right:5px}.event-phone-panel strong{font-size:10px}.event-chat-card{left:26%;width:51%;padding:9px 10px}.event-chat-card>strong{font-size:11px}.event-chat-card>i{right:7px;font-size:18px}.event-plan-card{width:52px;height:74px;padding:7px 5px}
 .hero .strength-picker .choice-long{font-size:12px}.hero .strength-picker .choice-action{font-size:8px}.hero .strength-picker .strength-choices{gap:6px}.strength-picker legend{font-size:11px}
 .thumb-3 .thumb-copy{font-size:24px}
}
@media(max-width:650px){.event-phone-panel strong{font-size:10px;white-space:nowrap}}
@media(max-width:360px){.event-phone-panel strong{font-size:9px}}
