.feature .icon{display:none}.feature .text-link{margin-top:auto}.feature .num{font-size:12px}
.feature:nth-child(2){background:#e5f7f2}.feature:nth-child(4){background:#fff0d4}.feature:nth-child(5){background:#ffe9e0}.feature:nth-child(6){background:#e8eeff}
.chapter-art{width:100%;height:280px;object-fit:cover;object-position:center 62%;border-radius:24px;margin:8px 0 22px}
.faq-art{width:100%;max-width:450px;height:230px;object-fit:cover;border-radius:24px;margin-top:24px}
.partner-strip>img{width:150px;height:110px;object-fit:cover;border-radius:18px}.partner-strip>div{flex:1}
.detail-art{width:100%;height:200px;object-fit:cover;border-radius:14px;margin-bottom:25px}
.catalog-art{width:72px;height:60px;object-fit:cover;border-radius:12px;flex-shrink:0}.catalog-list button{align-items:center}.catalog-list button>span:first-of-type{flex:1}
.service-item .text-link::before{content:'';display:inline-block;vertical-align:middle;width:44px;height:38px;border-radius:10px;margin-right:8px;background:url('/site-assets/records.webp') center/cover}.service-item:nth-child(2) .text-link::before{background-image:url('/site-assets/services.webp')}.service-item:nth-child(3) .text-link::before{background-image:url('/site-assets/daily.webp')}.service-item:nth-child(4) .text-link::before{background-image:url('/site-assets/welcome.webp')}
.feature-page{max-width:1150px;margin:auto;padding:60px 28px}.feature-page-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.feature-page h1{font-size:clamp(36px,5vw,60px)}.feature-page p,.feature-page li{font-size:17px;line-height:1.7}.feature-page-hero{width:100%;border-radius:28px;position:sticky;top:120px}.feature-page .actions{margin:28px 0}.feature-back{display:inline-block;margin-bottom:30px}.feature-page .fine{font-size:14px}.feature-footer{margin-top:55px;border-top:1px solid #dfd3e9;padding-top:24px;display:flex;flex-wrap:wrap;gap:24px}.legal-pawqi-brand{display:flex;align-items:center;gap:20px;margin:0 0 24px}.legal-pawqi-brand img{width:100px;border-radius:16px}
@media(max-width:760px){.feature-art{width:calc(100% + 34px);height:135px;margin:-22px -17px 18px}.chapter-art{height:190px}.faq-art{max-width:320px;height:180px}.partner-strip>img{width:130px;height:90px;margin-bottom:18px}.feature-page-layout{grid-template-columns:1fr;gap:24px}.feature-page-hero{position:static;grid-row:1;height:230px;object-fit:cover}.feature-page{padding:30px 23px}.detail-art{height:170px}}
.public-main{max-width:1200px;margin:auto;padding:45px 24px}.public-header nav{display:flex;gap:22px}.public-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:45px;align-items:center;margin-bottom:50px}.public-hero h1{font-size:clamp(34px,4.6vw,60px);line-height:1.12}.public-hero p{font-size:19px;line-height:1.7}.public-hero img{width:100%;border-radius:28px}.reading{max-width:760px;margin:0 auto}.reading section{margin:38px 0}.reading h2{font-size:28px}.reading p,.reading li,.story-intro p{font-size:18px;line-height:1.85}.story-intro{max-width:820px;margin:35px auto}.public-footer{display:flex;gap:24px;flex-wrap:wrap;padding:35px max(24px,8vw);background:#f7f2fd}.public-footer p{width:100%;font-size:14px}.knowledge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:28px 0}.knowledge-card{display:block;border:1px solid #dfd3e9;border-radius:22px;padding:28px;text-decoration:none;background:#fffaf0}.knowledge-card h2{font-size:27px}.knowledge-card p{line-height:1.6}.knowledge-card:hover{border-color:#6935ce;background:#f5edff}.breed-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.breed-list a{padding:14px;border-bottom:1px solid #dfd3e9}.breed-list small{display:block;color:#655873}#knowledge-search{display:block;width:100%;padding:15px;border:1px solid #9c8eb0;border-radius:12px;font:inherit;margin-top:10px}#breed-species{padding:10px;font:inherit;margin-left:10px}#breeds{margin-top:55px}[hidden]{display:none!important}.website-next{background:#fff7e6;border-radius:20px;padding:25px;margin-top:25px}.app-choice{margin-top:35px;padding-top:22px;border-top:1px solid #dfd3e9}.app-choice h2{font-size:23px}.app-choice p{font-size:15px}
@media(max-width:760px){.public-header{flex-wrap:wrap;gap:14px}.public-header nav{display:flex;order:3;width:100%;justify-content:center;font-size:14px}.public-header .brand img{max-width:150px}.public-header>a.text-link{font-size:13px}.public-hero{grid-template-columns:1fr;gap:20px}.public-hero img{max-height:240px;object-fit:cover}.knowledge-grid{grid-template-columns:1fr}.breed-list{grid-template-columns:repeat(2,minmax(0,1fr))}.public-main{padding-top:30px}.reading h2{font-size:25px}}
.public-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}.public-hero>div{min-width:0}.public-hero>img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;justify-self:center;border-radius:24px}.public-hero .breed-portrait{min-width:0;margin:0;align-self:center}.breed-portrait img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:24px;background:#f8f5ed}.breed-portrait figcaption{font-size:12px;color:#665875;text-align:center;margin-top:10px}.illustrated-copy,.breed-reading,.knowledge-card{position:relative;isolation:isolate;overflow:hidden}.illustrated-copy{padding:28px;border-radius:22px;background:#faf7ff}.illustrated-copy:before,.breed-reading:before,.knowledge-card:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#fff 20%,#ffffffa6),url('/site-assets/daily.webp') right center/auto 100% no-repeat;opacity:.15}.illustrated-copy:nth-child(3n+2):before{background-image:linear-gradient(90deg,#fff 20%,#ffffffa6),url('/site-assets/records.webp')}.illustrated-copy:nth-child(3n):before{background-image:linear-gradient(90deg,#fff 20%,#ffffffa6),url('/site-assets/pet-family.webp')}.knowledge-card:before{background-image:linear-gradient(90deg,#fff 20%,#ffffffa6),url('/site-assets/knowledge.webp');opacity:.12}.breed-reading{padding:30px;border-radius:24px;background:#faf7ff}.breed-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end;padding:22px;background:#f5efff;border-radius:20px}.breed-controls label{display:block;font-weight:600;margin-bottom:8px}#breed-search{width:100%;padding:13px 15px;border:1px solid #9c8eb0;border-radius:10px;font:inherit}#breed-species{margin:0;border-radius:10px;max-width:100%}#breed-count{grid-column:1/-1;margin:0;font-size:14px}.breed-list a{display:flex;align-items:center;gap:15px;padding:12px;border:1px solid #e1d8e9;border-radius:16px;text-decoration:none;min-width:0}.breed-list a:hover{background:#f5efff;border-color:#8252c5}.breed-list img{width:100px;height:90px;object-fit:contain;background:#faf7f0;border-radius:12px;flex-shrink:0}.breed-list span{min-width:0;overflow-wrap:anywhere}.breed-list small{margin-top:5px}#breeds,#guides{scroll-margin-top:145px}
@media(max-width:760px){.public-hero{grid-template-columns:minmax(0,1fr)}.public-hero>img{height:auto;max-height:260px;object-fit:contain}.breed-portrait img{height:auto;max-height:320px}.illustrated-copy,.breed-reading{padding:22px}.breed-controls{grid-template-columns:minmax(0,1fr)}.breed-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.breed-list a{flex-direction:column;align-items:stretch;font-size:14px}.breed-list img{width:100%;height:130px}.breed-list span{padding:0 4px 4px}#breeds,#guides{scroll-margin-top:175px}}
.feature{overflow:hidden;display:flex;flex-direction:column;border:1px solid #e9dbf1;box-shadow:0 8px 24px #50357809}
.feature-art{width:calc(100% + 60px);max-width:none;height:180px;object-fit:cover;margin:-30px -30px 24px}

@media(max-width:760px){.public-header{height:auto;min-height:79px;padding:15px 20px;row-gap:14px}.public-header nav{position:static;inset:auto;padding:0;border:0;min-width:0;flex-wrap:wrap}.public-header .brand{flex-shrink:0}}

/* Keep labels and controls on a shared baseline at every viewport. */
.breed-controls{grid-template-columns:minmax(0,1fr) 210px;align-items:start;margin:24px 0}.breed-controls>div{min-width:0}.breed-controls label{line-height:1.5;margin:0 0 8px}.breed-controls input,.breed-controls select{display:block;box-sizing:border-box;width:100%;min-width:0;height:52px;margin:0!important;padding:12px 14px!important;border:1px solid #9c8eb0;border-radius:10px;background:white;color:#302044;font:inherit;line-height:1.4}.breed-list a{align-items:center;min-height:118px}.breed-list img{display:block;width:104px;height:92px;object-fit:contain;object-position:center}.breed-portrait{width:100%;max-width:460px;justify-self:center}.breed-portrait img{aspect-ratio:1 / 1;height:auto;max-height:420px;object-fit:contain}.public-hero>img{aspect-ratio:3 / 2;height:auto;object-fit:contain}
@media(max-width:760px){.breed-controls{grid-template-columns:minmax(0,1fr);padding:18px;gap:18px}.breed-list img{width:100%;height:150px}.breed-list a{align-items:stretch}.breed-portrait{max-width:360px}.breed-portrait img{max-height:320px}}

.service-next,.availability-panel{padding:28px;border-radius:24px;background:#f2eaff;margin:35px 0;scroll-margin-top:150px}.service-next h2,.availability-panel h2{font-size:30px}.service-next p,.availability-panel p{line-height:1.7}.service-cta{display:block;margin-top:16px;color:#6531ba;font-weight:600}.availability-note{padding:22px;border-radius:18px;background:#fff3d8;line-height:1.7}.partner-card{padding:22px;border:1px solid #daccE8;border-radius:18px;background:white}.availability-panel input{display:block;max-width:100%;width:100%;padding:14px;border:1px solid #937baa;border-radius:12px;font:inherit;margin-top:10px}@media(max-width:760px){.service-next,.availability-panel{padding:22px}.service-next h2,.availability-panel h2{font-size:25px}}

.demo-banner{padding:20px 24px;margin:24px 0;border:2px solid #d29f41;border-radius:18px;background:#fff4d9;color:#423016}.demo-banner p{margin:8px 0 0;line-height:1.5}.demo-entry{padding:28px;background:#f1e8ff;border-radius:24px;margin:30px 0}.demo-entry h2{font-size:30px}.demo-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.demo-fields label{font-weight:bold}.demo-fields select{display:block;width:100%;height:52px;padding:12px;margin-top:10px;border:1px solid #997db4;border-radius:10px;background:white;font:inherit}#demo-review p,#demo-done p{overflow-wrap:anywhere}@media(max-width:760px){.demo-fields{grid-template-columns:1fr}.demo-entry{padding:22px}}
/* Public discovery: concrete features, consistent artwork and a quiet AI entry. */
.hero-copy h1{font-size:clamp(38px,4.5vw,70px);line-height:1.06}.hero-copy>p{max-width:480px}.core-section .section-heading h2{font-size:clamp(34px,4vw,58px)}.feature-state{font-size:12px;line-height:1.5;color:#624b7d;display:block;margin-bottom:14px}.core-section .feature h3{font-size:26px;line-height:1.2}.core-section .feature{gap:0}.core-sublinks{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:18px;font-size:14px}.more-core{margin-top:36px}.more-core h3{font-size:25px}.core-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.core-mini{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid #e6dcef;border-radius:20px;text-decoration:none;background:#fffaf2}.core-mini:nth-child(even){background:#eef8f3}.core-mini img{width:96px;height:88px;object-fit:cover;border-radius:14px}.core-mini strong,.core-mini small,.core-mini span>span{display:block}.core-mini small{margin:6px 0;color:#685b76;line-height:1.5}.core-mini span>span{font-size:14px;color:#6834c8}.core-roadmap{margin-top:25px;padding:20px 24px;background:#f7f3fa;border-radius:18px}.core-roadmap summary{font-weight:600;cursor:pointer}.core-roadmap li{line-height:1.7;margin:12px 0}.core-all{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:30px}.ask-section{max-width:1200px;margin:0 auto 65px;padding:38px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:42px;border:1px solid #ded1ed;border-radius:30px;background:linear-gradient(120deg,#f1eaff,#fff6e6)}.ask-intro>img{width:100%;max-height:200px;object-fit:contain;border-radius:22px;margin-bottom:20px}.ask-intro h2{font-size:45px;margin:12px 0}.ask-intro p{line-height:1.7}.ask-box{min-width:0;background:#fff;border-radius:22px;padding:26px}.ask-box label{font-weight:600;display:block;margin-bottom:12px}.ask-box textarea{box-sizing:border-box;width:100%;resize:vertical;min-height:105px;padding:16px;border:1px solid #9e8cb4;border-radius:14px;font:inherit;color:inherit}.ask-box .fine{font-size:12px;line-height:1.6}.ask-prompts{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.ask-prompts button{font:inherit;font-size:13px;padding:9px 12px;border:1px solid #d8cbe7;border-radius:16px;background:#faf7ff;color:#553289;cursor:pointer;text-align:left}.ask-result{margin:18px 0;padding:20px;border-radius:16px;background:#f1faf6;outline-offset:4px}.ask-result #ask-answer{white-space:pre-line;font-size:16px;line-height:1.75}.ask-result .actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.ask-box button:disabled{opacity:.65;cursor:wait}#ask-status{line-height:1.6;font-size:15px}.ask-page-heading{font-size:clamp(30px,4vw,48px);text-align:center;margin-bottom:32px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}.directory-card{border:1px solid #ded1ed;border-radius:22px;overflow:hidden;background:#fffaf4}.directory-card>img{display:block;width:100%;height:160px;object-fit:cover}.directory-card>div{padding:22px}.directory-card h2{font-size:24px;font-weight:600;line-height:1.25;font-family:inherit}.directory-card p{line-height:1.6}.directory-card a{display:inline-block;margin-top:10px}.directory-card:hover,.core-mini:hover{border-color:#7849bd}#directory-search,#directory-filter{width:100%;min-height:52px;padding:12px;font:inherit;border:1px solid #a592bb;border-radius:12px;background:white;box-sizing:border-box}.header nav{gap:20px}
@media(max-width:1000px){.ask-section{margin:0 24px 45px;padding:26px;gap:25px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header nav{gap:13px}.header .header-actions{gap:12px}}
@media(max-width:760px){.core-mini-grid,.directory-grid{grid-template-columns:1fr}.ask-section{grid-template-columns:1fr;padding:20px;margin:0 18px 40px;gap:12px}.public-main .ask-section{margin:0}.ask-intro>img{height:100px;width:110px;float:right;margin:0 0 12px 12px}.ask-intro h2{font-size:34px}.ask-intro .eyebrow{font-size:10px}.ask-box{padding:18px;clear:both}.ask-box .button{width:100%}.core-section .feature h3{font-size:24px}.core-mini{padding:15px}.core-mini img{width:78px;height:78px}.core-all{align-items:stretch;flex-direction:column;text-align:center}.core-roadmap{padding:18px}.hero-copy h1{font-size:42px}.directory-card>img{height:170px}}
/* Beagle companion states and readable, full-width answers. */
.ask-companion{align-items:start}.ask-companion .beagle-welcome{width:180px;height:180px;object-fit:contain;border-radius:50%;background:#fff7e8;display:block;margin:0 auto 22px;float:none}.ask-submit-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.ask-feedback{display:flex;gap:18px;align-items:center;margin:20px 0;background:#fff7e8;border-radius:20px;padding:12px 18px}.ask-feedback>img{width:88px;height:88px;object-fit:contain;flex:none}.ask-feedback #ask-status{margin:0;line-height:1.6}.is-thinking>img{animation:beagle-think 2.4s ease-in-out infinite;transform-origin:bottom center}.thinking-dots{display:flex;gap:5px;margin-top:10px}.thinking-dots i{width:6px;height:6px;background:#7b4ac2;border-radius:50%;animation:beagle-dot 1.4s ease-in-out infinite}.thinking-dots i:nth-child(2){animation-delay:.2s}.thinking-dots i:nth-child(3){animation-delay:.4s}.ask-feedback:not(.is-thinking) .thinking-dots{display:none}.serious-feedback>img,.serious-feedback .thinking-dots{display:none}.companion-answer{grid-column:1/-1;width:100%;box-sizing:border-box;background:white;border:1px solid #dfd2ed;border-radius:24px;margin:0;padding:30px clamp(20px,5vw,65px);scroll-margin-top:125px}.answer-welcome{display:flex;align-items:center;gap:20px;margin-bottom:20px}.answer-welcome img{width:94px;height:94px;object-fit:contain;border-radius:50%;background:#fff7e8}.answer-welcome h3{font-size:clamp(25px,3vw,35px);line-height:1.2;margin:0;color:#4d2a80}.companion-answer #ask-answer,.answer-section p{font-size:17px;line-height:1.85;white-space:pre-line}.answer-section{border-top:1px solid #eee6f4;padding-top:20px;margin-top:24px}.answer-section h4,#ask-followups h4,#ask-sources h4{font:600 20px/1.4 system-ui;margin:0 0 10px}.answer-references{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:13px}.answer-references a{overflow-wrap:anywhere}#ask-followups{background:#f5f0fc;padding:22px;border-radius:18px;margin-top:25px}#ask-followups:empty{display:none}#ask-followups li{line-height:1.8;margin:8px 0}.companion-answer #ask-sources{margin:25px 0;font-size:14px;gap:10px}.answer-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:22px}.companion-answer .answer-disclosure{font-size:12px;color:#73637e;line-height:1.6}.ask-companion #ask-form{scroll-margin-top:135px}.serious-answer{border-color:#c9b39f}.ask-companion .ask-box{min-width:0}.ask-companion .ask-intro{position:static}.ask-companion .ask-intro p{margin-bottom:16px}
@keyframes beagle-think{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-4px)}}@keyframes beagle-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
@media(max-width:760px){.ask-companion .ask-intro{position:static}.ask-companion .beagle-welcome{float:right;width:100px;height:100px;margin:0 0 12px 14px}.ask-companion .ask-intro h2{font-size:32px}.companion-answer{padding:20px;scroll-margin-top:130px}.answer-welcome{gap:12px;align-items:center}.answer-welcome img{width:68px;height:68px;flex:none}.answer-welcome h3{font-size:25px}.companion-answer #ask-answer,.answer-section p{font-size:16px}.ask-feedback{gap:10px;padding:12px}.ask-feedback>img{width:65px;height:65px}.answer-actions{align-items:stretch;flex-direction:column}.answer-references{font-size:12px}.companion-answer #ask-sources{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.is-thinking>img,.thinking-dots i{animation:none}}

.page-return{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:0 0 28px;font-size:14px}.page-return a{display:inline-flex;align-items:center;min-height:44px;color:#6034ad;text-decoration:none}.page-return .page-back{padding:8px 18px;border:1px solid #d9cbea;border-radius:999px;background:#faf6ff;font-weight:600}.page-return a:hover{text-decoration:underline}.page-return a:focus-visible{outline:3px solid #7849bd;outline-offset:3px}main:not(.public-main)>.page-return{max-width:1200px;margin:20px auto 0;padding:0 28px}body>.page-return{margin:24px 5%}@media(max-width:600px){.page-return{margin-bottom:18px;gap:14px}main:not(.public-main)>.page-return{padding:0 20px}}

/* Preserve each feature illustration instead of cropping faces and visual jokes. */
.directory-card>img,.core-section .feature-art{aspect-ratio:3/2;height:auto;object-fit:contain}.core-mini img{object-fit:contain;background:#fff8ed}
@media(max-width:760px){.core-section .feature-art{width:calc(100% + 34px);margin:-22px -17px 18px}}@media(max-width:600px){.core-section .features{grid-template-columns:1fr}}
.portal-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center;margin-bottom:28px}.portal-heading img{width:100%;max-height:260px;object-fit:contain;border-radius:24px}.portal-heading h1{font-size:clamp(34px,4vw,54px)}.portal-heading p{font-size:18px;line-height:1.6}.portal-links,.portal-actions,.portal-tabs{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:20px 0}.portal-links{padding:16px 20px;background:#f5efff;border-radius:18px}.portal-links a,.portal-tabs a{color:#5d32b5;font-weight:600}.portal-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;background:#fffaf2;border:1px solid #e5d9ee;padding:26px;border-radius:24px;margin:22px 0}.portal-form label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600;min-width:0}.portal-form input,.portal-form select,.portal-form textarea{width:100%;min-width:0;padding:13px;border:1px solid #ac99c3;border-radius:10px;font:inherit;background:white;color:#251a38;box-sizing:border-box}.portal-form textarea{resize:vertical}.portal-form fieldset,.portal-form .check,.portal-form .location-choice{grid-column:1/-1}.portal-form fieldset{border:1px solid #e2d5ec;border-radius:14px;padding:20px}.category-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.portal-form .check{flex-direction:row;align-items:flex-start;font-weight:400;line-height:1.5}.portal-form .check input{width:20px;height:20px;flex:none;margin:2px 0}.portal-form button[type=submit]{justify-self:start}.portal-callout{padding:20px;background:#fff0cb;border-radius:16px;line-height:1.6}.portal-callout button{margin:8px 14px 0 0}.portal-card{padding:24px;border:1px solid #e5d6ec;border-radius:22px;background:#fffdf8;margin:18px 0}.portal-card h3{font-size:24px}.portal-card p{line-height:1.7;overflow-wrap:anywhere}.portal-card button{margin:12px 12px 0 0}.portal-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portal-gallery img{width:100%;height:190px;object-fit:contain;border-radius:14px;background:#f7f1fc}#partner-portal>section{margin:40px 0;scroll-margin-top:120px}#portal-message{padding:12px 0;color:#245c45;line-height:1.6}#portal-message:empty{display:none}#portal-message.error{color:#9e293b}.portal-tabs a{padding:12px;background:#f4ecff;border-radius:12px}.location-choice .button{margin-right:14px}.partner-invite{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:#f1eaff;border-radius:26px;padding:30px;margin:45px auto}.partner-invite img{width:100%;border-radius:22px}.partner-invite h2{font-size:38px}.public-header nav{flex-wrap:wrap;justify-content:center}@media(max-width:760px){.portal-heading,.partner-invite{grid-template-columns:1fr}.portal-heading img{max-height:210px}.portal-form{grid-template-columns:1fr;padding:18px}.category-checks{grid-template-columns:1fr}.portal-gallery{grid-template-columns:1fr 1fr}.portal-links{gap:14px;font-size:13px}.portal-card{padding:18px}.partner-invite{padding:22px}.portal-form button[type=submit]{width:100%}}
.portal-card h2{font-size:28px;line-height:1.2;margin-bottom:14px}#partner-portal h2{font-size:32px;line-height:1.25}.portal-heading h1{font-size:clamp(34px,4vw,54px);line-height:1.12}.portal-form input[readonly]{background:#f2edf6;color:#5e5369}.portal-card:focus-within{border-color:#9670ce}
.partner-invite img{height:auto;aspect-ratio:3/2;object-fit:contain;display:block}
/* Fit the opening desktop scene into the usable viewport, below the header. */
@media (min-width:1001px) and (min-height:600px){
 .hero{min-height:0;height:calc(100svh - 100px);max-height:860px}
 .hero-image{object-fit:contain;object-position:right bottom}
 .hero-copy{padding:clamp(20px,4svh,48px) 0 clamp(20px,4svh,48px) 6.5%}
 .hero-copy h1{font-size:clamp(34px,min(4.5vw,8svh),70px);margin-bottom:clamp(14px,2.5svh,24px)}
 .hero-copy .eyebrow{margin-bottom:clamp(12px,2.5svh,23px)}
 .hero-copy p{font-size:clamp(14px,2svh,17px);line-height:1.55;margin-bottom:18px}
 .hero-copy .button{padding:12px 18px;font-size:14px}
 .hero-copy .no-login{margin-top:12px}
 .hero-caption{bottom:16px;padding:10px 16px}
}
@media (min-width:1001px) and (min-height:600px){
 .hero-image{left:auto;width:auto;max-width:100%;mask-image:linear-gradient(to right,transparent,#000 16%)}
}

/* Shiro: homepage-only companion. All selectors scoped to avoid page/app styles. */
#shiro{position:fixed;right:20px;bottom:max(18px,env(safe-area-inset-bottom));z-index:90;font:14px/1.45 Arial,sans-serif;color:#251a3c}#shiro [hidden]{display:none!important}#shiro button{font:inherit;cursor:pointer}#shiro button:focus-visible,#shiro a:focus-visible,#shiro textarea:focus-visible{outline:3px solid #188a91;outline-offset:3px}#shiro .shiro-dock{display:flex;align-items:center;flex-direction:column;gap:4px}#shiro .shiro-launch{display:flex;align-items:center;gap:9px;padding:8px 17px 8px 8px;border:1px solid #d9c8f7;border-radius:44px;background:#fff9ed;color:#43247c;box-shadow:0 6px 26px #38206326;text-align:left}#shiro .shiro-launch img{width:56px;height:56px;border-radius:50%;animation:shiro-hello 3s ease-in-out 2}#shiro small{display:block;font-size:11px}#shiro strong{font-size:16px}#shiro .shiro-quiet{border:0;background:#fff;color:#604778;border-radius:12px;font-size:11px;padding:3px 9px}#shiro-panel{position:absolute;right:0;bottom:100px;width:min(400px,calc(100vw - 24px));height:min(600px,calc(100dvh - 135px));background:#fff;border:1px solid #dbcaf5;border-radius:24px;box-shadow:0 16px 60px #251a3c35;display:flex;flex-direction:column;overflow:hidden}#shiro .shiro-head{display:flex;align-items:center;gap:10px;background:linear-gradient(120deg,#eee5ff,#fff1d7);padding:13px}#shiro .shiro-head img{border-radius:50%;width:54px;height:54px;animation:shiro-hello 1s ease-in-out 2}#shiro .shiro-close{margin-left:auto;border:0;background:#fff;border-radius:50%;min-width:36px;height:36px;font-size:25px}#shiro .shiro-messages{flex:1;overflow:auto;overscroll-behavior:contain;min-height:80px;padding:14px}#shiro .shiro-message{background:#f6f1ff;border-radius:14px;padding:12px;margin-bottom:12px;overflow-wrap:anywhere}#shiro .shiro-message p{font:inherit;margin:0 0 10px;white-space:pre-wrap}#shiro .shiro-message p:last-child{margin-bottom:0}#shiro .shiro-message a{display:block;margin-top:8px;color:#6033bb;text-decoration:underline}#shiro .shiro-user{background:#eaf5f1;margin-left:24px}#shiro .shiro-note{font-size:12px!important;color:#655770}#shiro .shiro-shortcuts{display:flex;flex-wrap:wrap;gap:5px;padding:0 12px}#shiro .shiro-shortcuts button{border:1px solid #ddcfef;background:#fff;border-radius:14px;padding:6px;font-size:11px}#shiro .shiro-status{font-size:12px;margin:7px 14px;min-height:17px}#shiro .shiro-form{padding:0 14px}#shiro .shiro-form label{font-size:12px;font-weight:bold}#shiro .shiro-form>div{display:flex;gap:8px;margin-top:5px}#shiro textarea{width:100%;min-width:0;border:1px solid #baa1de;border-radius:12px;padding:10px;font:16px/1.4 Arial,sans-serif;resize:none}#shiro .shiro-form button{background:#6336c5;color:#fff;border:0;border-radius:12px;padding:10px}#shiro button:disabled{opacity:.6;cursor:wait}#shiro .shiro-footer{font-size:11px;padding:9px 14px;color:#675973;background:#fff}#shiro .shiro-footer a{color:#6336c5}#shiro .shiro-reset{border:0;background:none;color:#6336c5;text-decoration:underline;padding:4px 0;display:block}#shiro .shiro-playground{position:absolute;right:0;bottom:100px;width:160px;pointer-events:none;animation:shiro-roam 14s ease-in-out infinite}#shiro .shiro-playground img{display:block;width:112px;height:112px;object-fit:contain;animation:shiro-bounce 1s ease-in-out infinite}#shiro .shiro-bubble{display:block;background:#fff7dc;border:1px solid #ecd29c;border-radius:14px;padding:7px;font-size:12px;text-align:center;margin-bottom:5px}#shiro .shiro-ball{pointer-events:auto;position:absolute;bottom:0;right:7px;border:0;border-radius:50%;background:#c9ec72;color:#788f23;font-size:25px;width:38px;height:38px;animation:shiro-bounce .8s ease-in-out infinite}#shiro[data-state=sniff] .shiro-playground img{animation:shiro-sniff 2s ease-in-out infinite}#shiro[data-state=sleep] .shiro-playground{animation:none}#shiro[data-state=sleep] .shiro-playground img{animation:shiro-breathe 4s ease-in-out infinite}#shiro[data-state=sleep] .shiro-ball,#shiro[data-state=sniff] .shiro-ball{display:none}#shiro.shiro-paused *{animation:none!important}@keyframes shiro-hello{50%{transform:rotate(-8deg)}}@keyframes shiro-bounce{50%{transform:translateY(-7px) rotate(3deg)}}@keyframes shiro-sniff{50%{transform:translateX(-8px) rotate(-7deg)}}@keyframes shiro-roam{50%{transform:translateX(calc(-1 * min(280px,35vw)))}}@keyframes shiro-breathe{50%{transform:scale(1.025)}}@media(max-width:600px){#shiro{right:12px;bottom:max(10px,env(safe-area-inset-bottom))}#shiro .shiro-launch img{width:44px;height:44px}#shiro .shiro-launch strong{font-size:14px}#shiro-panel{bottom:88px}#shiro .shiro-playground{bottom:90px}}@media(prefers-reduced-motion:reduce){#shiro *{animation:none!important}}
/* Character animation v2: frame-by-frame gait, sniff and pounce cycles. */
@font-face{font-family:PawQIComic;src:url('/site-assets/fonts/ComicNeue-Regular.ttf') format('truetype');font-display:swap;font-weight:400}
#shiro{font-family:PawQIComic,'Comic Sans MS','Chalkboard SE',cursive;font-size:16px}#shiro textarea{font-family:inherit}#shiro .shiro-message p{line-height:1.55;color:#332441}#shiro .shiro-message strong{display:block;margin:12px 0 5px}#shiro .shiro-head{position:relative}#shiro .shiro-thought{display:none;position:absolute;top:7px;left:49px;padding:5px;background:white;border-radius:12px;gap:3px}#shiro .shiro-thought i{width:4px;height:4px;background:#8658c6;border-radius:50%;animation:companion-dot 1.2s infinite}#shiro .shiro-thought i:nth-child(2){animation-delay:.2s}#shiro .shiro-thought i:nth-child(3){animation-delay:.4s}#shiro.shiro-thinking .shiro-thought{display:flex}#shiro.shiro-thinking .shiro-head img{animation:companion-think 2.2s ease-in-out infinite}#shiro .shiro-head img{animation:shiro-hello .8s ease-in-out 2}#shiro .shiro-form button{min-width:72px;font-weight:bold}#shiro .shiro-playground{width:170px;animation:none;bottom:103px;--journey:min(260px,40vw)}#shiro .shiro-playground img{width:150px;height:150px;animation:none;object-fit:contain}#shiro .shiro-sprite{display:block;width:150px;height:150px;background-image:url('/site-assets/shiro-walk-v2.webp');background-size:400% 200%;animation:shiro-frames .8s steps(1,end) infinite;transform:scaleX(-1)}#shiro[data-state=walk] .shiro-playground{animation:shiro-walk-out 6s linear forwards}#shiro[data-state=sniff] .shiro-playground{transform:translateX(calc(-1 * var(--journey)))}#shiro[data-state=sniff] .shiro-sprite{background-image:url('/site-assets/shiro-sniff-v2.webp');animation-duration:2.4s}#shiro[data-state=return] .shiro-playground{animation:shiro-walk-home 6s linear forwards}#shiro[data-state=return] .shiro-sprite{transform:none}#shiro[data-state=play] .shiro-sprite,#shiro[data-state=invite] .shiro-sprite{background-image:url('/site-assets/shiro-pounce-v2.webp');animation-duration:2s;transform:none}#shiro[data-state=sleep] .shiro-sprite{display:none}#shiro .shiro-zzz{display:none;position:absolute;right:15px;bottom:70px;color:#7043af;font:bold 24px PawQIComic,cursive}#shiro[data-state=sleep] .shiro-zzz{display:flex}#shiro .shiro-zzz i{font-style:normal;animation:shiro-zz 3s ease-out infinite;opacity:0}#shiro .shiro-zzz i:nth-child(2){animation-delay:1s;font-size:20px}#shiro .shiro-zzz i:nth-child(3){animation-delay:2s;font-size:16px}#shiro[data-state=sleep] .shiro-playground img{animation:shiro-breathe 3.5s ease-in-out infinite;transform-origin:50% 80%}#shiro[data-state=walk] .shiro-ball,#shiro[data-state=return] .shiro-ball{display:none}#shiro .shiro-ball{bottom:8px;background:radial-gradient(circle at 30% 25%,#e3ff96,#95c236);border:2px solid #f8ffe6;color:transparent;animation:none}#shiro.shiro-fetch .shiro-ball{animation:shiro-ball-fetch 1.4s ease-in-out 2}#shiro[data-companion=sunno] .shiro-playground{display:none!important}#shiro .shiro-support-open,#shiro .shiro-support-send{border:1px solid #d2bee8;background:#6235b6;color:#fff;border-radius:12px;padding:10px;margin-top:8px}#shiro .shiro-support{position:absolute;inset:0;background:#fffaf2;z-index:2;overflow:auto;padding:16px;border-radius:23px;font-family:PawQIComic,cursive}#shiro .shiro-support-title{display:flex;align-items:center;justify-content:space-between}#shiro .shiro-support-title button{background:white;border:1px solid #d5c3e9;border-radius:50%;width:36px;height:36px;font-size:24px}#shiro .shiro-support label{display:block;font-size:14px;margin-top:8px}#shiro .shiro-support input:not([type=checkbox]),#shiro .shiro-support textarea{display:block;box-sizing:border-box;width:100%;border:1px solid #bda8d8;border-radius:9px;background:white;color:#251a3c;padding:8px;font:16px PawQIComic,cursive}#shiro .shiro-support-info,#shiro .shiro-support-result{font-size:13px;overflow-wrap:anywhere}#shiro .shiro-consent{display:flex!important;align-items:flex-start;gap:8px}#shiro .shiro-consent input{width:18px;height:18px;flex:none}#shiro .shiro-trap{position:absolute!important;left:-10000px!important}#shiro .shiro-support-send{width:100%}#shiro .shiro-support-result{padding-bottom:10px}@keyframes shiro-frames{0%{background-position:0 0}12.5%{background-position:33.333% 0}25%{background-position:66.667% 0}37.5%{background-position:100% 0}50%{background-position:0 100%}62.5%{background-position:33.333% 100%}75%{background-position:66.667% 100%}87.5%,100%{background-position:100% 100%}}@keyframes shiro-walk-out{from{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--journey)))}}@keyframes shiro-walk-home{from{transform:translateX(calc(-1 * var(--journey)))}to{transform:translateX(0)}}@keyframes shiro-zz{0%{opacity:0;transform:translate(0,0) scale(.65)}25%{opacity:1}100%{opacity:0;transform:translate(20px,-55px) scale(1.2)}}@keyframes companion-dot{50%{transform:translateY(-4px);opacity:.4}}@keyframes companion-think{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes shiro-ball-fetch{0%,100%{transform:translate(0,0) rotate(0)}40%{transform:translate(-75px,-45px) rotate(-180deg)}65%{transform:translate(-35px,0) rotate(-270deg)}}@media(max-width:600px){#shiro .shiro-playground{bottom:94px;--journey: min(150px,32vw)}}@media(prefers-reduced-motion:reduce){#shiro .shiro-thought i{opacity:1}#shiro *{animation:none!important}}
#shiro .shiro-zzz{z-index:2;bottom:120px;right:12px;text-shadow:0 1px 3px white}#shiro .shiro-zzz i{opacity:.4}@keyframes shiro-zz{0%{opacity:.35;transform:translate(0,0) scale(.75)}25%{opacity:1}100%{opacity:.2;transform:translate(18px,-35px) scale(1.15)}}
/* Homepage shortcuts belong to the opening scene. */
.hero>.intent-bar{position:absolute;z-index:3;left:24px;right:24px;bottom:16px;padding:15px 235px 15px 20px;gap:18px;border:1px solid #fff;border-radius:22px;background:#fffcf4ed;box-shadow:0 5px 22px #50357812;backdrop-filter:blur(8px);grid-template-columns:.8fr repeat(4,1fr)}.hero>.intent-bar a,.hero>.intent-bar button{font-size:13px;line-height:1.35;min-height:44px}.hero>.intent-bar .intent-icon{width:32px;height:32px;flex-shrink:0}.hero .hero-caption{display:none}.hero .hero-copy{padding-bottom:120px}.core-section .feature[hidden]{display:none!important}.core-section .feature{padding:22px;box-shadow:none}.core-section .feature-art{width:calc(100% + 44px);height:clamp(140px,24svh,230px);aspect-ratio:auto;object-fit:contain;background:#fff8ee;margin:-22px -22px 15px}.core-section .feature h3{font-size:22px;margin:10px 0 12px}.core-section .feature p{font-size:14px;line-height:1.5;margin-bottom:16px;max-width:none}.core-section .feature-state{margin-bottom:0}.core-section .core-sublinks{font-size:13px}@media(min-width:1001px) and (min-height:600px){.hero .hero-copy{padding-top:20px;padding-bottom:115px}.hero .hero-copy h1{font-size:clamp(34px,min(4.2vw,7svh),65px)}.hero .hero-copy p{font-size:clamp(14px,1.9svh,17px)}.hero .hero-copy .eyebrow{margin-bottom:14px}}@media(max-width:1000px){.hero>.intent-bar{left:16px;right:16px;padding:14px;grid-template-columns:repeat(2,1fr);gap:10px}.hero>.intent-bar p{grid-column:1/-1;display:none}.hero .hero-copy{padding-bottom:170px}}@media(max-width:600px){.hero{padding-bottom:155px;min-height:920px}.hero .hero-copy{padding-bottom:0}.hero>.intent-bar{bottom:16px;padding:12px}.hero>.intent-bar a,.hero>.intent-bar button{font-size:12px;gap:7px}.hero-image{bottom:130px}.hero:after{bottom:440px}.core-section .feature-art{height:210px}}
/* A striped toy ball rolls on its own and bounces when thrown. */
#shiro .shiro-ball{width:36px;height:36px;border:2px solid white;background:conic-gradient(#f47965 0 60deg,#ffd86c 60deg 120deg,#72d5ce 120deg 180deg,#a17ce5 180deg 240deg,#ffd86c 240deg 300deg,#72d5ce 300deg);box-shadow:inset -5px -5px 8px #29204655,inset 3px 3px 5px #fff9,0 4px 5px #39264730;color:transparent;bottom:8px;right:4px;z-index:3}#shiro .shiro-ball:after{content:'';position:absolute;inset:5px;border:1px solid #fff8;border-radius:50%}#shiro[data-state=play] .shiro-ball,#shiro[data-state=invite] .shiro-ball{animation:shiro-ball-roll 2s ease-in-out infinite}#shiro[data-state=play] .shiro-sprite,#shiro[data-state=invite] .shiro-sprite{animation:shiro-frames 2s steps(1,end) infinite,shiro-play-step 2s ease-in-out infinite}#shiro.shiro-fetch .shiro-ball{animation:shiro-ball-fetch 1.4s ease-in-out 2}#shiro[data-companion=sunno] .shiro-playground:not([hidden]){display:block!important}#shiro[data-companion=sunno] .shiro-sprite{background-image:url('/site-assets/sunno-business-v1.webp');transform:none;animation:sunno-laptop 1.6s steps(1,end) infinite}#shiro[data-companion=sunno] .shiro-ball,#shiro[data-companion=sunno] .shiro-zzz{display:none!important}#shiro[data-state=phone] .shiro-sprite{animation:sunno-phone 1.4s steps(1,end) infinite}#shiro[data-state=watch] .shiro-sprite{animation:sunno-watch 2s steps(1,end) infinite}@keyframes shiro-ball-roll{0%,100%{transform:translate(0,0) rotate(0)}35%{transform:translate(-42px,-10px) rotate(-150deg)}65%{transform:translate(-70px,0) rotate(-290deg)}}@keyframes shiro-play-step{0%,100%{transform:translateX(0)}50%{transform:translateX(15px)}75%{transform:translateX(6px)}}@keyframes sunno-laptop{0%{background-position:0 0}25%{background-position:33.333% 0}50%{background-position:66.667% 0}75%,100%{background-position:100% 0}}@keyframes sunno-phone{0%{background-position:0 100%}50%,100%{background-position:33.333% 100%}}@keyframes sunno-watch{0%{background-position:66.667% 100%}50%,100%{background-position:100% 100%}}@media(prefers-reduced-motion:reduce){#shiro *{animation:none!important}}

/* Full-width illustrations, six cards in two naturally scrolling desktop rows. */
.core-section .features{row-gap:32px;border:0;align-items:stretch}
.core-section .feature{--card-pad:clamp(18px,2.7svh,30px);padding:var(--card-pad);border:1px solid #e9dbf1;overflow:hidden}
.core-section .feature-art{display:block;width:calc(100% + var(--card-pad) * 2);height:auto;aspect-ratio:3/2;object-fit:contain;margin:calc(-1 * var(--card-pad)) calc(-1 * var(--card-pad)) 20px;background:transparent;flex:none}
.core-section .feature h3{font-size:clamp(21px,2.9svh,26px);line-height:1.2;margin:18px 0 14px}
.core-section .feature p{font-size:15px;line-height:1.5;margin-bottom:20px}
.core-section .feature-state{margin-bottom:0}
.core-section .feature>.text-link{margin-top:auto}
.core-section .core-sublinks{font-size:14px;line-height:1.5}
@media(min-width:1001px){.core-section .features{grid-template-columns:repeat(3,minmax(0,1fr));max-width:min(100%,calc((100svh - 320px) * 4.5));margin-inline:auto}.core-section .feature{min-height:calc(100svh - 132px);scroll-margin-top:100px}}
@media(min-width:1001px) and (max-height:720px){.core-section .feature-art{margin-bottom:14px}.core-section .feature h3{font-size:21px;margin:12px 0 10px}.core-section .feature p{font-size:14px;margin-bottom:14px}.core-section .feature .text-link,.core-section .core-sublinks{font-size:13px}.core-section .core-sublinks{margin-top:12px}}
@media(max-width:1000px){.core-section .features{grid-template-columns:1fr;row-gap:24px}.core-section .feature{min-height:0}.core-section .feature-art{height:auto;aspect-ratio:3/2}.core-section .feature>.text-link{margin-top:8px}}
@media(min-width:1001px){body.viewing-tools #shiro .shiro-launch{padding:8px}body.viewing-tools #shiro .shiro-launch>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body.viewing-tools #shiro .shiro-quiet{max-width:74px;font-size:10px}}
/* Companion rollout: distinct loops, with a held pose between gestures. */
#shiro[data-companion=sunno] .shiro-sprite{animation:sunno-laptop 2.4s steps(1,end) infinite,sunno-breathe 3s ease-in-out infinite;transform-origin:50% 90%}
#shiro[data-companion=sunno][data-state=mobile] .shiro-sprite,#shiro[data-companion=sunno][data-state=glasses] .shiro-sprite,#shiro[data-companion=sunno][data-state=impatient] .shiro-sprite,#shiro[data-companion=sunno][data-state=phone] .shiro-sprite{background-image:url('/site-assets/sunno-gestures-v2.webp');background-size:400% 400%;animation:sunno-gesture 3.2s steps(1,end) infinite,sunno-breathe 3s ease-in-out infinite;--gesture-row:0%}
#shiro[data-companion=sunno][data-state=glasses] .shiro-sprite{--gesture-row:33.333%;animation-duration:3s,3s}
#shiro[data-companion=sunno][data-state=impatient] .shiro-sprite{--gesture-row:66.667%;animation:sunno-gesture 4s steps(1,end) infinite,sunno-impatient 4s ease-in-out infinite}
#shiro[data-companion=sunno][data-state=phone] .shiro-sprite{--gesture-row:100%;animation-duration:3s,2.5s}
#shiro[data-companion=sunno][data-state=watch] .shiro-sprite{animation:sunno-watch 2.6s steps(1,end) infinite,sunno-breathe 3s ease-in-out infinite}
#shiro[data-state=sneeze] .shiro-sprite,#shiro[data-state=stretch] .shiro-sprite{background-image:url('/site-assets/shiro-mischief-v1.webp');background-size:400% 200%;transform:none;--gesture-row:0%;animation:sunno-gesture 2s steps(1,end) infinite}
#shiro[data-state=stretch] .shiro-sprite{--gesture-row:100%;animation-duration:3s}
#shiro[data-state=sneeze] .shiro-playground{transform:translateX(calc(-1 * var(--journey)))}
#shiro .shiro-ball{display:none}#shiro[data-state=play] .shiro-ball,#shiro[data-state=invite] .shiro-ball{display:block}
@keyframes sunno-gesture{0%,15%{background-position:0 var(--gesture-row)}30%{background-position:33.333% var(--gesture-row)}50%{background-position:66.667% var(--gesture-row)}70%,100%{background-position:100% var(--gesture-row)}}
@keyframes sunno-breathe{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(-2px) rotate(.7deg)}70%{transform:translateY(0) rotate(-.5deg)}}
@keyframes sunno-impatient{0%,45%,100%{transform:rotate(0)}55%,65%{transform:rotate(-2deg) translateY(-2px)}60%,70%{transform:rotate(2deg)}}
@media(max-width:600px){#shiro .shiro-launch{padding:7px}#shiro .shiro-launch span{max-width:110px}#shiro .shiro-playground{right:0}#shiro .shiro-sprite{width:140px;height:140px}}
#shiro.shiro-paused *{animation:none!important}
@media(prefers-reduced-motion:reduce){#shiro *{animation:none!important}}
/* Shiro travels around the viewport; his chat remains in its familiar dock. */
#shiro[data-companion=shiro] .shiro-playground{position:fixed;right:auto;bottom:auto;left:calc(100vw - 190px);top:calc(100dvh - 340px);animation:none!important;transform:none!important;transition:left .5s linear,top .5s linear;max-width:calc(100vw - 24px)}
#shiro[data-companion=shiro][data-state=walk] .shiro-sprite,#shiro[data-companion=shiro][data-state=return] .shiro-sprite{transform:scaleX(var(--facing,1))}
/* Consistent Sunno gentleman model in all gestures. */
#shiro[data-companion=sunno] .shiro-sprite{background-image:url('/site-assets/sunno-gentleman-v3.webp')!important;background-size:400% 600%!important;--gesture-row:20%;animation:sunno-gesture 3.2s steps(1,end) infinite,sunno-breathe 3s ease-in-out infinite!important;border-radius:28px;box-shadow:0 4px 15px #24163820}
#shiro[data-companion=sunno][data-state=mobile] .shiro-sprite{--gesture-row:40%}
#shiro[data-companion=sunno][data-state=phone] .shiro-sprite{--gesture-row:60%}
#shiro[data-companion=sunno][data-state=glasses] .shiro-sprite{--gesture-row:80%}
#shiro[data-companion=sunno][data-state=watch] .shiro-sprite,#shiro[data-companion=sunno][data-state=impatient] .shiro-sprite{--gesture-row:100%;animation:sunno-gesture 4s steps(1,end) infinite,sunno-impatient 4s ease-in-out infinite!important}
#shiro.shiro-paused .shiro-sprite{animation:none!important}
@media(prefers-reduced-motion:reduce){#shiro .shiro-sprite{animation:none!important}#shiro .shiro-playground{transition:none!important}}

/* Make feature artwork and its full card a single generous navigation target. */
.directory-card,.core-section .feature{position:relative}
.card-hit-area{position:absolute;inset:0;z-index:1;margin:0!important;border-radius:inherit}
.directory-card>div>.text-link,.core-section .feature>.text-link,.core-section .feature>.core-sublinks{position:relative;z-index:2}
.directory-card:has(.card-hit-area:hover),.directory-card:has(.card-hit-area:focus-visible),.core-section .feature:has(.card-hit-area:hover),.core-section .feature:has(.card-hit-area:focus-visible){border-color:#7849bd;box-shadow:0 8px 24px #4c267318}
.card-hit-area:focus-visible{outline:3px solid #6f35c5;outline-offset:-4px}
.directory-card:has(.card-hit-area:hover)>img,.core-section .feature:has(.card-hit-area:hover)>.feature-art{filter:brightness(.97)}
.clickable-feature-card{cursor:pointer}
.clickable-feature-card:hover,.clickable-feature-card:focus-visible{border-color:#7849bd;box-shadow:0 8px 24px #4c267318}
.clickable-feature-card:focus-visible{outline:3px solid #6f35c5;outline-offset:3px}
.clickable-feature-card:hover>.feature-art{filter:brightness(.97)}

/* Official PawQi wordmark: retain the established paw device, while the
   customer-visible name remains accessible text with the correct casing. */
.pawqi-wordmark{display:flex!important;align-items:center;gap:7px;width:172px!important;flex-shrink:0}
.pawqi-brand-mark{display:block;width:43px;height:50px;overflow:hidden;flex:0 0 43px}
.pawqi-wordmark .pawqi-brand-mark img{display:block;width:152px!important;max-width:none!important;height:auto!important}
.pawqi-brand-copy{display:flex;flex-direction:column;align-items:center;line-height:1;white-space:nowrap}
.pawqi-brand-copy strong{color:#151c58;font:700 34px/1 'Trebuchet MS',Arial,sans-serif;letter-spacing:-2px}
.pawqi-brand-copy strong span{color:#7139d4}
.pawqi-brand-copy small{margin-top:5px;color:#38406b;font:700 6px/1.1 Arial,sans-serif;letter-spacing:1.35px}
@media(max-width:600px){.pawqi-wordmark{width:140px!important;gap:5px}.pawqi-brand-mark{width:34px;height:41px;flex-basis:34px}.pawqi-wordmark .pawqi-brand-mark img{width:122px!important}.pawqi-brand-copy strong{font-size:28px}.pawqi-brand-copy small{font-size:5px;letter-spacing:1px}}

/* A warmer, clearer PawQi trail through the site. */
.header{height:108px;background:linear-gradient(90deg,#fff 0%,#fffdf8 54%,#faf5ff 100%);border-bottom:1px solid #eadff4;box-shadow:0 8px 24px #3c23520a}
.header nav{align-items:center;gap:4px;font:700 15.5px/1.2 PawQIComic,'Trebuchet MS',Arial,sans-serif}
.header nav a{display:inline-flex;align-items:center;gap:5px;padding:10px 11px;border-radius:999px;line-height:1.2;white-space:nowrap;transition:color .18s,background .18s,transform .18s}
.header nav .mobile-signin{display:none}
.header nav a span{font-size:14px}.header nav a:hover{background:#f1e8ff;color:#5930ac;transform:translateY(-1px)}
.header nav .nav-explore span{color:#7350d0}.header nav .nav-shiro span{filter:saturate(1.15)}.header nav .nav-care span{color:#e36179}.header nav .nav-guides span{font-size:13px}
.header-actions{gap:12px}.header-login{padding:11px 14px;color:#4b276f;font-size:15px;font-weight:800;border-radius:999px}.header-login:hover{background:#f1e7ff}
.app-access{position:relative}.app-access summary{display:flex;align-items:center;gap:9px;list-style:none;padding:13px 18px;border-radius:14px;background:linear-gradient(135deg,#6737c8,#8750db);box-shadow:0 8px 18px #6336b52d;color:white;font-size:15px;font-weight:800;cursor:pointer;white-space:nowrap}.app-access summary::-webkit-details-marker{display:none}.app-access summary:hover{transform:translateY(-1px);box-shadow:0 10px 22px #6336b53b}.app-access[open] summary span{transform:rotate(180deg)}
.app-access-menu{position:absolute;right:0;top:calc(100% + 12px);width:245px;padding:10px;border:1px solid #e4d6ef;border-radius:19px;background:#fffdf9;box-shadow:0 20px 50px #35204b2b}.app-access-menu:before{content:'';position:absolute;right:24px;top:-7px;width:13px;height:13px;background:#fffdf9;border-left:1px solid #e4d6ef;border-top:1px solid #e4d6ef;transform:rotate(45deg)}
.app-access-menu>a,.app-access-menu>span{position:relative;display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:13px}.app-access-menu>a:hover{background:#f3ebff}.app-access-menu b{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#f1e8ff;color:#6335bd}.app-access-menu>a>span,.app-access-menu>span>span{display:flex;flex-direction:column;gap:2px}.app-access-menu strong{font-size:14px;line-height:1.25}.app-access-menu small{color:#776a80;font-size:11px}.app-access-menu>span{opacity:.72}
@media(max-width:1240px) and (min-width:1001px){.header{padding-inline:22px;gap:12px}.pawqi-wordmark{width:151px!important}.header nav{font-size:13px}.header nav a{padding:9px 7px}.header nav a span{display:none}.header-login{font-size:13px;padding:10px}.app-access summary{font-size:13px;padding:12px 13px}}
@media(max-width:1000px){html{scroll-padding-top:85px}.header{height:79px;padding:0 18px}.header nav{display:none;position:absolute;top:79px;left:0;right:0;padding:16px 18px 24px;background:#fffdf9;border-bottom:1px solid #e6daef;box-shadow:0 18px 30px #39214d1c;font-size:16px}.header nav.open{display:grid;grid-template-columns:1fr 1fr;gap:7px}.header nav a{padding:12px 13px}.header nav .mobile-signin{display:flex;grid-column:1/-1;background:#f1e8ff;color:#552ca1}.header-login{display:none}.menu-button{display:block;font-size:25px}.header-actions{margin-left:auto}.app-access summary{padding:11px 14px}.app-access-menu{right:-48px}.brand,.brand img{width:auto}}
@media(max-width:520px){.header{padding-inline:13px;gap:8px}.pawqi-wordmark{width:133px!important}.app-access summary{font-size:12px;padding:10px 11px}.app-access summary span{display:none}.header-actions{gap:7px}.menu-button{font-size:22px}.header nav.open{grid-template-columns:1fr}.app-access-menu{right:-42px;width:225px}}

/* One-feature pilot: Shiro bridges public explanation to the private tool. */
.shiro-try{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center;margin:44px 0 34px!important;padding:26px 30px;border:1px solid #d9c6f2;border-radius:28px;background:linear-gradient(125deg,#f4edff,#fff6dc);box-shadow:0 14px 34px #4c267318;position:relative;overflow:hidden}
.shiro-try:after{content:'\201C';position:absolute;right:22px;top:-28px;font:130px/1 Georgia,serif;color:#7b43cf14;pointer-events:none}
.shiro-try>img{display:block;width:180px;height:180px;object-fit:contain;filter:drop-shadow(0 10px 10px #47217824);transform:rotate(-3deg)}
.shiro-try h2{margin:4px 0 10px;font-size:30px}.shiro-try p{margin:8px 0;font-size:16px;line-height:1.65}.shiro-try .shiro-kicker{margin:0;color:#6630bd;font-size:12px;font-weight:700;letter-spacing:.16em}.shiro-try .actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:20px 0 10px}.shiro-try .button{white-space:normal;text-align:center}.shiro-try .fine{font-size:13px;color:#64566f}
.shiro-try.is-scene>img{border-radius:22px;object-fit:cover;transform:rotate(-2deg);background:#fff8eb}
.shiro-build-reply{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;margin-top:18px;padding:14px 16px;border:1px dashed #9c72d2;border-radius:18px;background:#fffdf8;outline-offset:4px}
.shiro-build-reply[hidden]{display:none}.shiro-build-reply img{width:64px;height:64px;object-fit:contain}.shiro-build-reply p{margin:0;font-size:14px}.shiro-build-reply strong{display:block;color:#6530b8;margin-bottom:3px}
@media(max-width:650px){.shiro-try{grid-template-columns:92px minmax(0,1fr);gap:14px;padding:20px}.shiro-try>img{width:92px;height:92px;align-self:start}.shiro-try h2{font-size:24px}.shiro-try .actions{grid-column:1/-1;align-items:stretch;flex-direction:column}.shiro-try .button{width:100%;box-sizing:border-box}.shiro-try .fine{grid-column:1/-1}}
