/* Rizwa deck identity: warm ivory, tonal teal, stone-inspired geometry. */
:root {
 --color-deep:#2c6268; --color-deep-soft:#3b8189; --color-teal:#3bbfba;
 --color-offwhite:#faf9f5; --color-teal-soft:#d9f0f2;
 --text-dark:#244f54; --text-muted:#53696b; --text-on-dark:#fff; --text-on-dark-muted:#d9f0f2;
 --font-heading:'IBM Plex Sans',sans-serif; --font-body:'Roboto',sans-serif;
 --gradient-hero:linear-gradient(130deg,#faf9f5,#d9f0f2);
 --gradient-brand:linear-gradient(130deg,#2c6268,#3b8189);
 --gradient-teal-glow:linear-gradient(130deg,#d9f0f2,#faf9f5);
 --shadow-card:0 12px 35px -25px rgba(44,98,104,.2); --shadow-soft:0 16px 40px -25px rgba(44,98,104,.25);
 --radius-md:26px; --container-w:1240px;
}
body {background:var(--color-offwhite)}
h1,h2,h3,h4 {letter-spacing:-.035em;font-weight:500;color:var(--color-deep)}
h2 {font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.13}
p {line-height:1.75}
:focus-visible {outline:3px solid #2c6268;outline-offset:5px}
.skip-link {position:fixed;top:-100px;left:20px;z-index:4000;padding:14px;background:white;color:#2c6268}
.skip-link:focus {top:10px}
.navbar,.navbar.is-scrolled {background:rgba(250,249,245,.97);padding:12px 0;border-bottom:1px solid #2c626815;box-shadow:none;backdrop-filter:blur(12px)}
.brand {display:inline-flex;align-items:center;gap:11px;flex-shrink:0}
.brand-symbol {width:35px;height:45px;object-fit:contain;mix-blend-mode:multiply}
.brand-wordmark {width:98px;height:40px;object-fit:contain;mix-blend-mode:multiply}
.nav-links {gap:28px}
.nav-links a {color:var(--color-deep);font-size:.88rem;font-weight:500;opacity:1}
.nav-toggle span {background:var(--color-deep)}
.eyebrow {font-size:.69rem;letter-spacing:.15em;opacity:1;color:#3b8189;font-weight:600}
.btn-primary {background:#2c6268;color:#fff;box-shadow:none;font-weight:500}
.btn-primary:hover {background:#245158;box-shadow:none}
.btn-outline-dark {border:1px solid #2c6268;background:transparent;font-weight:500}
.btn-ringed:after {display:none}
.text-link {display:inline-flex;align-items:center;gap:10px;font-weight:500;font-size:.93rem;color:#2c6268;border:0;border-bottom:1px solid #2c62684a;background:transparent;padding:5px 0;align-self:flex-start}
.text-link:hover {border-color:#2c6268}
.btn-row {align-items:center;gap:28px}
.brand-hero {padding:150px 0 85px;overflow:hidden;position:relative}
.hero-grid {display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.hero-copy h1 {font-size:clamp(2.7rem,4.8vw,4.7rem);line-height:1.07;font-weight:400;margin:15px 0 28px;letter-spacing:-.05em}
.hero-copy h1 span {color:#3b8189}
.hero-copy>p {max-width:440px;font-size:.98rem}
.hero-copy .hero-subtitle {font-size:1.15rem;font-weight:500;color:#2c6268;line-height:1.5}
.hero-art {position:relative;min-height:580px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.stone-small {width:110px;height:67px;background:#3bbfba;border-radius:54% 46% 57% 43% / 55% 48% 52% 45%;transform:rotate(-8deg);margin-left:65px}
.stone-middle {width:210px;height:115px;background:#3b8189;border-radius:47% 53% 39% 61% / 48% 59% 41% 52%;transform:rotate(6deg);margin-left:15px}
.stone-landscape {width:100%;height:290px;border-radius:48% 52% 42% 44% / 48% 52% 45% 49%;overflow:hidden}
.stone-landscape img {width:100%;height:100%;object-fit:cover;object-position:50% 65%}
.art-caption {display:flex;justify-content:space-between;width:90%;font-size:.72rem;color:#53696b;margin-top:10px;letter-spacing:.03em}
.philosophy {background:#d9f0f2;position:relative;border-radius:70px 70px 0 0}
.editorial-intro {max-width:740px;margin-bottom:60px}
.editorial-intro p {max-width:650px;margin-top:25px}
.principles {display:grid;grid-template-columns:repeat(3,1fr);gap:55px}
.principles article {border-top:1px solid #2c626840;padding-top:22px}
.principle-number {font-size:.75rem;color:#3b8189}
.principles h3 {font-size:3rem;margin:24px 0 15px}
.principles p {margin:0}
.approach-section {background:#fff}
.approach-grid {display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.approach-grid p {max-width:520px}
.approach-list {padding:0;margin:0;list-style:none}
.approach-list li {display:flex;gap:24px;padding:28px 0;border-bottom:1px solid #2c626825}
.approach-list li>span {flex-shrink:0;width:45px;height:40px;border-radius:46% 54% 57% 43%;background:#d9f0f2;display:grid;place-items:center;font-size:.75rem}
.approach-list h3 {font-size:1.3rem;letter-spacing:-.02em}
.approach-list p {margin:0;font-size:.93rem}
.section-heading {display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}
.preview-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.experience-tile img {width:100%;height:290px;object-fit:cover;border-radius:48% 52% 18px 18px / 25% 25% 18px 18px;transition:border-radius .3s}
.experience-tile:hover img {border-radius:30px}
.experience-tile>div {padding:24px 0}
.experience-tile h3 {font-size:1.4rem;display:flex;justify-content:space-between}
.preview-note {font-size:.85rem;margin-top:15px}
.tools-strip {background:#eaf3ef}
.tools-row {display:flex;align-items:center;justify-content:space-between;gap:40px}
.tools-row h2 {font-size:2rem}
.tools-row p {margin:0}
.brand-cta {text-align:center;padding:65px 24px;background:#d9f0f2;border-radius:45% 45% 35px 35px / 15% 15% 35px 35px}
.brand-cta h2 {font-size:clamp(2rem,4vw,3.7rem)}
.brand-cta p {margin:22px 0}
.site-footer {background:#faf9f5;color:#2c6268;border-top:1px solid #2c626825;padding-top:55px}
.site-footer p,.site-footer a,.site-footer span,.site-footer h4 {color:#2c6268}
.footer-brand p {margin-top:24px;font-size:.95rem}
.footer-bottom {border-color:#2c626825;font-size:.75rem;gap:15px;flex-wrap:wrap}
.hero-page {background:#d9f0f2;min-height:360px;padding:150px 0 60px;border-radius:0 0 65px 0}
.hero:before,.hero:after {display:none}
.hero h1 {color:#2c6268;font-weight:400;font-size:clamp(2.5rem,5vw,4.2rem)}
.hero p.lead {color:#53696b;font-size:1.05rem}
.hero-inner .eyebrow {color:#2c6268}
.hero .container {width:100%}
.about-story {display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;align-items:center}
.logo-panel {padding:25px 50px;background:#faf9f5;max-width:320px;margin:auto}
.logo-panel img {width:100%;mix-blend-mode:multiply}
.pillar-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:20px 45px}
.pillar-grid>div {border-top:1px solid #2c626830;padding:25px 0}
.pillar-grid span {font-size:.7rem;color:#3b8189}
.pillar-grid h3 {margin-top:20px;font-size:1.5rem}
.card:hover {transform:none}
.card {box-shadow:none;border-color:#2c626820}
#eventsGrid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:36px}
.filters-grid {grid-template-columns:repeat(4,1fr)}
.preview-card {display:flex;flex-direction:column;border:1px solid #2c626820;border-radius:28px;box-shadow:none;background:white;overflow:hidden}
.preview-image {position:relative;flex-shrink:0}
.preview-photo {width:100%;height:220px;object-fit:cover}
.preview-image .badge {position:absolute;top:20px;left:20px;background:#faf9f5;color:#2c6268;font-size:.68rem}
.event-card-body {padding:25px!important;height:auto;flex:1;gap:8px}
.event-card-body .eyebrow {margin:0;font-size:.62rem}
.event-card-body h3 {font-size:1.5rem;margin:8px 0}
.event-card-body p {font-size:.92rem;flex:1}
.preview-dialog {padding:0;border:0;border-radius:30px;width:min(520px,calc(100% - 32px));max-height:90vh;color:#2c6268;background:#faf9f5;box-shadow:0 25px 100px #163b3e50}
.preview-dialog::backdrop {background:#163b3eb3}
.preview-dialog-body {padding:30px}
.preview-dialog h2 {font-size:2rem}
.preview-close {position:absolute;top:15px;right:15px;width:42px;height:42px;border:0;border-radius:50%;font-size:1.6rem;background:#faf9f5;color:#2c6268}
.preview-notice {background:#d9f0f2;padding:18px;border-radius:16px;font-size:.88rem}
.modal-open {overflow:hidden}
.reveal {opacity:1;transform:none}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr 1fr;gap:20px}.hero-art{min-height:420px}.stone-landscape{height:230px}.hero-copy h1{font-size:3rem}.approach-grid,.about-story{gap:40px}.preview-grid{gap:18px}.experience-tile img{height:220px}.tools-row{align-items:flex-start;flex-direction:column}}
@media(max-width:780px){.nav-links{background:#faf9f5;visibility:hidden;box-shadow:-10px 0 40px #2c626815}.nav-links.is-open{visibility:visible}.hero-grid,.about-story,.approach-grid{grid-template-columns:1fr}.brand-hero{padding:125px 0 55px}.hero-copy h1{font-size:clamp(2.7rem,8vw,3.8rem)}.hero-art{max-width:450px;width:100%;margin:auto;min-height:370px}.stone-small{width:85px;height:50px}.stone-middle{width:155px;height:80px}.stone-landscape{height:220px}.principles{gap:25px}.principles h3{font-size:2rem}.principles p{font-size:.9rem}.philosophy{border-radius:40px 40px 0 0}.section-heading{align-items:start;flex-direction:column}.preview-grid{grid-template-columns:1fr}.experience-tile img{height:280px}.experience-tile>div{padding:18px 0}.pillar-grid{grid-template-columns:repeat(2,1fr)}#eventsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-page{padding-top:130px}.about-story .logo-panel{max-width:220px}.brand-cta{border-radius:40px;padding:50px 20px}.logo-panel{padding:0}}
@media(max-width:540px){.principles{grid-template-columns:1fr;gap:20px}.principles article{display:grid;grid-template-columns:30px 1fr;gap:0 15px}.principles h3{margin:0 0 15px}.principles p{grid-column:2}#eventsGrid{grid-template-columns:1fr}.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-symbol{width:29px;height:38px}.brand-wordmark{width:85px}.hero-art{margin-top:20px}.footer-bottom{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.hidden { display:none !important; }
section[id] { scroll-margin-top:90px; }
@media(min-width:781px) and (max-width:1000px){.hero-copy h1{font-size:clamp(2.35rem,4.6vw,3rem)}}

.contact-details {display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin:30px 0;font-size:1.05rem}

/* Supplied transparent artwork; SVG viewports remove empty canvas without altering the logo. */
.brand-symbol,.brand-wordmark {mix-blend-mode:normal;overflow:hidden}
.stacked-logo {display:block;width:100%;height:auto;overflow:hidden}
.footer-logo {display:block;width:90px;height:127px;overflow:hidden}
.site-footer {background:#2c6268;color:#d9f0f2}
.site-footer p,.site-footer a,.site-footer span,.site-footer h4 {color:#d9f0f2}
.footer-bottom {border-color:#d9f0f240}
.site-footer :focus-visible {outline-color:#d9f0f2}
.brand-wordmark {height:auto;aspect-ratio:1836 / 537}
.brand-symbol {height:auto;aspect-ratio:1500 / 1931}

/* Spacious, concise homepage tiles. */
.tile-home {padding-top:100px}
.tile-hero-wrap {margin-bottom:24px}
.statement-tile {position:relative;min-height:700px;border-radius:36px 36px 120px 36px;overflow:hidden;background:#2c6268;isolation:isolate}
.statement-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.statement-tile:after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,49,54,.78),rgba(16,49,54,.12));z-index:-1}
.statement-copy {padding:54px 60px;min-height:700px;display:flex;flex-direction:column;justify-content:space-between}
.statement-copy .eyebrow {color:#d9f0f2}
.statement-copy h1 {font-size:clamp(4.5rem,8.8vw,8.2rem);line-height:.95;letter-spacing:-.065em;font-weight:400;color:#faf9f5;margin:44px 0}
.statement-copy h1 em {font-style:normal;color:#b6e4e3}
.statement-bottom {display:flex;justify-content:space-between;align-items:center;gap:24px;padding-right:32px}
.statement-bottom p {color:#faf9f5;margin:0;font-size:1.05rem}
.tile-link {display:inline-flex;gap:40px;color:#faf9f5;border-bottom:1px solid #ffffff80;padding:12px 0;font-size:1.15rem}
.tile-link:hover {color:#d9f0f2}
.life-tiles {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.life-tile {position:relative;min-height:540px;padding:42px;display:flex;flex-direction:column;align-items:flex-start;border-radius:36px;overflow:hidden;isolation:isolate;color:#faf9f5;background:#2c6268}
.life-tile>img {position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-2;transition:transform .5s}
.life-tile:hover>img {transform:scale(1.035)}
.tile-move:after,.tile-reset:after {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#163b3e95,#163b3e10 80%)}
.tile-kicker {font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.life-tile h2 {font-size:clamp(3.4rem,5.6vw,5.4rem);line-height:1;letter-spacing:-.055em;color:inherit;margin:34px 0;z-index:1}
.tile-connect {background:#d9f0f2;color:#2c6268;border-radius:36px 120px 36px 36px}
.connection-stones {position:absolute;bottom:40px;left:42px;display:flex;align-items:center}
.connection-stones i {width:150px;height:105px;border-radius:50% 44% 42% 48%;background:#3b8189;transform:rotate(-18deg)}
.connection-stones i+i {background:#3bbfba;transform:rotate(18deg);margin-left:-30px}
.tile-reset {border-radius:36px 36px 36px 120px}
.tile-nourish {background:#e9eee5;color:#2c6268}
.tile-bottom-label {margin-top:auto;max-width:70%;font-size:.95rem}
.tile-contact {padding-top:110px;padding-bottom:110px}
.tile-contact p {font-size:.95rem;margin-bottom:24px}
.tile-contact>a {display:flex;justify-content:space-between;gap:20px;font-family:var(--font-heading);font-size:clamp(2.5rem,5.5vw,5rem);line-height:1.1;letter-spacing:-.05em;color:#2c6268}
.tile-home a:focus-visible {outline-offset:6px}
.statement-tile a:focus-visible {outline-color:#faf9f5}
@media(max-width:780px){
 .tile-home{padding-top:88px}.statement-tile,.statement-copy{min-height:620px}.statement-copy{padding:32px 26px}.statement-copy h1{font-size:clamp(3.6rem,11vw,6rem)}.statement-tile{border-radius:26px 26px 75px 26px}.statement-bottom{align-items:flex-start;flex-direction:column;gap:12px;padding:0}.statement-bottom p{font-size:.95rem}.life-tiles{gap:16px}.life-tile{padding:28px;min-height:420px}.life-tile h2{font-size:3.4rem}.tile-kicker{font-size:.65rem}.connection-stones{left:28px}.connection-stones i{width:105px;height:80px}.tile-contact{padding-top:70px;padding-bottom:70px}
}
@media(max-width:540px){
 .life-tiles{grid-template-columns:1fr}.life-tile{min-height:450px}.life-tile h2{font-size:4.4rem}.statement-copy h1{font-size:clamp(3.3rem,13vw,4.6rem)}.statement-copy,.statement-tile{min-height:590px}.tile-contact>a{font-size:2.8rem}.tile-arrow{right:28px;bottom:28px}
}

/* Shared oversized tile language; functional controls retain their existing structure. */
.inner-tiles {padding-top:100px}
.inner-tiles .hero-page {margin:0 auto 24px;width:calc(100% - 48px);max-width:1192px;min-height:440px;padding:52px 40px;background:#d9f0f2;border-radius:36px 36px 110px 36px;display:flex;align-items:center}
.inner-tiles .hero-inner {max-width:none;margin:0}
.inner-tiles .hero h1 {font-size:clamp(3.5rem,6.6vw,6.3rem);line-height:1;letter-spacing:-.055em;max-width:1050px;margin:30px 0}
.inner-tiles .hero p.lead {max-width:650px;margin-bottom:0}
.inner-tiles>.section {padding-top:32px;padding-bottom:70px}
.about-tile-grid {display:grid;grid-template-columns:1fr 1fr;gap:24px}
.info-tile {padding:44px;border-radius:36px;min-height:550px;display:flex;flex-direction:column;align-items:flex-start}
.info-tile h2 {font-size:clamp(3.6rem,5.8vw,5.5rem);line-height:1;margin:30px 0}
.info-tile>p {max-width:440px;margin-top:auto;padding-top:20px}
.identity-tile {background:#2c6268;color:#faf9f5}
.identity-tile h2,.identity-tile .eyebrow {color:#faf9f5}
.listening-tile {background:#e9eee5;border-radius:36px 110px 36px 36px}
.info-tile details {width:100%;border-top:1px solid #2c626840;margin-top:12px;padding-top:16px}
.info-tile summary {cursor:pointer;font-weight:500}
.info-tile details p {margin-bottom:0}
.pillars-section {padding-top:80px;padding-bottom:80px}
.pillars-section>h2 {font-size:clamp(3rem,5vw,4.5rem);margin:25px 0 40px}
.pillars-section .pillar-grid {gap:18px}
.pillars-section .pillar-grid>div {background:#d9f0f2;border:0;border-radius:26px;padding:30px;min-height:195px;display:flex;flex-direction:column;justify-content:space-between}
.pillars-section .pillar-grid>div:nth-child(even) {background:#e9eee5}
.pillars-section .pillar-grid h3 {font-size:clamp(1.7rem,2.7vw,2.5rem);line-height:1.1;margin-bottom:0}
.operator-tile {display:grid;grid-template-columns:1.1fr 1fr;gap:50px;padding:50px;background:#fff;border-radius:36px;align-items:center}
.operator-tile h2 {margin-top:24px}
.experience-tiles #eventsGrid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.experience-tiles .preview-card {border:0;border-radius:36px;background:#e9eee5}
.experience-tiles .preview-photo {height:350px}
.experience-tiles .event-card-body {padding:30px!important}
.experience-tiles .event-card-body h3 {font-size:clamp(2.3rem,3.8vw,3.5rem);line-height:1.05;margin:12px 0 20px}
.experience-tiles .filters-card {background:white;border-radius:28px}
.contact-tiles .contact-info {background:#2c6268;color:#faf9f5;padding:36px;border-radius:36px 80px 36px 36px}
.contact-tiles .contact-info h2 {font-size:4.4rem;color:#faf9f5}
.contact-tiles .contact-info .eyebrow,.contact-tiles .contact-info a {color:#d9f0f2}
.contact-tiles .contact-details {font-size:1rem;overflow-wrap:anywhere}
.contact-tiles .contact-info .text-link {border-color:#d9f0f280}
.contact-tiles .contact-info :focus-visible {outline-color:#d9f0f2}
.contact-tiles .contact-form-card {padding:40px;border-radius:36px;background:#e9eee5}
.contact-tiles .contact-form-card h3 {font-size:2.2rem}
.calculator-tiles .hero-page {background:#e9eee5;min-height:360px}
.calculator-tiles .hero h1 {font-size:clamp(3.2rem,6vw,5.8rem);max-width:900px}
.calculator-tiles .card {border-radius:28px}
.calculator-tiles .nutrition-panel {background:#d9f0f2}
@media(max-width:900px){.about-tile-grid{gap:16px}.info-tile{padding:30px}.operator-tile{gap:30px;padding:35px}.experience-tiles .preview-photo{height:280px}}
@media(max-width:780px){.inner-tiles{padding-top:88px}.inner-tiles .hero-page{width:calc(100% - 32px);min-height:360px;padding:32px 12px;border-radius:26px 26px 75px 26px}.inner-tiles .hero h1{font-size:clamp(2.8rem,9vw,4.5rem)}.about-tile-grid,.operator-tile{grid-template-columns:1fr}.info-tile{min-height:460px}.info-tile h2{font-size:4rem}.pillars-section{padding-top:55px;padding-bottom:55px}.pillars-section .pillar-grid>div{padding:24px;min-height:170px}.operator-tile{padding:30px}.contact-tiles .contact-form-card{padding:28px}.experience-tiles .event-card-body h3{font-size:2.3rem}.calculator-tiles .hero h1{font-size:clamp(2.7rem,8vw,4rem)}}
@media(max-width:540px){.experience-tiles #eventsGrid{grid-template-columns:1fr}.experience-tiles .preview-photo{height:310px}.pillars-section .pillar-grid{gap:12px}.pillars-section .pillar-grid>div{padding:20px}.pillars-section .pillar-grid h3{font-size:1.6rem}.contact-tiles .contact-info{padding:28px}.info-tile h2{font-size:3.7rem}}
.identity-tile p,.contact-tiles .contact-info p {color:#faf9f5}
.calculator-tiles .lang-toggle-btn {color:#2c6268;border-color:#2c626860;background:#faf9f5}
.calculator-tiles .lang-toggle-btn:hover {color:#faf9f5;background:#2c6268}

/* Original vector figures inspired by Rizwa's soft stone silhouettes. */
.pillars-heading {display:flex;justify-content:space-between;align-items:center;gap:24px;margin:25px 0 40px}
.pillars-heading h2 {font-size:clamp(3rem,5vw,4.5rem);margin:0}
.pillars-heading .motion-toggle {flex-shrink:0;align-self:center;font-size:.8rem}
.pillars-section .pillar-grid>div {min-height:340px;overflow:hidden}
.pillar-figure {display:block;width:100%;height:210px;margin:10px auto;overflow:visible}
.figure-body {fill:#3b8189}.figure-head {fill:#2c6268}.figure-accent,.figure-spark {fill:#3bbfba}
.figure-ground {fill:#2c6268;opacity:.09}
.figure-limb,.figure-line {fill:none;stroke:#2c6268;stroke-linecap:round;stroke-linejoin:round}
.figure-limb {stroke-width:13}.figure-line {stroke-width:5}
.breath-ring {fill:none;stroke:#3b8189;stroke-width:2;opacity:.25;transform-origin:120px 103px}
.figure-motion,.friend {transform-box:fill-box;transform-origin:center}
@media(max-width:780px){.pillars-heading{align-items:flex-start;flex-direction:column}.pillars-heading .motion-toggle{align-self:flex-start}.pillars-section .pillar-grid>div{min-height:280px}.pillar-figure{height:160px}}
@media(max-width:540px){.pillar-figure{height:130px}.pillars-section .pillar-grid>div{min-height:250px}.pillars-section .pillar-grid h3{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.pillar-figure *{animation:none!important}.motion-toggle{display:none}}

/* Tiny decorative companion; reserved room keeps action text and hit areas clear. */
.companion-action {padding-inline-end:46px!important;position:relative}
.rizwa-companion {position:fixed;left:0;top:0;width:36px;height:42px;z-index:45;pointer-events:none;transition:transform .48s cubic-bezier(.22,.7,.3,1);filter:drop-shadow(0 3px 3px #163b3e20)}
.rizwa-companion[hidden] {display:none}
.rizwa-companion svg {width:100%;height:100%;overflow:visible}
.rizwa-companion.has-landed svg {animation:rabbit-settle 1s ease-out}
@keyframes rabbit-settle {0%{transform:translateY(-7px) rotate(-7deg)}45%{transform:translateY(2px) rotate(3deg)}75%{transform:translateY(-3px)}100%{transform:translateY(0)}}
@media(max-width:600px){.rizwa-companion{width:30px;height:36px}.companion-action{padding-inline-end:38px!important}}
@media(prefers-reduced-motion:reduce){.rizwa-companion{display:none!important}}
.about-tiles summary {list-style:none;padding-block:9px}
.about-tiles summary::-webkit-details-marker {display:none}
.about-tiles summary:before {content:'+';display:inline-block;width:20px}
.about-tiles details[open] summary:before {content:'−'}

/* Continuous decorative stories for the six wellbeing pillars. */
.pillar-card {cursor:default;touch-action:pan-y}
.is-active .friend-left {animation:friend-left 4.8s ease-in-out infinite}
.is-active .friend-right {animation:friend-right 4.8s ease-in-out infinite}
.is-active .figure-together .figure-motion {animation:mind-rise 4.8s ease-in-out infinite}
.is-active .figure-balance .figure-motion {animation:stones-balance 4.8s ease-in-out infinite;transform-origin:50% 100%}
@keyframes mind-rise {0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes friend-left {0%,100%{transform:translateX(0) rotate(0)}45%,65%{transform:translateX(12px) rotate(-5deg)}}
@keyframes friend-right {0%,100%{transform:translateX(0) rotate(0)}45%,65%{transform:translateX(-12px) rotate(5deg)}}
@keyframes stones-balance {0%,100%{transform:translateY(0) rotate(0)}22%{transform:translateY(-12px) rotate(-9deg)}48%{transform:translateY(-5px) rotate(7deg)}72%{transform:translateY(0) rotate(-3deg)}88%{transform:rotate(1deg)}}
@media(prefers-reduced-motion:reduce){.pillar-card *{animation:none!important}}

/* Refined stories: one shoe, sun/moon, sprouting bowl, floating meditation. */
.running-shoe {transform-origin:120px 160px}
.recovery-sun-icon {opacity:0;transform-origin:120px 103px}
.recovery-moon-icon {transform-origin:120px 103px}
.nutrition-plant {transform-origin:120px 120px;transform:scaleY(0);opacity:0}
.is-active .running-shoe {animation:shoe-run-jump 4.8s ease-in-out infinite}
.is-active .run-lines {animation:shoe-speed 4.8s ease-in-out infinite}
.is-active .recovery-moon-icon {animation:moon-to-morning 4.8s ease-in-out infinite}
.is-active .recovery-sun-icon {animation:morning-to-night 4.8s ease-in-out infinite}
.is-active .nutrition-plant {animation:plant-sprout 4.8s ease-in-out infinite}
.is-active .figure-breathe .figure-motion {animation:meditation-float 4.8s ease-in-out infinite}
@keyframes shoe-run-jump {0%,100%{transform:translate(0,0) rotate(0)}10%{transform:translate(-5px,-10px) rotate(-8deg)}20%{transform:translate(3px,0) rotate(4deg)}30%{transform:translate(-4px,-12px) rotate(-8deg)}40%{transform:translate(4px,0) rotate(4deg)}57%{transform:translate(0,-38px) rotate(-12deg)}70%{transform:translate(6px,-22px) rotate(5deg)}82%{transform:translate(0,2px) rotate(0)}90%{transform:translate(0,-5px)}}
@keyframes shoe-speed {0%,100%{opacity:1;transform:translateX(0)}20%,40%{opacity:.3;transform:translateX(-9px)}30%,55%{opacity:1;transform:translateX(0)}70%{opacity:0}}
@keyframes moon-to-morning {0%,100%{opacity:1;transform:scale(1)}20%,68%{opacity:0;transform:scale(.8)}85%{opacity:1;transform:scale(1)}}
@keyframes morning-to-night {0%,100%{opacity:0;transform:scale(.8)}25%,60%{opacity:1;transform:scale(1)}80%{opacity:0;transform:scale(.8)}}
@keyframes plant-sprout {0%,100%{transform:scaleY(0);opacity:0}12%{opacity:1}40%{transform:scaleY(1.06);opacity:1}55%,78%{transform:scaleY(1);opacity:1}95%{opacity:0;transform:scaleY(.15)}}
@keyframes meditation-float {0%,100%{transform:translateY(0)}30%{transform:translateY(-13px)}55%{transform:translateY(-8px)}78%{transform:translateY(-14px)}}
@media(prefers-reduced-motion:reduce){.pillar-card *{animation:none!important}}
