/* Editorial refinement informed by the official brand research in review/. */
:root{--display:Georgia,'Times New Roman',serif}
.header{height:96px}
.header .logo{font-size:43px}
.header nav{gap:36px}
.header-cta{border-radius:3px;padding:14px 20px}
.hero{padding-top:66px;grid-template-columns:1.05fr 1fr;gap:0 48px}
.hero-copy{padding:35px 0 20px}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(48px,5.5vw,84px);line-height:1.07;letter-spacing:-3.4px;margin:30px 0}
.hero h1 em{font-weight:400}
.hero-copy>p{font-size:16px;line-height:1.85;max-width:410px}
.hero .eyebrow{font-size:11px;font-weight:500;letter-spacing:2.2px}
.button{border-radius:3px;font-size:14px;padding:18px 24px;gap:35px}
.hero-note{font-size:12px;letter-spacing:.2px;margin-top:28px;color:var(--ink)}
.hero-visual{min-height:490px;border-radius:3px;margin:0 0 55px;overflow:hidden;background:#f3d669}
.hero-visual img{object-position:54% center}
.hero-bottom{padding:25px 0;letter-spacing:.6px;font-size:11px}
.section{padding-top:112px;padding-bottom:112px}
.section-label{font-size:11px;letter-spacing:2px;font-weight:500;margin-bottom:25px}
.section h2,.about h2{font-family:var(--display);font-size:clamp(34px,3.5vw,54px);font-weight:400;line-height:1.16;letter-spacing:-1.5px}
.about h2 span{color:var(--ink);font-style:italic}
.about-copy{grid-template-columns:1.1fr 1fr;gap:90px}
.about-copy p{font-size:16px;line-height:1.95;max-width:490px}
.company-identity{gap:30px}
.company-emblem{width:106px;height:106px;border-radius:0;border:0}
.categories{background:var(--paper);padding-top:0}
.section-heading{margin-bottom:52px}
.section-heading>p{font-size:15px;max-width:310px}
.category-grid{gap:0;border-top:1px solid #1d293c40;border-bottom:1px solid #1d293c40}
.category,.category.active{background:transparent;border-radius:0;min-height:240px;padding:32px 28px 28px;border-right:1px solid #1d293c26}
.category:last-child{border-right:0}
.category:first-child{padding-left:0}
.category-number{position:static;display:block;font-size:12px;margin-bottom:35px;color:var(--muted)}
.category h3{font-size:21px;font-weight:500;margin:0 0 14px;letter-spacing:-.5px}
.category p{font-size:14px;line-height:1.6;min-height:44px;margin-bottom:18px}
.category-bottom{border:0;padding:0;font-size:10px;letter-spacing:.7px;line-height:1.6}
.category.active .category-bottom{font-weight:700}
.category.active:hover{transform:none;background:#f8dc551a}
.brands{background:#f1f1eb}
.brand-grid{grid-template-columns:1fr;gap:28px}
.brand{border-radius:3px}
.rootpurr{display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch;padding:0;background:var(--paper);color:var(--ink)}
.product-art{margin:0;padding:44px;background:#e6e9dd;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px}
.product-art img{display:block;width:min(100%,292px);height:auto;box-shadow:0 16px 30px #29372513}
.product-art figcaption{font-size:10px;letter-spacing:1.2px;line-height:1.6;color:#445044;text-align:center}
.brand-editorial{padding:54px;align-self:center}
.brand-top{font-size:10px;letter-spacing:1.5px;line-height:1.7}
.brand.rootpurr h3{font-family:var(--display);font-size:clamp(35px,4vw,57px);font-weight:400;line-height:1.13;letter-spacing:-1.7px;white-space:normal;margin:40px 0 23px}
.brand-intro{font-size:16px;line-height:1.9;color:var(--muted);max-width:365px}
.product-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0 6px;padding:25px 0;border-top:1px solid #1d293c26;border-bottom:1px solid #1d293c26}
.product-facts dt{font-size:10px;letter-spacing:1.4px;color:var(--muted);margin-bottom:10px}
.product-facts dd{margin:0;font-size:14px;line-height:1.5}
.brand-link{font-size:14px;gap:45px;margin-top:30px;padding-bottom:10px}
.touhunter{padding:44px 52px;display:flex;align-items:center;justify-content:space-between;gap:38px;background:var(--ink);color:var(--paper)}
.touhunter .brand-top{color:var(--yellow)}
.brand.touhunter h3{font-size:clamp(29px,3vw,43px);font-style:normal;font-weight:600;letter-spacing:.5px;margin:20px 0 0}
.touhunter .brand-description{display:block}
.touhunter h4{font-family:var(--display);font-size:27px;font-weight:400;line-height:1.3}
.touhunter .brand-description p{font-size:12px;margin-top:15px;color:#c0c8d2}
.statement{background:var(--ink);color:var(--paper);padding-top:95px;padding-bottom:90px}
.statement .eyebrow{color:var(--yellow);font-size:10px;letter-spacing:2.4px;font-weight:400}
.statement h2{font-family:var(--display);font-size:clamp(44px,5vw,72px);font-weight:400;line-height:1.12;letter-spacing:-2px;margin:25px 0 36px}
.statement .button{background:var(--yellow);color:var(--ink)}
.statement .button:hover{background:#ffe989}
footer{background:var(--ink);color:var(--paper);padding-top:35px}
.footer-top{border-top:1px solid #ffffff30;padding-top:38px}
.footer-top .logo{font-size:37px}
.footer-top p{font-size:12px;color:#c0c8d2}
.footer-top nav{font-size:13px}
.footer-bottom{border-color:#ffffff30;color:#b6bec9;font-size:11px}
.back-top{border-color:#ffffff50}
@media(hover:hover) and (pointer:fine){.brand:hover{transform:none;box-shadow:none}}
@media(max-width:1050px){.hero{gap:0 30px}.hero h1{font-size:56px;letter-spacing:-2.5px}.hero-visual{min-height:465px}.brand-editorial{padding:36px}.product-art{padding:30px}.about-copy{gap:45px}.category{padding-left:20px;padding-right:20px}.category h3{font-size:19px}.category-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.header nav{gap:18px}.hero{grid-template-columns:1fr 1fr;gap:22px}.hero h1{font-size:45px;letter-spacing:-2px}.hero-visual{min-height:430px}.hero-copy>p{font-size:15px}.rootpurr{grid-template-columns:1fr 1fr}.brand-editorial{padding:28px}.brand.rootpurr h3{font-size:36px}.brand-top{font-size:9px}.product-art{padding:22px}.category-grid{grid-template-columns:1fr 1fr}.category:nth-child(2){border-right:0}.category:nth-child(-n+2){border-bottom:1px solid #1d293c26}.category:nth-child(3){padding-left:0}.category{min-height:220px}.touhunter{padding:35px}.touhunter h4{font-size:24px}}
@media(max-width:640px){.header{height:78px}.header .logo{font-size:37px}.hero{grid-template-columns:1fr;padding-top:27px;gap:0}.hero-copy{padding:12px 0 10px}.hero h1{font-size:clamp(39px,11vw,64px);line-height:1.13;letter-spacing:-1.8px;margin:24px 0}.hero-copy>p{font-size:15px;margin-bottom:25px}.hero-note{margin:23px 0 22px;font-size:11px}.hero-visual{margin:0 0 24px;min-height:310px;aspect-ratio:1.15;border-radius:2px}.hero-bottom{font-size:10px;letter-spacing:0;gap:24px;line-height:1.7;padding:18px 0}.section{padding-top:68px;padding-bottom:68px}.section h2,.about h2{font-size:36px;letter-spacing:-1px}.section-label{font-size:10px;margin-bottom:20px}.about-copy{grid-template-columns:1fr;gap:30px}.about-copy p{font-size:16px;line-height:1.8}.company-identity{gap:25px}.company-emblem{width:95px;height:95px}.categories{padding-top:0}.section-heading{margin-bottom:30px}.section-heading>p{font-size:14px}.category{padding:24px 18px;min-height:228px}.category h3{font-size:19px;line-height:1.3}.category-number{margin-bottom:27px}.category p{font-size:13px}.category-bottom{font-size:9px;letter-spacing:.4px}.rootpurr{grid-template-columns:1fr}.product-art{padding:32px}.product-art img{width:220px}.product-art figcaption{font-size:9px}.brand-editorial{padding:30px 25px 38px}.brand.rootpurr h3{font-size:43px;margin-top:27px}.brand-intro{font-size:15px}.brand-top{font-size:10px}.touhunter{display:block;padding:32px 25px}.brand.touhunter h3{font-size:31px;margin-bottom:28px}.touhunter h4{font-size:25px}.statement{padding:65px 6%}.statement h2{font-size:48px}.footer-top{gap:18px}.footer-top nav{gap:20px}.footer-bottom{font-size:10px;line-height:1.7}.footer-top .logo{font-size:35px}}

/* Keep each phrase on its own line, sized to the hero text column. */
.hero-copy{container-type:inline-size;min-width:0}
.hero .family-headline{font-size:clamp(28px,4.2vw,66px);letter-spacing:-.045em;line-height:1.15}
.hero .family-headline>span,.hero .family-headline>em{display:inline-block;white-space:nowrap}
@supports(font-size:1cqi){.hero .family-headline{font-size:clamp(24px,10.8cqi,76px)}}
@media(max-width:640px){.hero .family-headline{font-size:clamp(24px,8.9vw,56px)}}

/* Official transparent product render replaces the flat print artwork. */
.product-art img{width:min(100%,420px);height:auto;box-shadow:none;filter:drop-shadow(0 16px 14px #29372520)}
@media(max-width:640px){.product-art img{width:min(100%,300px)}}

/* Supplied sibling-brand presentation sourced from the official ROOTPURR site. */
.brand.touhunter{display:grid;grid-template-columns:1fr 1.15fr;padding:0;gap:0}
.touhunter-art{margin:0;background:#cfedfc;align-self:stretch;display:flex;align-items:center}
.touhunter-art img{width:100%;height:auto;display:block}
.touhunter-copy{padding:52px}
.touhunter-copy .brand-description{margin-top:35px}
@media(max-width:950px){.touhunter-copy{padding:32px}.brand.touhunter h3{font-size:28px}}
@media(max-width:640px){.brand.touhunter{grid-template-columns:1fr}.touhunter-copy{padding:32px 25px}.brand.touhunter h3{font-size:31px}.touhunter-art img{max-width:390px;margin:auto}}
/* Match both product renders in angle, canvas scale, and spacing. */
.touhunter-art{padding:44px;justify-content:center}
.touhunter-art img{width:min(100%,420px);max-width:420px;filter:drop-shadow(0 16px 14px #29372520)}
@media(max-width:1050px){.touhunter-art{padding:30px}}
@media(max-width:760px){.touhunter-art{padding:22px}}
@media(max-width:640px){.touhunter-art{padding:32px}.touhunter-art img{width:min(100%,300px);max-width:300px}}

/* Corporate brand presentation: shared structure, individual brand palettes. */
.hero-visual{background:transparent;border-radius:0;overflow:visible}
.hero-visual img{mask-image:linear-gradient(to right,transparent,#000 10%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 8%,#000 90%,transparent);mask-composite:intersect}
.hero-note{font-size:11px;color:#384235}
.hero-bottom>span{letter-spacing:2px;font-size:10px}
.brands{background:#f3f3ed}
.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.brand.rootpurr,.brand.touhunter{display:flex;flex-direction:column;min-width:0;border-radius:5px;overflow:hidden;padding:0;gap:0;background:var(--paper);color:var(--ink)}
.product-art,.touhunter-art{position:relative;box-sizing:border-box;width:100%;padding:38px 34px 24px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:400px}
.product-art{background:#e5e9de}.touhunter-art{background:#d5e8ee}
.product-index{align-self:flex-start;font-size:10px;letter-spacing:1.5px}
.product-art img,.touhunter-art img{width:min(100%,330px);height:auto;max-width:330px;filter:drop-shadow(0 14px 12px #29372518)}
.product-art figcaption,.touhunter-art figcaption{font-size:9px;letter-spacing:1.4px;line-height:1.5;color:#44515a;text-align:center}
.brand-editorial,.touhunter-copy{padding:36px 38px 38px;align-self:stretch}
.brand .brand-top,.touhunter .brand-top{font-size:9px;letter-spacing:1.8px;color:#616975}
.brand.rootpurr h3,.brand.touhunter h3{font-family:Arial,Helvetica,sans-serif;font-weight:600;font-size:30px;line-height:1.2;letter-spacing:.3px;margin:18px 0 12px}
.brand-deck{font-family:var(--display);font-size:24px;line-height:1.3;letter-spacing:-.5px;margin:0 0 18px}
.brand .brand-intro{font-size:14px;line-height:1.8;max-width:none;min-height:76px;margin:0;color:var(--muted)}
.product-facts{margin:24px 0 0;padding:20px 0;gap:16px}
.product-facts dt{font-size:9px}.product-facts dd{font-size:12px}
.brand-link{display:flex;justify-content:space-between;width:100%;box-sizing:border-box;margin-top:24px;border-bottom:1px solid #1d293c40;font-size:13px;line-height:1.6}
.brand-details{margin-top:24px;font-size:13px;line-height:1.6}
.brand-details summary{cursor:pointer;display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #1d293c40;list-style:none}
.brand-details summary::-webkit-details-marker{display:none}
.brand-details summary span{transition:transform .2s}
.brand-details[open] summary span{transform:rotate(45deg)}
.brand-details p{font-size:13px;line-height:1.8;color:var(--muted)}
.brand-details a{text-decoration:underline;text-underline-offset:5px}
.brand-details summary:focus-visible{outline:3px solid #2669ce;outline-offset:5px}
.about h2 span{font-style:normal}.about{padding-top:100px;padding-bottom:100px}
.about-copy{align-items:start}.about-copy p:first-child{margin-top:0}
.categories{padding-top:0;padding-bottom:96px}
.category-grid{gap:22px;border:0}
.category,.category.active,.category:first-child,.category:nth-child(3){padding:0;border:0;min-width:0;min-height:0;background:transparent}
.category-visual{position:relative;aspect-ratio:1.2;background:#e9ece1;margin-bottom:25px;display:grid;place-items:center;overflow:hidden;border-radius:3px}
.category-feeding .category-visual{background:#f5e9d8}.category-play .category-visual{background:#e0e9ed}.category-home .category-visual{background:#e9e2dc}
.category-visual img{width:85%;height:90%;object-fit:contain;transition:transform .3s}
.category-number{position:absolute;top:15px;left:16px;font-size:10px;margin:0}
.category h3{font-size:18px;letter-spacing:-.3px;margin-bottom:10px}.category p{font-size:13px;min-height:42px;margin-bottom:16px}
.category-bottom{font-size:9px;letter-spacing:.6px;color:#66716b}
.category.active .category-bottom{color:var(--ink)}.category.active:hover{background:transparent}.category.active:hover img{transform:translateY(-4px)}
.partnership{padding:76px 6%;display:grid;grid-template-columns:1.2fr 1fr;gap:80px;text-align:left;align-items:center}
.partnership h2{font-size:clamp(32px,3.6vw,52px);line-height:1.2;letter-spacing:-1.5px;margin-bottom:0}
.partnership h2 em{font-style:normal}
.partnership .eyebrow{justify-content:flex-start}
.partnership-copy{border-left:1px solid #ffffff30;padding-left:50px}
.partnership-copy h3{font-size:23px;font-weight:400;letter-spacing:-.3px;margin-top:0}
.partnership-copy p{font-size:15px;line-height:1.8;color:#c8ced5;max-width:350px}
.partnership-copy .partnership-note{font-size:11px;letter-spacing:.3px;margin-top:24px}
.partnership-copy .button{margin-top:10px;gap:24px}
@media(max-width:950px){.brand-grid{gap:20px}.brand-editorial,.touhunter-copy{padding:28px}.product-art,.touhunter-art{min-height:350px;padding:26px}.brand .brand-intro{min-height:101px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.category:nth-child(-n+2){border:0}.partnership{gap:35px}.partnership-copy{padding-left:30px}}
@media(max-width:640px){.brand-grid{grid-template-columns:1fr;gap:28px}.section{padding-top:64px;padding-bottom:64px}.categories{padding-top:0}.hero-visual{min-height:300px}.product-art,.touhunter-art{padding:25px 28px 22px;min-height:0}.product-art img,.touhunter-art img{width:min(100%,280px)}.brand-editorial,.touhunter-copy{padding:28px 25px}.brand.rootpurr h3,.brand.touhunter h3{font-size:28px;margin:16px 0 12px}.brand-deck{font-size:22px}.brand .brand-intro{min-height:0}.category-grid{gap:28px 16px}.category-visual{margin-bottom:18px}.category-number{top:10px;left:10px}.category h3{font-size:16px;line-height:1.3}.category p{font-size:12px;min-height:40px}.category-bottom{font-size:8px;letter-spacing:.2px}.partnership{grid-template-columns:1fr;gap:32px;padding:60px 6%}.partnership h2{font-size:36px}.partnership-copy{border-left:0;border-top:1px solid #ffffff30;padding:28px 0 0}.partnership-copy h3{font-size:22px}.hero-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.category-visual img,.brand-details summary span{transition:none}.category.active:hover img{transform:none}}

/* Readable type scale shared across desktop and mobile. */
:root{--type-body:16px;--type-small:14px;--type-label:12px;--type-action:15px}
.section h2,.about h2{font-size:clamp(40px,3.5vw,48px);line-height:1.18;letter-spacing:-1.2px}
.about-copy p,.hero-copy>p,.brand .brand-intro,.partnership-copy p{font-size:var(--type-body);line-height:1.7}
.section-heading>p{font-size:var(--type-body);line-height:1.7;max-width:350px}
.brand .brand-intro{min-height:82px}
.section-label,.hero .eyebrow,.statement .eyebrow{font-size:var(--type-label);letter-spacing:1.2px;line-height:1.5}
.brand .brand-top,.product-index,.product-art figcaption,.touhunter-art figcaption,.product-facts dt{font-size:var(--type-label);letter-spacing:.7px;line-height:1.5}
.product-facts dd{font-size:var(--type-small);line-height:1.6}
.button,.header-cta,.header nav,.footer-top nav,.brand-link,.brand-details,.brand-details a{font-size:var(--type-action);line-height:1.5}
.brand-details p{font-size:var(--type-small);line-height:1.7}
.brand-link,.brand-details summary{min-height:44px;align-items:center}
.hero-note,.hero-bottom,.hero-bottom>span{font-size:var(--type-label);line-height:1.6;letter-spacing:.3px}
.category h3{font-size:20px;line-height:1.3}
.category p{font-size:15px;line-height:1.6;min-height:48px}
.category-bottom,.category-number{font-size:var(--type-label);line-height:1.5;letter-spacing:.2px}
.partnership-copy .partnership-note,.footer-top p,.footer-bottom{font-size:var(--type-label);line-height:1.7}
@media(min-width:641px) and (max-width:950px){.brand .brand-intro{min-height:136px}}
@media(max-width:760px){.header nav{gap:18px;font-size:14px}.hero-bottom{gap:16px}}
@media(max-width:640px){.section h2,.about h2{font-size:32px;line-height:1.2;letter-spacing:-.8px}.brand .brand-intro{min-height:0}.category h3{font-size:18px;letter-spacing:-.3px}.category p{font-size:14px;min-height:46px}.category-bottom{font-size:11px;letter-spacing:0}.hero-bottom{align-items:flex-start;gap:12px}.hero-bottom>span,.hero-bottom>a{font-size:11px;letter-spacing:0}.partnership h2{font-size:34px}.footer-top nav{flex-wrap:wrap;gap:16px}.product-facts{grid-template-columns:1fr 1fr}}
.partnership-copy .contact-email{color:var(--paper);text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.contact-email:hover{color:var(--yellow)}
