/* Aplenix final approved redesign — 1280px compact, consistent mascots */
:root{--container:1280px}
.container{width:min(1280px,calc(100% - 72px));margin-inline:auto}
.hero-grid{grid-template-columns:1.04fr .96fr;gap:4.4%;min-height:0;padding:58px 0}
.hero h1{font-size:clamp(56px,5.2vw,76px);letter-spacing:-.07em;margin:24px 0}
.hero-description{font-size:17px;max-width:540px}.hero-visual{max-width:610px}
.expertise-section{padding:49px 0 75px}.section-heading-line h2{font-size:clamp(36px,3.6vw,49px)}
.expertise-card{min-height:154px;padding:19px 14px;gap:11px}.expertise-card .icon-shell{width:57px;height:57px;flex-basis:57px}.expertise-card-copy{max-width:calc(100% - 69px)}.expertise-card strong{font-size:14px}.expertise-card small{font-size:12px;line-height:1.57}
.story-section,.method-section,.difference-section,.challenge-section,.engage-section,.home-faq-section,.insight-section,.service-benefits,.service-fit,.service-process,.about-philosophy,.about-grounding,.thinking-topics,.contact-next{padding-top:78px;padding-bottom:78px}
.story-grid{gap:7%;grid-template-columns:.94fr 1.06fr}.story-copy h2,.insight-grid h2{font-size:clamp(42px,4vw,61px)}.story-copy p,.insight-right p{font-size:15px;line-height:1.78}
.story-feature{min-height:415px;padding:35px 38px;background:radial-gradient(circle at 81% 83%,#2c45c8 0,#1f3595 35%,#14225e 78%)}
.feature-title{font-size:clamp(37px,3.5vw,49px);max-width:95%;align-self:flex-start;margin-top:34px;margin-bottom:130px;z-index:3;text-shadow:0 2px 4px #151f4d38}
.feature-bottom{max-width:58%;line-height:1.5;letter-spacing:.06em}
.buddy-splash{position:absolute;bottom:0;right:2%;height:58%;width:34%;display:flex;justify-content:center;align-items:end;pointer-events:none;z-index:2}
.buddy-splash img{object-fit:contain;object-position:bottom;height:100%;width:auto;filter:drop-shadow(0 18px 16px #0d19517c);animation:buddy-float 7s ease-in-out infinite}
@keyframes buddy-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.challenge-header h2,.difference-heading h2,.engage-text h2,.home-faq-intro h2,.fit-heading h2,.about-philosophy h2,.about-grounding h2{font-size:clamp(41px,3.8vw,55px)}
.challenge-card{min-height:345px;padding:27px 25px}.method-grid>div{padding:21px 10px 0 0}.method-grid h3{margin:19px 0 11px;font-size:27px}.difference-points>div{padding:19px 0}
.engage-layout{gap:7%}.engage-visual{min-height:475px;padding:34px;background:radial-gradient(circle at 55% 48%,#344eda 0,#2338aa 45%,#112063 90%)}.engage-visual:after{opacity:.45}
.engage-mascot{height:300px;display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.engage-mascot img{height:290px;width:auto;object-fit:contain;filter:drop-shadow(0 16px 18px #09135455);animation:buddy-float 7s ease-in-out infinite}.engage-mascot span{position:absolute;top:15px;right:0;background:#fff;color:#14267e;border-radius:10px;padding:11px 12px;font-size:11px;font-weight:800;box-shadow:0 12px 20px #101f6055}
/* Consistent contextual character panels: maximum one in each inner page */
.mascot-insight,.mascot-about,.mascot-service{padding:48px 0;background:#f3f6ff;border-block:1px solid #e3e9f7}.mascot-insight-grid,.mascot-about-grid,.mascot-service-grid{display:grid;grid-template-columns:290px 1fr;gap:8%;align-items:center}
.mascot-insight-art,.mascot-about-visual,.mascot-service-art{height:290px;border:1px solid #e0e7f8;border-radius:21px;background:radial-gradient(circle at 50% 50%,#fff 0,#e5ecff 90%);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}
.mascot-insight-art:before,.mascot-about-visual:before,.mascot-service-art:before{content:'';width:230px;height:230px;position:absolute;border:1px solid #b5c4f5;border-radius:50%;top:18px}
.mascot-insight-art img,.mascot-about-visual img,.mascot-service-art img{position:relative;z-index:2;height:280px;width:auto;object-fit:contain;filter:drop-shadow(0 11px 15px #182b7025)}
.mascot-insight h2,.mascot-about h2,.mascot-service h2{font-family:'DM Sans',Inter,sans-serif;font-size:clamp(33px,3.7vw,49px);line-height:1.1;letter-spacing:-.06em;margin:16px 0}
.mascot-insight p,.mascot-about p,.mascot-service p{font-size:15px;line-height:1.8;color:#64738a;max-width:650px;margin-bottom:22px}
.mascot-about-visual{background:radial-gradient(circle at 50% 44%,#4054cc,#182875 85%)}.mascot-about-visual:before{border-color:#8a9df877}.mascot-about-visual img{height:255px;filter:drop-shadow(0 15px 15px #07164b88)}
.mascot-contact{height:255px;border-radius:16px;margin:20px 0 25px;background:radial-gradient(circle at 50% 50%,#fff,#e8edff);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}
.mascot-contact:before{content:'';position:absolute;width:220px;height:220px;border-radius:50%;border:1px solid #b5c4f1;top:15px}
.mascot-contact img{position:relative;height:260px;object-fit:contain;width:auto;filter:drop-shadow(0 12px 15px #172a7026)}
.privacy-mascot{padding:23px 0;background:#f3f6fe}.privacy-mascot .container{display:flex;align-items:center;gap:22px}.privacy-mascot img{height:125px;width:auto;object-fit:contain}.privacy-mascot p{font-size:14px;line-height:1.7;color:#566782;max-width:600px}
.aside-card{padding:30px;background:linear-gradient(180deg,#f4f7ff,#fff 78%)}
@media(min-width:1400px){.hero h1{font-size:75px}}
@media(max-width:1280px){.hero h1{font-size:clamp(48px,5.55vw,69px)}.expertise-card{gap:10px;padding:14px 10px}.expertise-card .icon-shell{width:52px;height:52px;flex-basis:52px}.expertise-card-copy{max-width:calc(100% - 57px)}.expertise-card strong{font-size:13px}.expertise-card small{font-size:11.5px}}
@media(max-width:1050px){.container{width:min(840px,calc(100% - 56px))}.hero-grid{grid-template-columns:1fr;gap:22px;padding-top:48px}.hero h1{font-size:clamp(56px,7.4vw,75px)}.hero-visual{max-width:685px;justify-self:center}.expertise-grid{grid-template-columns:repeat(2,1fr)}.expertise-card{min-height:125px;padding:18px}.expertise-card .icon-shell{width:60px;height:60px;flex-basis:60px}.expertise-card-copy{max-width:calc(100% - 72px)}.expertise-card strong{font-size:16px}.expertise-card small{font-size:13px}.story-grid{grid-template-columns:1fr;gap:30px}.story-feature{max-width:760px}.engage-visual{min-height:425px}}
@media(max-width:790px){.container{width:calc(100% - 40px)}.hero-grid{padding-top:38px;padding-bottom:35px}.story-section,.method-section,.difference-section,.challenge-section,.engage-section,.home-faq-section,.insight-section,.service-benefits,.service-fit,.service-process,.about-philosophy,.about-grounding,.thinking-topics,.contact-next{padding:54px 0}.mascot-insight-grid,.mascot-about-grid,.mascot-service-grid{grid-template-columns:1fr;gap:26px}.mascot-insight-art,.mascot-about-visual,.mascot-service-art{max-width:430px;width:100%}.mascot-insight,.mascot-about,.mascot-service{padding:43px 0}.engage-mascot{height:250px}.engage-mascot img{height:240px}}
@media(max-width:560px){.container{width:calc(100% - 36px)}.hero h1{font-size:clamp(42px,10vw,55px)}.hero-description{font-size:14.5px}.expertise-section{padding:32px 0 45px}.expertise-grid{grid-template-columns:1fr}.expertise-card{min-height:114px}.expertise-card strong{font-size:15px}.expertise-card small{font-size:12.5px}.story-feature{padding:27px 24px;min-height:350px}.feature-title{font-size:34px;margin-top:23px;margin-bottom:130px}.feature-bottom{font-size:10px;max-width:65%}.buddy-splash{width:42%;height:53%;right:0}.mascot-insight h2,.mascot-about h2,.mascot-service h2{font-size:36px}.engage-visual{min-height:365px;padding:24px}.engage-mascot{height:235px}.engage-mascot img{height:215px}.engage-mascot span{font-size:10px;right:0;top:5px;max-width:135px}.privacy-mascot img{height:95px}}
@media(prefers-reduced-motion:reduce){.buddy-splash img,.engage-mascot img{animation:none!important}}
