/* Homepage presentation and the complete, authentic character collection. */
:root{--paper:#faf9f5;--line:#e2e5de;--gold:#dec18a;--muted:#5b6d70}
body{background:radial-gradient(ellipse at 90% 6%,#e6eeea80,transparent 28%),var(--paper)}
.header{padding:24px 0;border-bottom:1px solid #14323c10}.nav-login{border-radius:30px}.button{border-radius:40px;padding:17px 27px}.gold{background:#133c41;color:#fff;box-shadow:0 8px 22px #14323c14}.gold:hover{background:#23575b}.text-link{gap:8px}.eyebrow{font-size:11px;letter-spacing:.2em;color:#8c713d}
.hero{gap:45px;padding-top:58px;padding-bottom:68px;grid-template-columns:1.04fr 1fr}.hero h1{font-size:clamp(40px,4.3vw,61px);line-height:1.55;letter-spacing:.025em}.hero h1 span{color:#9b7839}.hero .eyebrow:before{content:"";display:inline-block;width:26px;height:1px;background:#9b7839;vertical-align:middle;margin-right:12px}.hero-lead{font-size:15px}.hero .actions{gap:10px 23px}.hero .hero-note{font-size:11px;max-width:400px}
.hero-showcase{position:relative;isolation:isolate;min-width:0;height:555px;background:linear-gradient(145deg,#e9efe8,#dce9e5 62%,#d1e2dd);border:1px solid #dce6dd;border-radius:28px;overflow:hidden;box-shadow:0 24px 55px -28px #23493d35}
.showcase-top{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:2;padding:25px}.showcase-brand{font:10px Georgia,serif;letter-spacing:.12em;max-width:125px;line-height:1.7;color:#3d615c}.lineup-count{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.07em;background:#ffffffa8;border:1px solid #fff;padding:8px 10px;border-radius:40px}.lineup-count b{font:22px Georgia,serif}.lineup-count>span{font-size:16px;margin-left:4px}
.showcase-orbit{position:absolute;width:440px;height:440px;left:50%;top:80px;transform:translateX(-50%);border:1px solid #fff9;border-radius:50%;background:radial-gradient(circle,#fbfaf18c 0,transparent 65%);z-index:-1}.showcase-orbit:after{content:"";position:absolute;inset:30px;border:1px solid #fff7;border-radius:50%}
.showcase-greeting{position:relative;margin:4px auto 0;width:max-content;max-width:90%;padding:13px 24px 13px 36px;background:#fff;border-radius:17px 17px 17px 2px;box-shadow:0 10px 30px #28433a0b;font-size:13px;line-height:1.8;z-index:3;transform:rotate(-2deg)}.showcase-greeting strong{font-size:14px;font-weight:600}.greeting-dot{position:absolute;width:7px;height:7px;background:#719a82;left:20px;top:22px;border-radius:50%}
.showcase-cast{position:absolute;inset:175px 12px 100px;z-index:2;display:flex;align-items:flex-end;justify-content:center}.showcase-cast img{position:absolute;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 13px 9px #24493715)}.cast-center{height:100%;width:31%;left:35%;bottom:4px;z-index:2}.cast-blue{height:77%;width:39%;left:1%;bottom:0;transform:rotate(-5deg)}.cast-pink{height:76%;width:40%;right:0;bottom:0;transform:rotate(5deg)}.showcase-floor{position:absolute;bottom:87px;left:8%;width:84%;height:30px;border-radius:50%;background:#2d5e4410;filter:blur(7px)}
.showcase-bottom{position:absolute;bottom:0;left:0;right:0;padding:23px 27px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffffa0;background:#ffffff4a}.showcase-bottom span{font-size:9px;letter-spacing:.19em;color:#5c7970}.showcase-bottom p{font-size:14px;margin:6px 0 0;font-weight:600}.showcase-bottom>a{display:grid;place-items:center;width:40px;height:40px;background:var(--navy);color:white;border-radius:50%;font-size:23px}
.benefit-strip{background:#fff9;padding:23px 0;border-color:#dce4dc}.benefit-strip .wrap{justify-content:space-between}.benefit-strip span{display:flex;align-items:center;gap:9px;font-size:13px;color:#526b66}.benefit-strip span:before{display:none}.benefit-strip b{font:31px Georgia,serif;color:var(--navy);margin-right:3px}
.character-section{padding-top:85px;padding-bottom:80px}.character-heading{align-items:flex-end;margin-bottom:29px}.character-heading h2{font-size:38px;line-height:1.65;margin-bottom:0}.character-intro{max-width:400px}.collection-label{font:10px Georgia,serif;letter-spacing:.15em;color:#8b713f}.character-intro p{font-size:14px;color:var(--muted);margin:14px 0 0}.character-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:35px 0 22px}.character-filters{display:flex;gap:8px;flex-wrap:wrap}.character-filters[hidden]{display:none}.character-filters button{border:1px solid #dce2da;background:transparent;border-radius:30px;font-size:12px;padding:10px 17px;cursor:pointer;transition:background .2s,color .2s}.character-filters button:hover{background:#e8eeea}.character-filters button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}.character-filters span{font-size:10px;margin-left:6px;opacity:.7}.character-result{font-size:11px;color:var(--muted);white-space:nowrap}
.cast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.cast-card{border:1px solid #e3e7df;border-radius:18px;overflow:hidden;background:#fff;min-width:0;transition:transform .25s,box-shadow .25s}.cast-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #173c3010}.cast-card[hidden]{display:none}.cast-card-art{position:relative;height:272px;background:radial-gradient(ellipse at 50% 45%,#ffffffc0,transparent 67%),#e9eef1;padding:40px 22px 20px;isolation:isolate}.cast-card-art:after{content:"";position:absolute;width:65%;height:17px;left:17.5%;bottom:11px;background:#374d4210;border-radius:50%;filter:blur(5px);z-index:-1}.cast-card-art img{height:100%;width:100%;object-fit:contain;object-position:center bottom;transition:transform .3s}.cast-card:hover img{transform:scale(1.035)}.cast-index{position:absolute;top:15px;left:17px;font:12px Georgia,serif;letter-spacing:.05em;color:#647d79}.cast-new{position:absolute;right:13px;top:13px;color:#386d62;font-size:9px;font-weight:700;letter-spacing:.1em;background:#fff9;border:1px solid #fff;border-radius:15px;padding:5px 9px}
.tone-cat-robot-blue .cast-card-art{background:radial-gradient(ellipse at center,#fff9,transparent 70%),#e0edf6}.tone-cat-robot-pink .cast-card-art{background:radial-gradient(ellipse at center,#fff9,transparent 70%),#f6e6ec}.tone-japanese .cast-card-art{background:radial-gradient(ellipse at center,#fff9,transparent 70%),#e9ebdf}.tone-blue-machiya-clerk-female .cast-card-art{background:radial-gradient(ellipse at center,#fff9,transparent 70%),#f1e9e0}.tone-concierge .cast-card-art{background:radial-gradient(ellipse at center,#fff9,transparent 70%),#e8e5de}.cast-card-copy{padding:19px 19px 22px}.cast-card-copy .cast-variant{font-size:11px;color:#8d784e;letter-spacing:.04em;margin:0 0 5px}.cast-card-copy h3{font-size:17px;margin:0 0 8px;line-height:1.5}.cast-card-copy>p:last-child{font-size:12px;color:var(--muted);margin:0;line-height:1.8}
.character-personality{margin-top:30px;display:flex;align-items:center;gap:22px;padding:25px 30px;border:1px solid #dfe4da;background:#eff2eb;border-radius:15px}.personality-mark{font:31px Georgia,serif;position:relative;color:#648273;background:#ffffffb0;border-radius:50%;width:65px;height:65px;display:grid;place-items:center;flex:none}.personality-mark span{position:absolute;right:3px;top:2px;color:#a3874b;font-size:20px}.character-personality h3{font-size:17px;margin-bottom:8px}.character-personality p{font-size:13px;color:var(--muted);margin:0}.character-personality>a{margin-left:auto;white-space:nowrap;font-size:12px}
.updates{border-top:1px solid var(--line);padding-top:65px}.updates-grid{gap:20px}.update-item{border:1px solid var(--line);border-radius:15px;background:#fff;padding:26px}.update-item h3{font-size:18px}.update-item p{font-size:14px}.update-meta span{border-radius:20px;font-size:10px}.update-item .text-link{font-size:12px}.updates-heading h2{font-size:29px}.conversation-example{border-radius:22px;box-shadow:0 18px 50px #28413508}.feature-section{background:radial-gradient(ellipse at 0 0,#214940,transparent 65%),#102f34}.feature-grid{gap:22px;margin-top:35px}.feature{padding:28px;border:1px solid #ffffff1e;border-radius:15px;background:#ffffff04}.feature h3{font-size:21px}.feature p{font-size:14px;max-width:none}.feature .tags span{font-size:11px;border-radius:25px}.feature-learning{gap:35px;background:#ffffff08;margin-top:0}.price-card{border-radius:22px;box-shadow:0 20px 50px #21382a09}.trial-note{border-radius:12px}.steps li{border-radius:12px;background:#ffffff80;border:1px solid #dce4d9;padding:23px}.steps li>span{font-size:32px}.closing{background:radial-gradient(ellipse at 50% 0,#315447,transparent 75%),var(--navy)}.closing .gold{background:var(--gold);color:var(--navy)}.closing .gold:hover{background:#eace9c}
@media(min-width:761px) and (max-width:1120px){.hero{gap:25px}.hero-showcase{height:520px}.showcase-top{padding:20px}.showcase-cast{inset:175px 7px 100px}.hero h1{font-size:43px}.cast-grid{gap:16px}.cast-card-art{height:240px;padding:38px 15px 17px}.cast-card-copy{padding:15px 12px}.cast-card-copy h3{font-size:15px}.character-toolbar{align-items:flex-start}.character-result{display:none}.character-personality{flex-wrap:wrap}.character-personality>a{margin-left:87px}.character-heading h2{font-size:33px}}
@media(max-width:760px){.header{padding:17px 0}.hero{grid-template-columns:1fr;padding:36px 0 35px;gap:25px}.hero h1{font-size:clamp(35px,8.5vw,52px);margin-bottom:19px}.hero .eyebrow{font-size:10px;margin-bottom:18px}.hero-lead{font-size:14px}.hero .actions{margin-top:24px}.hero .button{padding:15px 22px}.hero .text-link{font-size:12px}.hero .hero-note{font-size:10px;margin-bottom:0}.hero-showcase{height:470px;width:100%;max-width:460px;margin:auto;border-radius:23px}.showcase-top{padding:18px 20px}.showcase-greeting{margin-top:0;padding:10px 17px 10px 31px;font-size:12px}.showcase-greeting strong{font-size:13px}.greeting-dot{left:16px;top:19px}.showcase-cast{inset:158px 10px 88px}.showcase-bottom{padding:17px 20px}.showcase-bottom p{font-size:13px}.showcase-orbit{width:360px;height:360px;top:67px}.benefit-strip{padding:18px 0}.benefit-strip .wrap{flex-direction:row;gap:7px}.benefit-strip span{display:block;text-align:center;font-size:10px;letter-spacing:0;flex:1;line-height:1.6}.benefit-strip b{display:block;font-size:26px;margin:0 0 2px}.character-section{padding:55px 0}.character-heading h2{font-size:29px}.character-intro{margin-top:21px}.character-intro p{font-size:13px;margin-top:10px}.character-intro br{display:none}.character-toolbar{margin:24px 0 18px;display:block}.character-filters{gap:7px}.character-filters button{padding:9px 12px;font-size:11px}.character-result{display:block;margin-top:14px;font-size:10px}.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cast-card{border-radius:13px}.cast-card-art{height:205px;padding:34px 13px 14px}.cast-index{top:12px;left:12px;font-size:10px}.cast-new{right:9px;top:9px;font-size:8px;padding:4px 6px}.cast-card-copy{padding:14px 11px 17px}.cast-card-copy h3{font-size:14px;line-height:1.65;margin-bottom:5px}.cast-card-copy .cast-variant{font-size:10px}.cast-card-copy>p:last-child{font-size:11px}.character-personality{margin-top:20px;padding:22px 19px;gap:16px;flex-wrap:wrap}.personality-mark{width:45px;height:45px;font-size:23px}.character-personality>div:nth-child(2){flex:1;min-width:180px}.character-personality h3{font-size:15px;line-height:1.75}.character-personality p{font-size:12px}.character-personality>a{margin-left:0}.updates{padding-top:45px}.updates-grid{gap:15px}.update-item{padding:22px}.updates-heading h2{font-size:26px}.feature-grid{gap:16px}.feature{padding:23px}.feature h3{font-size:20px}.feature p{font-size:14px}.feature-learning{gap:12px}.steps{gap:12px}.steps li{padding:17px}.steps h3{font-size:16px}.steps p{font-size:13px}.closing{padding:55px 0}}
@media(max-width:360px){.cast-card-art{height:175px;padding:30px 10px 14px}.cast-card-copy h3{font-size:12px}.cast-card-copy>p:last-child{font-size:10px}.hero-showcase{height:440px}.showcase-cast{inset:158px 7px 88px}.showcase-brand{font-size:8px}.lineup-count{font-size:8px}.showcase-bottom p{font-size:12px}.character-filters button{padding:8px 10px}.character-heading h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.cast-card,.cast-card-art img{transition:none}.cast-card:hover,.cast-card:hover img{transform:none}}
