/* Living Garden: image-based spatial composition, not a medical simulation. */
.living-garden{background:#071e1b;isolation:isolate;--camera-x:0px;--camera-y:0px;--journey:0px;--canopy-x:0px;--canopy-y:0px;--camera-tilt:0deg}
.garden-environment{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:paint;background:#071e1b}
.garden-distance{position:absolute;inset:-7%;transform:translate3d(var(--camera-x),calc(var(--camera-y) - var(--journey)),0) scale(1.08);will-change:transform}
.garden-distance img{width:100%;height:100%;object-fit:cover;object-position:63% center;filter:saturate(.88)}
.garden-atmosphere{position:absolute;inset:0;background:linear-gradient(90deg,#031c1dd9 0%,#082b2670 42%,#0a302018 75%),linear-gradient(0deg,#031a1b8c,transparent 65%)}
.garden-light{position:absolute;inset:-10%;background:radial-gradient(ellipse at 77% 20%,#93e4c12e,transparent 34%),radial-gradient(ellipse at 10% 80%,#45cdb315,transparent 42%);mix-blend-mode:screen;animation:garden-breathe 14s ease-in-out infinite alternate}
.garden-near{position:absolute;left:-190px;bottom:-120px;width:min(47vw,720px);opacity:.62;filter:blur(2px);transform:translate3d(calc(var(--camera-x) * -2),calc(var(--camera-y) * -2),0) rotate(157deg);will-change:transform}
.garden-near img{display:block;width:100%;height:auto}
#garden-air{position:absolute;inset:0;width:100%;height:100%;opacity:.8}
.garden-vignette{position:absolute;inset:0;box-shadow:inset 0 0 150px 35px #02171875}
.living-garden .preview-bar{background:#05221f;color:#d6e9db;border-bottom:1px solid #76b5a027;font-size:.8125rem;position:relative;z-index:6}
.living-garden .header{background:#082a28d9;color:#e7f4e9;border-bottom:1px solid #98cab22b;backdrop-filter:blur(18px);position:sticky;top:0;z-index:10;padding-top:17px;padding-bottom:17px}
.living-garden .header .brand-mark{border-color:#a3d4b2;color:#e3f2d6;box-shadow:0 0 24px #54b69414}
.living-garden .header .brand-type{font-size:1.15rem}
.living-garden .desktop-nav a:after{background:#b3e6c7}
.living-garden .language button{color:#a3bfb2}
.living-garden .language button[aria-pressed=true]{color:#efffed}
.living-garden .language>span{color:#719887}
.living-garden .header .button{background:#cfebd7;color:#173b2f;box-shadow:0 4px 22px #93d6af16}
.living-garden .header .button:hover{background:#ebffef}
.living-garden .menu-button span{background:#d3e8d6}
.living-garden .mobile-nav{position:relative;z-index:9;background:#0c302b;color:#ebf6eb;border-bottom:1px solid #567b65}
.living-garden main{position:relative;z-index:1}
.living-garden .hero{background:transparent;max-width:1700px;min-height:760px;padding:30px 5% 35px;grid-template-columns:1fr 1.12fr;gap:2%;overflow:hidden;align-items:center;color:#f6fae9}
.living-garden .hero-copy{position:relative;z-index:2;padding:20px 0 36px;max-width:630px;text-shadow:0 2px 25px #001a15}
.living-garden .hero h1{font-size:clamp(3.5rem,5.7vw,6rem);letter-spacing:-.047em;line-height:1.06}
.living-garden .hero h1 em{color:#c0e7b0}
.living-garden .hero-eyebrow{color:#b9dec5;letter-spacing:.13em;font-size:.8125rem;max-width:470px}
.living-garden .hero-eyebrow:before{background:#8bd0b4;width:35px}
.living-garden .hero-description{color:#d6e8de;font-size:1.0625rem;line-height:1.85;max-width:465px}
.living-garden .hero .button{background:#d4ebce;color:#123829;box-shadow:0 8px 28px #0003;text-shadow:none}
.living-garden .hero .button:hover{background:#efffea}
.living-garden .hero .text-link{color:#d8e9d8;border-color:#83b79a;text-shadow:none}
.living-garden .hero-caption{color:#b5d0c0;font-size:.875rem}
.living-garden .fine-rule{background:#88bca0}
.garden-stage{position:relative;min-width:0;height:660px;perspective:1300px;isolation:isolate}
.garden-canopy{position:absolute;left:-17%;top:0;width:140%;aspect-ratio:3/2;transform-origin:88% 14%;transform:translate3d(var(--canopy-x),var(--canopy-y),25px) rotate(var(--camera-tilt));will-change:transform}
.garden-branch{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 22px 16px #00181073);pointer-events:none}
.garden-fruits{position:absolute;inset:0}
.garden-fruit{position:absolute;left:var(--fruit-x);top:var(--fruit-y);width:var(--fruit-size,10%);aspect-ratio:1/2;background:transparent;padding:0;border:0;transform:translate(-50%,-50%);cursor:pointer;touch-action:manipulation;z-index:2;min-width:44px;min-height:44px;outline-offset:-10px!important}
.garden-fruit-visual,.garden-card-fruit{display:block;width:100%;height:100%;background-image:url('assets/garden-fruits.png');background-repeat:no-repeat;background-size:313.469388% 100%;background-position:0 50%;pointer-events:none;filter:drop-shadow(4px 10px 6px #041f1660);transform-origin:64% 17%}
.garden-fruit{aspect-ratio:490/1024;transform:translate(-64%,-17%)}
.garden-fruits{opacity:0;transition:opacity .5s}
.garden-ready .garden-fruits{opacity:1}
.garden-fruit:before{content:'';position:absolute;inset:31% 20%;border:1px solid #bcebd652;border-radius:50%;opacity:.45;transition:opacity .2s,box-shadow .2s;pointer-events:none}
.garden-fruit:hover:before,.garden-fruit:focus-visible:before{opacity:1;box-shadow:0 0 24px #b4f7bb66}
.garden-fruit[data-falling=true]:before{opacity:0}
.garden-fruit[data-falling=true]{cursor:default}
.garden-halo{position:absolute;left:1%;right:2%;bottom:53px;height:235px;perspective:500px;pointer-events:none;z-index:-1;transform:translate3d(calc(var(--canopy-x) * -.3),0,0)}
.garden-halo span{position:absolute;inset:0;border:1px solid #b0e0bc45;border-radius:50%;transform:rotateX(62deg) rotateZ(-15deg);box-shadow:0 0 24px #8be3b51a,inset 0 0 24px #8be3b50a}
.garden-halo span:nth-child(2){inset:25px 12%;border-color:#f0d49a52}
.garden-halo span:nth-child(3){inset:49px 24%;border-color:#68c6b454}
.garden-stage-label{position:absolute;right:4%;top:18px;display:flex;align-items:center;gap:12px;color:#d0ecd4;font-size:.8125rem;letter-spacing:.07em;z-index:3;text-shadow:0 2px 12px #001b12}
.garden-cross{font-size:1.6rem;font-weight:200;color:#d8dfad}
.garden-stage-hint{position:absolute;right:2%;bottom:210px;display:flex;gap:12px;align-items:center;max-width:255px;padding:12px 16px;border:1px solid #b7dac138;border-radius:10px;background:#082a26db;backdrop-filter:blur(8px);box-shadow:0 10px 30px #001a1633;pointer-events:none}
.garden-stage-hint>span{font-size:1.4rem;color:#c8edb9}
.garden-stage-hint p{font-size:.8125rem;line-height:1.6;color:#c6ddcc}
.garden-journal{position:absolute;left:4%;right:25%;bottom:58px;z-index:4;padding:22px 25px;background:linear-gradient(125deg,#eaf5e9f0,#c5ddcae6);backdrop-filter:blur(18px);border:1px solid #edfff29c;border-radius:15px;color:#183e30;box-shadow:0 20px 60px #00140e4d,inset 0 1px #fff;transform:translate3d(calc(var(--canopy-x) * -.5),calc(var(--canopy-y) * -.5),60px);transition:box-shadow .2s}
.garden-journal:hover{box-shadow:0 25px 65px #00140e70,inset 0 1px #fff}
.garden-journal .world-card-title{font-size:2.15rem;margin-top:11px}
.garden-journal .world-card-label{font-size:.75rem;color:#39644f}
.garden-scene-caption{position:absolute;bottom:9px;right:7%;font-size:.75rem;line-height:1.6;color:#b8cfbc;max-width:350px;text-align:right}
.living-garden .principles{position:relative;background:#0b302ade;color:#d9ebd8;border-color:#a4cca130;backdrop-filter:blur(8px);padding-top:25px;padding-bottom:25px}
.living-garden .principles>span:nth-child(even){color:#b9cc8a}
.living-garden .section{width:calc(100% - 9%);max-width:1480px;margin:70px auto;padding:65px 5.8%;background:linear-gradient(135deg,#f7faf4fa,#edf5ebf2);border:1px solid #e0f1d5a6;border-radius:24px;box-shadow:0 25px 80px #0017115c,inset 0 1px 0 #fff;position:relative}
.living-garden .section:before{content:'';position:absolute;inset:-1px 16% auto;height:1px;background:linear-gradient(90deg,transparent,#e2ffdd,transparent);pointer-events:none}
.living-garden .botanical-section{margin-top:62px}
.living-garden .section-heading{margin-bottom:36px}
.living-garden .section .eyebrow{color:#286c59}
.living-garden .section h2 em{color:#587a56}
.living-garden .plant-card{background:#fffef9;border-color:#cbdcca;border-radius:14px;box-shadow:0 9px 22px -15px #1b4e3140;transition:transform .25s,box-shadow .25s,border-color .25s;transform-style:preserve-3d}
.living-garden .plant-card:hover{box-shadow:0 18px 36px -15px #143f324f;border-color:#88ad91;transform:translateY(-5px)}
.living-garden .plant-art{isolation:isolate}
.garden-card-fruit{position:absolute;left:50%;top:0;width:80px;height:160px;z-index:4;opacity:0;transform:translateX(-50%);filter:drop-shadow(3px 9px 6px #082e2450)}
.garden-card-fruit[data-kind=fig]{background-size:260.338983% 100%;background-position:52.854123% 50%;height:139px}
.garden-card-fruit[data-kind=dates]{background-size:352.293578% 100%;background-position:100% 50%;height:188px}
.living-garden .practice-section{background:linear-gradient(125deg,#e4f0e6fa,#f5f8edf7)}
.living-garden .first-section{background:linear-gradient(140deg,#f6f8eeed,#dceadbfa)}
.living-garden .profile-note{box-shadow:10px 10px 0 -4px #cdddca;background:#f9fcf4}
.living-garden .focus-card{background:linear-gradient(145deg,#edf3e7,#dde9d9)}
.living-garden .focus-card:nth-child(2){background:linear-gradient(145deg,#f3f1e6,#e7eddc)}
.living-garden .specialty-list>div{background:linear-gradient(130deg,#fafdf5,#d9ead8);box-shadow:0 7px 18px -16px #144533}
.living-garden .digital-note{background:linear-gradient(110deg,#092f2a,#1e5949);border-color:#688d71;box-shadow:0 16px 35px -22px #082d2780}
.living-garden .contact-section{position:relative;width:calc(100% - 9%);max-width:1480px;margin:90px auto 70px;padding:65px 5.8%;border-radius:24px;border:1px solid #85b68d4a;background:linear-gradient(120deg,#082c28f5,#153d2beb);backdrop-filter:blur(12px);box-shadow:0 25px 90px #0019144d}
.living-garden .contact-section .eyebrow{color:#a9d6b7}
.living-garden .footer{background:#061f1def;color:#e7f0db;border-top:1px solid #809f7638;padding-bottom:95px;position:relative;z-index:1}
.living-garden .footer .brand-mark{border-color:#9abb91}
.living-garden .footer p,.living-garden .footer-bottom{color:#b3c9b2}
.living-garden .footer-bottom{border-color:#4a685344}
.garden-controls{position:fixed;right:24px;bottom:20px;z-index:20;display:flex;align-items:center;gap:3px;background:#062a26ed;color:#e3f2d9;border:1px solid #abc79b70;box-shadow:0 5px 35px #001a1459;backdrop-filter:blur(16px);border-radius:50px;padding:5px 7px}
.garden-controls[hidden]{display:none}
.garden-controls button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:7px 13px;background:transparent;font-size:.875rem;line-height:1.4;border-radius:24px;color:inherit}
.garden-controls button:hover{background:#c2e2bf18}
.garden-controls button[aria-disabled=true]{cursor:default;color:#c2ccbb}
.garden-controls #garden-reset{font-size:1.6rem;min-width:44px;padding:4px 10px}
.garden-control-icon{font-size:1.2rem;color:#c5deb1}
.garden-control-divider{width:1px;height:20px;background:#8dae7f4a}
.garden-paused .garden-light,.garden-hidden .garden-light{animation-play-state:paused}
.garden-paused .garden-distance,.garden-paused .garden-near,.garden-paused .garden-canopy,.garden-paused .garden-journal{will-change:auto}
.garden-paused .garden-fruit{cursor:default}
.garden-paused .garden-fruit:before{opacity:0}
.garden-paused .plant-card:hover{transform:none}
@keyframes garden-breathe{0%{opacity:.5;transform:translate3d(-10px,0,0)}100%{opacity:1;transform:translate3d(15px,-10px,0)}}
@media(min-width:1600px){.living-garden .hero{min-height:850px}.garden-stage{height:730px}.garden-canopy{top:15px}.garden-stage-hint{bottom:250px}.garden-journal{bottom:85px}.garden-scene-caption{bottom:32px}}
@media(max-width:1180px){.living-garden .hero{padding:24px 5% 30px;min-height:700px;grid-template-columns:1.05fr 1fr}.living-garden .hero h1{font-size:clamp(3.5rem,6vw,4.7rem)}.garden-stage{height:630px}.garden-canopy{width:160%;left:-22%;top:45px}.garden-journal{left:3%;right:7%;bottom:58px;padding:21px}.garden-journal .world-card-title{font-size:1.95rem}.garden-stage-hint{right:0;bottom:231px;max-width:225px}.garden-stage-label{top:16px;right:0}.garden-halo{bottom:110px}.living-garden .section{padding:58px 5%;margin:56px auto}.living-garden .contact-section{padding:58px 5%}}
@media(max-width:850px){.living-garden .hero{grid-template-columns:1fr 1fr;min-height:650px;gap:0}.living-garden .hero h1{font-size:clamp(2.9rem,6.3vw,4.2rem)}.living-garden .hero-description{font-size:1rem}.living-garden .hero-eyebrow{font-size:.75rem;letter-spacing:.09em}.garden-stage{height:605px}.garden-canopy{width:180%;left:-28%;top:56px}.garden-stage-label{font-size:.75rem;gap:8px;top:32px}.garden-journal{left:3%;right:0;bottom:43px;padding:19px}.garden-journal .world-card-title{font-size:1.7rem}.garden-stage-hint{bottom:215px;max-width:190px;padding:9px 12px}.garden-stage-hint p{font-size:.75rem}.garden-scene-caption{bottom:0;right:0;max-width:260px}.living-garden .section{width:92%;padding:52px 5%;border-radius:19px}.living-garden .contact-section{width:92%;border-radius:19px;margin:60px auto}.garden-near{width:70vw;left:-170px}}
@media(max-width:620px){.garden-distance{inset:-3%;transform:none!important}.garden-distance img{object-position:64% center}.garden-atmosphere{background:linear-gradient(90deg,#052623c4,#062a2459),linear-gradient(0deg,#051f1e99,transparent 60%)}.garden-near{display:none}.garden-vignette{box-shadow:inset 0 0 80px #001e1759}.living-garden .header{padding:12px 5%}.living-garden .header .brand-type{font-size:1rem}.living-garden .hero{grid-template-columns:1fr;padding:38px 6% 18px;min-height:0;gap:0}.living-garden .hero-copy{padding:0;max-width:none}.living-garden .hero h1{font-size:clamp(3rem,12.2vw,4.7rem);margin-bottom:22px}.living-garden .hero-eyebrow{font-size:.75rem;letter-spacing:.075em}.living-garden .hero-description{max-width:420px;margin-bottom:22px}.living-garden .hero-caption{margin-top:19px;font-size:.8125rem}.garden-stage{height:490px;width:100%;max-width:490px;justify-self:center;margin-top:25px}.garden-canopy{width:148%;left:-14%;top:-5px}.garden-stage-label{top:0;left:0;right:auto;font-size:.75rem}.garden-journal{left:0;right:20%;bottom:35px;padding:18px 20px;transform:none!important}.garden-journal .world-card-title{font-size:1.85rem}.garden-journal .world-card-label{font-size:.75rem;letter-spacing:.08em}.garden-stage-hint{right:0;bottom:214px;max-width:190px}.garden-scene-caption{font-size:.75rem;bottom:-3px;right:0;max-width:300px}.garden-halo{bottom:67px;height:200px}.living-garden .principles{font-size:.8125rem;padding:19px 5%;gap:9px}.living-garden .section{width:92%;margin:32px auto;padding:38px 6%;border-radius:18px}.living-garden .section-heading{margin-bottom:28px}.living-garden .section h2{font-size:2.4rem}.living-garden .section .eyebrow{font-size:.8125rem}.living-garden .contact-section{width:92%;padding:39px 6%;margin:36px auto}.living-garden .contact-section h2{font-size:2.8rem}.living-garden .plant-art{height:260px}.living-garden .plant-grid[data-active=foods] .plant-copy{padding-left:22px;padding-right:22px}.garden-controls{right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:3px 5px}.garden-controls button{font-size:.8125rem;padding:7px 11px;gap:8px}.living-garden .footer{padding-bottom:96px}.garden-light{animation:none}.garden-card-fruit{display:none}}
@media(max-width:360px){.garden-stage{height:435px}.garden-canopy{top:5px;width:160%;left:-22%}.garden-journal{right:7%;bottom:23px;padding:16px}.garden-journal .world-card-title{font-size:1.7rem}.garden-stage-hint{bottom:204px;max-width:160px}.garden-scene-caption{bottom:-13px}.living-garden .hero h1{font-size:2.95rem}.living-garden .section{padding-left:6%;padding-right:6%}.living-garden .section h2{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){.garden-light{animation:none}.garden-distance,.garden-near,.garden-canopy,.garden-journal,.garden-halo{transform:none!important}.garden-fruit:before{display:none}.living-garden .plant-card:hover{transform:none}}
@media(min-width:1181px){.garden-canopy{width:125%;left:-8%;top:-15px}.garden-journal{bottom:24px}.garden-stage-hint{left:0;right:auto;top:145px;bottom:auto;max-width:210px}.garden-scene-caption{bottom:-13px}}
