.service-hero{height:900px;min-height:850px;background:radial-gradient(ellipse at 76% 40%,#e8ecdc55,transparent 55%),#f8f5ed}
.service-hero:after{display:none}.service-hero .hero-copy{max-width:560px;padding-top:192px;pointer-events:none}.service-hero .hero-copy a{pointer-events:auto}.service-hero h1{font-size:clamp(56px,5.3vw,84px);letter-spacing:-4px;line-height:1.04}.service-hero .hero-description{max-width:310px}.world-stage{position:absolute;left:35%;right:-3%;top:70px;height:650px}.world-stage canvas{display:block;width:100%;height:100%}.world-fallback{position:absolute;inset:0;display:grid;place-items:center;background:transparent}.world-fallback p{max-width:270px;padding:20px;background:#f8f5edee;border-radius:12px;font-size:12px;line-height:1.6}.world-fallback[hidden],.world-pins[hidden],.service-preview[hidden]{display:none}.world-pins{position:absolute;inset:0;pointer-events:none}.world-pin{position:absolute;transform:translate(-50%,-115%);pointer-events:auto;display:flex;gap:10px;align-items:center;text-align:left;padding:11px 16px 11px 10px;border:1px solid #ffffffc9;border-radius:12px;background:#fffdf5f5;box-shadow:0 6px 25px #123f3220;white-space:nowrap;font-size:12px}.world-pin:after{content:'';height:28px;width:1px;background:#214d3e80;position:absolute;top:100%;left:50%}.world-pin small{display:block;font-size:9px;margin-top:5px;color:#63735e}.pin-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e7ecdf;font-size:9px}.world-pin:hover{background:#e5eddf}.world-signature{position:absolute;right:12%;bottom:30px;font-size:8px;letter-spacing:2px;color:#63735e}.world-signature span{margin-left:15px;opacity:.7}.service-dock{position:absolute;bottom:92px;left:5%;right:5%;display:grid;grid-template-columns:1fr 1.5fr 1fr 1fr 1fr;border:1px solid #d6dccd;border-radius:12px;background:#fffcf3cf;backdrop-filter:blur(12px);overflow:hidden;z-index:5;scroll-margin-top:25px}.service-dock button{position:relative;text-align:left;padding:22px 18px;background:transparent;min-height:94px}.service-dock button+button{border-left:1px solid #d6dccd}.service-dock button>span{display:block;font-size:8px;letter-spacing:1.5px;color:#6b7862;margin-bottom:10px}.service-dock strong{font-size:13px;font-weight:500}.service-dock i{position:absolute;right:15px;top:24px;font-style:normal}.service-dock button:not(:disabled):hover,.service-dock button[aria-pressed=true]{background:#e7eddf}.service-dock button:disabled{opacity:1;color:#697267;background:#e8ebdf55}.service-hero .hero-bottom{bottom:42px}.service-selected .hero-copy{visibility:hidden}.service-selected .world-pins{visibility:hidden}.service-preview{position:absolute;top:185px;left:5%;width:345px;z-index:4}.preview-back{background:transparent;padding:10px 0;font-size:12px;margin-bottom:28px}.service-preview h2{font-size:47px;letter-spacing:-2px;line-height:1.08;margin:20px 0}.service-preview>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#59665c}.service-preview ul{list-style:none;padding:0;margin:20px 0}.service-preview li{font-size:12px;line-height:1.5;padding:11px 0;border-bottom:1px solid #d6dccd}.service-preview li:before{content:'↗';margin-right:10px;color:#859171}.service-preview .preview-note{font-size:10px!important;margin-top:16px}.platform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.platform-grid article{padding:35px;border-top:1px solid #bdc6b0}.platform-grid h3{font-size:28px;line-height:1.1;margin:25px 0 18px}.platform-grid p{font-size:13px;line-height:1.8;color:var(--muted)}
@media(min-width:1600px){.world-stage{height:730px;top:60px}.service-hero{height:980px}.service-hero .hero-copy{padding-top:220px}}
@media(max-width:1100px) and (min-width:761px){.service-hero .hero-copy{max-width:420px}.service-hero h1{font-size:59px}.world-stage{left:34%;right:-12%}.service-preview{width:300px}.service-preview h2{font-size:40px}.service-dock button{padding-inline:12px}.service-dock strong{font-size:11px}.service-dock i{display:none}}
@media(max-width:760px){.service-hero{height:auto;min-height:1140px;padding-bottom:80px}.service-hero .hero-copy{padding:122px 6% 0;max-width:none}.service-hero h1{font-size:53px;letter-spacing:-3px;line-height:1.02}.service-hero .hero-description{max-width:290px}.world-stage{position:relative;left:auto;right:auto;top:auto;height:450px;margin:-12px -12% -30px}.world-signature{bottom:25px;right:18%;font-size:6px}.world-pin{font-size:10px;padding:8px;gap:7px}.world-pin small{font-size:8px}.pin-number{width:22px;height:22px}.service-dock{position:relative;bottom:auto;left:auto;right:auto;margin:0 6%;grid-template-columns:1fr 1fr}.service-dock button{min-height:76px;padding:17px 12px;border-bottom:1px solid #d6dccd}.service-dock button+button{border-left:0}.service-dock button:nth-child(even){border-left:1px solid #d6dccd}.service-dock button:last-child{grid-column:1/-1;border-bottom:0}.service-dock button>span{font-size:7px;letter-spacing:1px}.service-dock strong{font-size:11px}.service-dock i{display:none}.service-hero .hero-bottom{bottom:27px}.service-preview{position:relative;top:auto;left:auto;width:auto;margin:115px 6% 0;scroll-margin-top:25px}.service-preview h2{font-size:42px}.service-selected .hero-copy{display:none}.service-selected .world-stage{position:absolute;top:130px;left:0;right:0;opacity:.13;pointer-events:none}.service-selected .service-preview{padding-top:10px;min-height:475px}.service-selected .service-dock{margin-top:35px}.service-selected{min-height:980px}.platform-grid{grid-template-columns:1fr;gap:10px}.platform-grid article{padding:25px 0}.platform-grid h3{margin-top:17px}}
@media(forced-colors:active){.world-stage canvas{opacity:.3}.world-pin,.service-dock,.service-preview{background:Canvas;border:1px solid CanvasText}.world-pin small,.service-dock button>span{color:CanvasText}}

@media(min-width:761px){.service-preview{top:140px;bottom:205px;overflow-y:auto;padding-right:15px;width:370px}.service-preview h2{font-size:42px;margin:16px 0}.preview-back{margin-bottom:18px}.service-preview ul{margin:15px 0}.world-stage canvas{mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}}
/* Art direction: a landscape extending into the page, with a softer horizon. */
.service-hero{background:radial-gradient(ellipse at 76% 28%,#fff4d9 0%,#f8f5ed 62%)}
.world-stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 33% 95%,#f8f5ed 0%,#f8f5edd9 9%,transparent 32%),radial-gradient(ellipse at 88% 92%,#f8f5ed 0%,#f8f5eda6 12%,transparent 30%),linear-gradient(0deg,#f8f5ed,transparent 24%);z-index:1}
.world-pins{z-index:2}.world-signature{z-index:2}.service-selected .world-stage:after{opacity:.4}
@media(min-width:1101px){.world-stage{left:30%;right:-8%;top:15px;height:750px}.service-hero .hero-copy{max-width:540px}.world-stage canvas{mask-image:linear-gradient(90deg,transparent,#000 12%,#000 92%,transparent)}}
@media(min-width:1600px){.world-stage{height:820px;top:0}}
@media(max-width:760px){.world-stage{height:480px;margin-top:-25px;margin-bottom:-35px}.world-stage:after{background:linear-gradient(0deg,#f8f5ed,transparent 30%)}.service-selected .world-stage:after{display:none}}

@media(min-width:1101px){.service-hero .hero-copy{max-width:none;width:48%}.service-hero h1{font-size:clamp(56px,5.3vw,80px)}}

@media(min-width:1101px){.world-signature{bottom:75px;right:18%}}
.atlas-motion{position:absolute;right:18%;bottom:100px;z-index:3;border:1px solid #d5dccb;background:#fffaf0ed;border-radius:20px;padding:10px 14px;font-size:10px;min-height:40px}
.world-stage canvas{transition:opacity .22s ease}.world-stage.entering-room canvas{opacity:0}
.service-preview #preview-features{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.service-preview #preview-features li{padding:0;border:0}.service-preview #preview-features li:before{display:none}.topic-button{padding:12px 14px;border-radius:22px;border:1px solid #bfcab5;background:#faf8f0;font-size:11px;min-height:44px}.topic-button[aria-pressed=true]{background:#214d3e;color:#fffaf0;border-color:#214d3e}
.service-topic{padding:20px;background:#fffdf2dd;border:1px solid #dce0d0;border-radius:12px}.service-topic h3{font-size:25px;margin-bottom:12px}.service-topic p{font-size:13px;line-height:1.8;color:#52614e}
@media(min-width:761px){.service-preview{width:390px}.service-preview h2{font-size:35px}.service-preview .preview-back{margin-bottom:10px}}
@media(max-width:760px){.atlas-motion{bottom:35px;right:20%;font-size:10px}.service-selected .world-stage .atlas-motion{display:none}.service-selected .service-preview{min-height:620px}.service-selected{min-height:1120px}}
/* Controls stay in the scene and share one visual treatment. */
.atlas-scene-actions{position:absolute;right:18%;bottom:100px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;z-index:6;pointer-events:auto}
.scene-action{border:1px solid #d5dccb;background:#fffaf0ed;border-radius:24px;padding:12px 17px;font-size:11px;min-height:44px;box-shadow:0 3px 12px #173e3209;backdrop-filter:blur(8px)}
.scene-action:hover{background:#e6ecdd}.scene-action[hidden]{display:none}
@media(max-width:760px){.atlas-scene-actions{right:15%;left:15%;bottom:38px;justify-content:center}.service-selected .world-stage{position:relative;top:auto;left:auto;right:auto;opacity:1;pointer-events:auto;height:320px;margin:100px 0 0}.service-selected .world-stage:after{display:none}.service-selected .atlas-scene-actions{right:12px;left:12px;bottom:14px}.service-selected .world-signature{display:none}.service-selected .service-preview{margin:25px 6% 0;min-height:0;padding:0}.service-selected{min-height:0}.service-selected .service-dock{margin-top:25px}}

/* Overview fills the hero; the service interiors retain their own framing. */
@media(min-width:761px){
  .service-hero:not(.room-active){height:1020px;min-height:900px}
  .service-hero:not(.room-active):after{display:block;inset:auto 0 0;height:230px;background:linear-gradient(0deg,#f8f5ed,transparent);z-index:1}
  .service-hero:not(.room-active) .world-stage{left:14%;right:-12%;top:min(0px,calc(180px - 13vw));height:clamp(930px,60vw,1250px)}
  .service-hero:not(.room-active) .world-stage canvas{mask-image:linear-gradient(90deg,transparent 0%,#0003 16%,#000 36%,#000 100%)}
  .service-hero:not(.room-active) .atlas-scene-actions{right:17%;top:max(740px,calc(560px + 13vw));bottom:auto}
  .service-hero:not(.room-active) .world-signature{right:17%;top:max(800px,calc(620px + 13vw));bottom:auto}
  .service-hero:not(.service-selected) .hero-copy{width:43%;padding-top:185px}
  .service-hero:not(.service-selected) h1{font-size:clamp(56px,5.1vw,80px)}
}
@media(min-width:761px) and (max-width:1100px){
  .service-hero:not(.room-active) .world-stage{left:12%;right:-28%}
  .service-hero:not(.service-selected) .hero-copy{width:48%}
}




/* First NDIS room destination: a seating-area label and illustrative participant story. */
.room-hotspot{position:absolute;z-index:5;transform:translate(-50%,-110%);padding:12px 17px;min-height:44px;white-space:nowrap;border-radius:24px;border:1px solid #cabfa7;background:#fffaedf2;box-shadow:0 5px 22px #4939161a;font-size:11px}
.room-hotspot:hover{background:#ede8d6}.room-hotspot[hidden]{display:none}
@media(max-width:760px){.room-hotspot{font-size:10px;padding:10px 13px}}
.service-preview{scrollbar-width:thin;scrollbar-color:#b5bea9 transparent}
.software-support[hidden]{display:none}
.software-support{margin-top:18px}.software-support h4{font-size:12px;line-height:1.6;margin:0 0 10px;font-weight:600}
.service-preview .software-support ul{list-style:disc;margin:0;padding-left:17px}
.service-preview .software-support li{font-size:12px;line-height:1.65;padding:0 0 9px;border:0;color:#52614e}
.service-preview .software-support li:before{content:none}.software-support strong{color:#244b3d}

.participant-card{position:absolute;z-index:9;width:300px;max-width:calc(100vw - 32px);max-height:calc(100svh - 32px);overflow:auto;padding:7px;background:linear-gradient(135deg,#b9c8a5,#e7dcc0 45%,#91a588);border:1px solid #8da181;border-radius:20px;box-shadow:0 18px 65px #263d3038,inset 0 0 0 2px #f8f2db}
.room-hotspot.card-anchor-hidden{visibility:hidden}
.participant-card[data-service="cyf"]{background:linear-gradient(135deg,#d8b19b,#f0dfc8 45%,#a9b694);border-color:#bc9e89}
.participant-card[hidden]{display:none}.participant-card:focus{outline:none}.participant-card:focus-visible{outline:2px solid #6b8262;outline-offset:3px}
.participant-card-close{position:absolute;right:12px;top:12px;width:36px;height:36px;border-radius:50%;background:#fffdf2ed;box-shadow:0 2px 8px #263d3020;font-size:24px}
.participant-card-artwork{height:140px;overflow:hidden;border-radius:13px 13px 5px 5px;background:#ede9d8}.participant-card-artwork img{width:100%;height:100%;object-fit:cover;object-position:50% 36%;display:block}.participant-card-body{padding:17px 18px 14px;background:#fffdf2;border-radius:5px 5px 13px 13px;margin-top:5px}
.participant-card .participant-card-label{font-size:8px;letter-spacing:1px;line-height:1.6;color:#66745e}.participant-card h3{font-size:25px;line-height:1.1;margin:7px 0 10px}
.participant-card p{font-size:12px;line-height:1.65;color:#52614e}.participant-card .participant-card-caption{margin:16px 0 10px;font-size:11px;font-weight:600}
.participant-card ul{margin:0;padding-left:17px}.participant-card li{padding:0 0 9px;font-size:12px;line-height:1.55;color:#244b3d}.participant-card li::marker{color:#85916c}

@media(max-width:760px){.participant-card{z-index:30}.participant-card-close{width:44px;height:44px}}



.world-pin:after{height:var(--pin-line-length,28px);transform-origin:top center;transform:rotate(var(--pin-line-angle,0rad));background:#52775d;pointer-events:none}
.atlas-return-veil{position:absolute;inset:0;z-index:30;background:#f8f5ed;pointer-events:auto}.atlas-return-veil[hidden]{display:none}
/* A light sage sky, with a wide, soft cloud bank beyond the atlas. */
.service-hero:not(.room-active){background:radial-gradient(ellipse at 72% 35%,#f0f5e7 0%,#e2ecda 50%,#d8e5d1 100%)}
.service-hero:not(.room-active):before{content:"";position:absolute;pointer-events:none;left:40%;right:-3%;top:95px;height:auto;aspect-ratio:3;z-index:0;opacity:.64;background:url("assets/rain-cloud-bank.png") center/contain no-repeat}
.service-hero:not(.room-active) .world-stage:after{background:radial-gradient(ellipse at 33% 95%,#f8f5ed 0%,#f8f5edcc 9%,transparent 32%),radial-gradient(ellipse at 88% 92%,#f8f5ed 0%,#f8f5ed99 12%,transparent 30%),linear-gradient(0deg,#f8f5ed,transparent 24%)}
@media(min-width:761px){
 .service-hero:not(.room-active){height:1140px;min-height:1020px}
 .service-hero:not(.room-active) .world-stage{top:calc(110px + min(0px,calc(180px - 13vw)))}
 .service-hero:not(.service-selected) .hero-copy{padding-top:295px}
}
@media(max-width:760px){.service-hero:not(.room-active):before{top:115px;height:220px}.service-hero:not(.service-selected) .hero-copy{padding-top:145px}}

/* Keep navigation beside the brand, outside the room-card area. */
.atlas-night-sky{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:var(--atlas-night,0);background:linear-gradient(90deg,transparent 18%,#29495799 55%,#172c47 100%);mask-image:linear-gradient(#000 70%,transparent 100%)}
.atlas-moon{position:absolute;top:145px;left:77%;width:65px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 33% 30%,#fffae1,#e4e7d0 72%,#b7c7c7);box-shadow:0 0 35px 12px #eaf0dc25,0 0 100px 35px #d6e7e014}
.service-hero:not(.room-active):before{z-index:1;filter:brightness(calc(1 - var(--atlas-night,0)*.42))}
.service-hero:not(.room-active) .world-stage{z-index:2}
.service-hero .hero-copy{z-index:3}
.room-active .atlas-night-sky{display:none}
@media(max-width:760px){.atlas-night-sky{top:510px;background:linear-gradient(#294957,#172c47);mask-image:linear-gradient(transparent,#000 18%,#000 48%,transparent 80%)}.atlas-moon{top:60px;left:73%;width:42px}}
.world-pin{padding:12px 16px}
.service-hero:not(.room-active):before{top:65px}
.atlas-moon{top:190px;left:79%;background:radial-gradient(ellipse at 30% 35%,#778d8a55 0 9%,transparent 12%),radial-gradient(ellipse at 65% 62%,#8d9a8766 0 15%,transparent 19%),radial-gradient(circle at 64% 25%,#9ba89455 0 6%,transparent 9%),radial-gradient(circle at 33% 71%,#b0b39a70 0 6%,transparent 10%),radial-gradient(circle at 42% 48%,#fffce0 0 2%,transparent 4%),radial-gradient(circle at 35% 28%,#f7f0d4,#d5dac2 67%,#92a7a7);box-shadow:inset -9px -5px 15px #536e7840,0 0 40px 10px #eaf0dc20}
.scene-action{background:#214d3e;color:#fffaf0;border:1px solid #63816e;border-radius:12px;box-shadow:0 4px 14px #102a3433}
.scene-action:hover{background:#34634f;color:#fffaf0}
.atlas-scene-actions{max-width:340px}
.atlas-scene-actions .world-signature{position:static;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px 14px;width:100%;font-size:10px;line-height:1.6;letter-spacing:0;color:#244b3d;background:#fffcf2e6;border-radius:8px;padding:7px 10px}
.atlas-scene-actions .world-signature span{margin:0;opacity:1}
.world-signature a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
@media(max-width:760px){.atlas-scene-actions{max-width:none}.atlas-scene-actions .world-signature{justify-content:center}.service-hero:not(.room-active) .world-stage:before{top:-25px}.atlas-moon{top:85px;left:77%}}
@media(min-width:761px){.site-header{justify-content:flex-start;gap:clamp(30px,4vw,72px)}}
@media(max-width:760px){
 .service-hero:not(.room-active):before{display:none}
 .service-hero:not(.room-active) .world-stage:before{content:'';position:absolute;pointer-events:none;left:9%;right:9%;top:-25px;aspect-ratio:3;background:url('assets/rain-cloud-bank.png') center/contain no-repeat;opacity:.6}
}
