:root{color-scheme:dark;--navy:#06121c;--navy-light:#112834;--text:#f0f6f7;--muted:#a1b9c5;--aqua:#9cd9de;--lime:#dfeb9f;--font:'Outfit',sans-serif;font-family:var(--font);background:var(--navy);color:var(--text);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;overflow-x:clip}button,a{-webkit-tap-highlight-color:transparent}button{font-family:inherit}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--lime);outline-offset:6px}button{cursor:pointer}button:disabled{cursor:default}::selection{color:var(--navy);background:var(--aqua)}
.skip-link{position:fixed;left:1rem;top:-6rem;z-index:100;background:var(--aqua);color:var(--navy);padding:1rem}.skip-link:focus{top:1rem}
.site-header{position:absolute;inset:0 0 auto;z-index:20;height:90px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-size:1.45rem;letter-spacing:.025em;white-space:nowrap}.brand span{font-weight:300}.header-context{color:var(--muted);font-size:.75rem;letter-spacing:.17em}.demo-link{border:1px solid #a1d5da70;padding:12px 18px;border-radius:5px;font-size:.875rem;display:flex;gap:22px;align-items:center;transition:background .2s}.demo-link:hover{background:#9cd9de19}.demo-link span{font-size:1.1rem}
.journey{height:680vh;position:relative}.scene-sticky{height:100svh;min-height:650px;position:sticky;top:0;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#1b394861,transparent 62%),var(--navy)}.scene-sticky:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(#81cdd807 1px,transparent 1px),linear-gradient(90deg,#81cdd807 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(transparent,#000 70%,transparent)}
.opening-copy{position:absolute;top:14%;left:5%;right:5%;text-align:center;z-index:3;pointer-events:none;will-change:transform,opacity}.eyebrow{font-size:.75rem;letter-spacing:.18em;color:var(--aqua);font-weight:400;margin:0 0 17px}h1{font-size:clamp(2.7rem,4.1vw,5rem);font-weight:300;letter-spacing:-.045em;line-height:1.06;margin:0}h1 span{color:var(--aqua)}.opening-intro{font-size:1rem;line-height:1.5;font-weight:300;color:var(--muted);margin:18px 0 0}
.laptop-zone{position:absolute;left:50%;top:46%;width:min(70vw,950px);transform:translateX(-50%);transform-origin:50% 45%;will-change:transform;perspective:1600px;z-index:2}.laptop-shell{background:linear-gradient(130deg,#8b9ca5,#233441 7%,#75878f 55%,#243742);padding:12px 11px 15px;border-radius:21px 21px 5px 5px;box-shadow:0 20px 80px #0009;position:relative}.camera-dot{height:4px;width:4px;background:#121a20;border:1px solid #688896;border-radius:50%;position:absolute;top:4px;left:50%}.laptop-screen{position:relative;aspect-ratio:1.88;background:#06121d;overflow:hidden;border-radius:10px 10px 2px 2px;border:1px solid #060e18}.screen-heading{height:38px;position:absolute;inset:0 0 auto;z-index:3;display:flex;gap:15px;align-items:center;justify-content:space-between;padding:0 18px;background:linear-gradient(#06121dd9,transparent);pointer-events:none}.fides-wordmark{font-family:Georgia,serif;font-size:1.3rem;font-weight:400;color:#dcecef}.screen-location{font-size:.57rem;letter-spacing:.18em;color:var(--aqua)}.screen-caption{font-size:.50rem;letter-spacing:.1em;color:var(--muted)}.scene-container{position:absolute;inset:0;overflow:hidden}#scene-poster,#textile-scene{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}#textile-scene{opacity:0;transition:opacity .7s}body.scene-ready #textile-scene{opacity:1}body.scene-ready #scene-poster{opacity:0}#scene-poster{transition:opacity .7s}.scene-tags{position:absolute;inset:0;pointer-events:none;color:var(--aqua);font-size:.63rem;letter-spacing:.16em;transition:opacity .3s}.tag-hotel{position:absolute;left:20%;top:17%}.tag-laundry{position:absolute;right:15%;top:39%}.location-card{position:absolute;left:20px;bottom:18px;pointer-events:none;transition:opacity .3s;text-shadow:0 1px 9px #000}.location-kicker{display:block;color:var(--muted);font-size:.55rem;letter-spacing:.13em;margin-bottom:4px}.location-name{font-weight:400;font-size:.80rem;color:var(--text)}.route-legend{position:absolute;right:20px;bottom:20px;display:flex;gap:16px;font-size:.57rem;color:var(--muted)}.route-legend span{display:flex;gap:6px;align-items:center}.route-legend i{width:5px;height:5px;border-radius:50%;display:block}.used-dot{background:var(--aqua)}.clean-dot{background:var(--lime)}
.laptop-keyboard{position:relative;height:54px;margin:0 -6%;background:linear-gradient(#5c737f,#314550 60%,#72858e);clip-path:polygon(5.4% 0,94.6% 0,100% 100%,0 100%);transform-origin:50% 0;transform:rotateX(42deg);border-radius:0 0 5px 5px;will-change:opacity}.keyboard-keys{position:absolute;inset:5px 15% 20px;background:repeating-linear-gradient(90deg,transparent 0 22px,#81959f55 22px 24px),repeating-linear-gradient(0deg,#142833c9 0 6px,#637a8355 6px 8px);border-radius:2px}.trackpad{position:absolute;bottom:3px;left:43%;width:14%;height:12px;background:#344d5a;border:1px solid #7e919b88;border-radius:3px}.laptop-foot{height:7px;margin:-14px -6% 0;background:linear-gradient(#718690,#243943);border-radius:0 0 20px 20px;position:relative}.laptop-shadow{height:40px;margin:0 -12%;background:radial-gradient(ellipse,#0008,transparent 70%);filter:blur(7px);position:relative;top:-5px;z-index:-1}
.chapter-copy{position:absolute;left:7%;right:7%;top:12%;z-index:5;max-width:720px;opacity:0;transform:translateY(20px);pointer-events:none;will-change:transform,opacity}.chapter-counter{font-size:.75rem;letter-spacing:.20em;color:var(--aqua);margin-bottom:13px}.chapter-copy h2{font-size:clamp(2rem,3.8vw,4.2rem);font-weight:300;letter-spacing:-.035em;line-height:1.07;margin:0 0 14px}.chapter-copy p{font-size:1.05rem;line-height:1.5;color:var(--muted);font-weight:300;max-width:510px;margin:0}.chapter-copy.is-final h2{color:var(--aqua)}
.journey-bottom{position:absolute;left:4.5%;right:4.5%;bottom:26px;z-index:10;display:flex;justify-content:space-between;gap:24px;align-items:center}.scroll-cue{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:13px}.scroll-line{height:29px;width:1px;background:linear-gradient(var(--aqua),transparent)}.chapter-navigation{display:flex;gap:8px}.chapter-navigation button{width:32px;height:32px;border:none;background:transparent;position:relative;padding:0;color:var(--muted);font-size:.70rem}.chapter-navigation button:before{content:'';position:absolute;left:3px;right:3px;bottom:0;height:1px;background:#496673;transition:background .2s,height .2s}.chapter-navigation button[aria-current="step"]{color:var(--aqua)}.chapter-navigation button[aria-current="step"]:before{background:var(--aqua);height:2px}.motion-control{border:none;background:transparent;font-size:.75rem;letter-spacing:.02em;color:var(--muted);text-decoration:underline;text-underline-offset:5px;padding:8px 0}.journey-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#8cb8c515;z-index:10}.journey-progress>div{width:0;height:100%;background:var(--aqua)}
.report-reveal{position:absolute;inset:0;z-index:6;background:#e5e5e5;color:#3c535e;opacity:0;transform:translateY(15px);pointer-events:none;font-family:'DM Sans',sans-serif;overflow:hidden}.report-header{height:14%;background:#3d5b6b;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4%;font-size:.6rem}.report-logo{font:1.55rem Georgia,serif}.report-layout{display:grid;grid-template-columns:minmax(0,1fr) 21%;height:86%}.report-content{padding:2.8% 3%}.report-breadcrumb{font-size:.6rem;margin:0 0 3.5%;letter-spacing:.02em}.report-breadcrumb span{padding:0 8px}.report-scope{font-size:.53rem;margin:0 0 3%;color:#66777e}.report-table-wrap{background:#fff;border-radius:5px;padding:5px;box-shadow:0 2px 5px #0001}table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.54rem}caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}th,td{padding:6px 4px;text-align:center;vertical-align:middle;font-weight:400;font-variant-numeric:tabular-nums}thead th{background:#3d5b6b;color:#fff;font-weight:500}thead th:first-child{width:24%}tbody td{text-align:center}tbody tr{border-bottom:1px solid #e4e4e4}tbody tr:nth-child(even){background:#f8f8f8}tfoot{background:#eaf0f2;border-top:2px solid #3d5b6b}tfoot th,tfoot td{font-weight:600}.report-note{font-size:.50rem;color:#687e88;margin:8px 0 0}.report-sidebar{border-left:4px solid #fff7;padding:13% 12%;font-size:.55rem}.report-sidebar>span{display:block;letter-spacing:.06em;font-size:.50rem;margin:0 0 7px}.report-sidebar>strong{display:block;background:#fff;padding:8px 6px;border:1px solid #d3d9dd;border-radius:3px;font-weight:400;margin:0 0 20px;font-size:.55rem}.report-sidebar>div{padding:12px 0;border-bottom:1px solid #fff8;font-size:.48rem}
.closing-section{min-height:80svh;padding:130px 7% 100px;position:relative;z-index:4;background:radial-gradient(ellipse at 80% 20%,#11323d80,transparent 60%),var(--navy);border-top:1px solid #557a862e}.closing-section h2{font-size:clamp(2.3rem,4.3vw,4.7rem);font-weight:300;letter-spacing:-.04em;line-height:1.1;margin:0 0 25px}.closing-section h2 span{color:var(--aqua)}.closing-section>p:not(.eyebrow){color:var(--muted);font-weight:300;font-size:1.15rem;line-height:1.7;margin:0 0 35px}.primary-link{display:inline-flex;align-items:center;gap:45px;padding:17px 23px;border-radius:5px;background:var(--aqua);color:#08202c;font-size:1rem;transition:background .2s}.primary-link:hover{background:#c2ebef}.replay-link{display:inline-flex;gap:13px;margin-left:25px;color:var(--muted);font-size:.9rem}footer:not(.fides-site-footer){padding:30px 4.5%;border-top:1px solid #557a862e;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.75rem}footer:not(.fides-site-footer) span:first-child{font-size:1rem;color:var(--text)}
body.reduced-motion #textile-scene{transition:none!important}body.reduced-motion #scene-poster{transition:none!important}body.reduced-motion .laptop-zone{will-change:auto}body.reduced-motion .opening-copy,body.reduced-motion .chapter-copy{will-change:auto}
@media(min-width:1600px){.laptop-zone{top:43%;width:min(67vw,1100px)}}
@media(max-width:1000px){.header-context{display:none}.site-header{height:76px}.journey{height:610vh}.opening-copy{top:16%}h1{font-size:3.3rem}.laptop-zone{width:84vw;top:46%}.chapter-copy{top:13%;left:6%}.scene-sticky{min-height:610px}.screen-caption{display:none}.chapter-copy h2{font-size:3rem}.scroll-cue{font-size:.75rem}}
@media(max-width:640px){.site-header{height:76px;padding:0 6%;gap:16px}.brand{font-size:1.15rem}.demo-link{font-size:.75rem;padding:9px 11px;gap:10px}.journey{height:570vh}.scene-sticky{min-height:640px}.opening-copy{top:17%;left:6%;right:6%;text-align:left}.eyebrow{font-size:.64rem;letter-spacing:.14em;max-width:300px;line-height:1.6}h1{font-size:clamp(2.15rem,8.8vw,3.4rem);line-height:1.1}.opening-intro{font-size:.9rem;line-height:1.6;max-width:310px}.opening-intro br{display:none}.laptop-zone{width:90vw;top:49%;}.laptop-shell{padding:8px 6px 9px;border-radius:11px 11px 3px 3px}.laptop-screen{aspect-ratio:1.30;border-radius:5px 5px 1px 1px}.camera-dot{top:2px;width:3px;height:3px}.laptop-keyboard{height:35px}.keyboard-keys{inset:4px 12% 14px;background-size:auto}.trackpad{height:9px;width:19%;left:40%}.laptop-foot{margin-top:-9px;height:5px}.screen-heading{height:26px;padding:0 10px}.fides-wordmark{font-size:1rem}.screen-location{font-size:.40rem;letter-spacing:.07em}.location-card{left:10px;bottom:12px}.location-kicker{font-size:.44rem}.location-name{font-size:.59rem}.route-legend{right:10px;bottom:12px;font-size:.45rem;gap:8px}.route-legend i{width:4px;height:4px}.scene-tags{font-size:.5rem;letter-spacing:.09em}.tag-hotel{left:15%;top:19%}.tag-laundry{right:11%;top:35%}.chapter-copy{top:15%;left:6%;right:6%;max-width:none}.chapter-copy h2{font-size:2.45rem;max-width:350px;margin-bottom:12px}.chapter-copy p{font-size:.95rem;max-width:340px}.chapter-copy p br{display:none}.chapter-counter{font-size:.70rem;margin-bottom:12px}.journey-bottom{left:6%;right:6%;bottom:22px;gap:12px;flex-wrap:wrap;justify-content:space-between}.scroll-cue{font-size:.69rem;gap:8px}.scroll-line{height:20px}.motion-control{font-size:.7rem;min-height:44px}.chapter-navigation{order:3;width:100%;justify-content:center;gap:10px}.chapter-navigation button{width:32px;height:36px}.report-layout{grid-template-columns:1fr}.report-sidebar{display:none}.report-header{height:13%;font-size:.50rem}.report-logo{font-size:1.2rem}.report-content{padding:4%}.report-breadcrumb{font-size:.48rem;margin-bottom:4%}.report-scope{font-size:.43rem}.report-note{font-size:.43rem}table{font-size:.45rem}th,td{padding:4px 2px}.closing-section{padding:90px 7% 75px;min-height:650px}.closing-section h2{font-size:2.4rem}.closing-section>p:not(.eyebrow){font-size:1rem}.closing-section>p br{display:none}.primary-link{padding:15px 18px;gap:26px}.replay-link{display:flex;width:max-content;margin:28px 0 0}footer:not(.fides-site-footer){padding:25px 7%;flex-direction:column;gap:10px;font-size:.7rem}}
@media(max-height:720px) and (min-width:641px){.opening-copy{top:17%}h1{font-size:2.8rem}.opening-intro{font-size:.9rem;margin-top:12px}.laptop-zone{top:48%;width:min(62vw,700px)}.scene-sticky{min-height:600px}.chapter-copy h2{font-size:2.8rem}.chapter-copy{top:14%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* The architecture opens without a device; the laptop returns with the report. */
:root{--clean:#efcf95}
.opening-copy{top:23%;left:4.5%;right:auto;width:39%;text-align:left;pointer-events:auto}
h1{font-size:clamp(2.8rem,4.35vw,5.6rem);line-height:1.07}
.opening-intro{font-size:clamp(1rem,1.25vw,1.25rem);line-height:1.55;max-width:530px;margin-top:25px}
.hero-actions{display:flex;gap:24px;align-items:center;margin-top:30px;flex-wrap:wrap}
.hero-actions .primary-link{font-size:.85rem;padding:16px 18px;gap:14px}
.see-fides{background:none;border:0;border-bottom:1px solid #a1b9c560;padding:10px 0;color:var(--text);font-size:.85rem;display:flex;gap:12px;align-items:center}
.see-fides:hover{color:var(--aqua)}
.motion-control[aria-pressed="true"]{color:var(--aqua);text-decoration-thickness:2px}
.laptop-zone{--device-frame:0;--scene-details:0;left:70%;top:20%;width:62vw}
.laptop-shell{background:transparent;box-shadow:none}
.laptop-shell:before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(130deg,#8b9ca5,#233441 7%,#75878f 55%,#243742);opacity:var(--device-frame);box-shadow:0 20px 80px #0009;pointer-events:none}
.laptop-screen{border-color:transparent;background:transparent;aspect-ratio:var(--screen-ratio,1.88)}
.laptop-keyboard,.laptop-foot,.laptop-shadow,.camera-dot{opacity:var(--device-frame)}
.screen-heading,.location-card,.route-legend{opacity:var(--scene-details)}
.clean-dot{background:var(--clean)}
#scene-poster{object-fit:contain}
.location-card{max-width:65%}
.location-name{font-size:clamp(.57rem,1vw,.8rem)}
.outcome-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:720px;margin:0 0 75px}
.outcome-strip>div{padding:22px;border:1px solid #9cd9de30;border-radius:6px;background:#9cd9de08}
.outcome-strip span{display:block;font-size:.66rem;letter-spacing:.15em;color:var(--muted);margin-bottom:12px}
.outcome-strip strong{font-weight:400;font-size:1.25rem}
.closing-section>p.management-shift{font-size:clamp(1.4rem,2.3vw,2.3rem);line-height:1.35;color:var(--text);max-width:890px}
@media(max-width:1000px){
  .opening-copy{top:13%;left:6%;right:6%;width:auto;max-width:700px}
  h1{font-size:clamp(2.4rem,5.7vw,3.6rem)}
  .opening-intro{font-size:1rem;max-width:620px;margin-top:18px}
  .hero-actions{margin-top:18px;gap:20px}
  .laptop-zone{left:50%;width:94vw;top:52%}
  .scene-sticky{min-height:650px}
}
@media(max-width:640px){
  .opening-copy{top:13%;max-width:none}
  h1{font-size:clamp(2.15rem,8.6vw,3.4rem)}
  .opening-intro{font-size:.91rem;line-height:1.5;margin-top:17px;max-width:370px}
  .hero-actions{gap:18px;margin-top:18px}
  .hero-actions .primary-link,.see-fides{font-size:.73rem}
  .hero-actions .primary-link{padding:12px;gap:8px}
  .see-fides{gap:6px}
  .scene-sticky{min-height:650px}
  .route-legend{bottom:7px}
  .location-card{bottom:31px;max-width:90%}
  .outcome-strip{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:55px}
  .outcome-strip>div{padding:18px}
}
@media(max-width:640px) and (max-height:720px){
  .opening-copy{top:14%}
  .opening-copy .eyebrow{font-size:.54rem;line-height:1.4;margin-bottom:12px}
  h1{font-size:clamp(1.8rem,7.6vw,2.65rem)}
  .opening-intro{font-size:.84rem;line-height:1.45;margin-top:12px}
  .hero-actions{margin-top:14px;gap:13px}
  .hero-actions .primary-link,.see-fides{font-size:.66rem}
}

/* Preserve the website's hero composition; the animated journey follows below it. */
:root{--font:'futura-pt','Outfit',sans-serif}
.site-header{height:100px;padding:0 3.5%;gap:26px}
.brand{display:inline-flex;align-items:center;gap:8px;font-size:1.6rem;font-weight:400;letter-spacing:.015em}
.brand img{width:32px;height:38px;object-fit:contain;margin-right:7px}
.main-navigation{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:1rem;color:#dce6ed}
.main-navigation a:hover{color:var(--aqua)}
.demo-link{background:#79d6da;color:#102735;border:0;padding:16px 20px;font-size:1rem;white-space:nowrap}
.demo-link:hover{background:#a4e9ec}
.homepage-hero{position:relative;isolation:isolate;padding:clamp(145px,12vw,185px) 6% 75px;color:#fff;background:#142737}
.homepage-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 18% 12%,#285a7866,transparent 38%),linear-gradient(120deg,#07121edf,#142b4bdc),url('./assets/homepage-room.webp') center 56%/cover}
.homepage-hero:after{content:'';position:absolute;bottom:0;left:0;right:0;height:110px;background:linear-gradient(transparent,#06121c);z-index:-1}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,380px);gap:65px;max-width:1360px;margin:0 auto;align-items:end}
.homepage-hero .opening-copy{position:static;inset:auto;width:auto;max-width:none;text-align:left;opacity:1;transform:none;pointer-events:auto;will-change:auto}
.homepage-hero .eyebrow{display:flex;align-items:center;gap:12px;color:#c5d3dd;letter-spacing:.18em;font-size:.77rem;line-height:1.4;margin-bottom:25px}
.homepage-hero .eyebrow:before{content:'';height:1px;width:34px;background:#bbe148;flex:none}
.homepage-hero h1{font-family:var(--font);font-size:clamp(62px,7.4vw,118px);font-weight:400;letter-spacing:-.04em;line-height:.95;max-width:920px;margin:0 0 30px}
.homepage-hero .opening-intro{font-family:var(--font);font-size:clamp(23px,2vw,30px);font-weight:400;color:#edf4f7;line-height:1.3;max-width:790px;margin:0 0 32px}
.homepage-hero .hero-actions{margin:0;gap:26px}
.homepage-hero .primary-link{background:#79d6da;font-size:1rem;padding:16px 22px;gap:20px}
.homepage-hero .see-fides{font-size:1rem;font-weight:500;padding:12px 0}
.management-panel{position:relative;overflow:hidden;padding:34px 30px;border:1px solid #c5d3dd66;border-radius:12px;background:linear-gradient(180deg,#07121e38,#07121eb8 48%,#07121ef5),url('./assets/management-shift.webp') 58% center/cover;box-shadow:0 28px 80px #0005}
.management-panel:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#79d6da,#b8e255,#9772ff)}
.panel-eyebrow{font-size:.76rem;letter-spacing:.17em;color:#c0e748;font-weight:500;margin:0 0 22px}
.panel-statement{font-size:1.55rem;line-height:1.25;font-weight:400;color:#f0f4f7;margin:0 0 25px}
.management-metrics{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:0}
.management-metrics>div{padding:15px 16px;border-radius:8px;background:#f0f4f717}
.management-metrics dt{font-size:.72rem;letter-spacing:.13em;color:#c5d3dd}
.management-metrics dd{font-size:1.42rem;font-weight:500;margin:7px 0 0;line-height:1.2}
.journey{height:570vh}
.chapter-copy{top:7%;left:6%;right:6%;max-width:1100px}
.chapter-copy h2{font-size:clamp(2rem,3.8vw,3.75rem);font-weight:400;line-height:1.04}
.chapter-copy p{font-size:1.1rem;line-height:1.4;max-width:720px}
.laptop-zone{left:50%;top:28%;width:90vw}
.laptop-shell:before{background:linear-gradient(130deg,#9aa5ac,#45515d 9%,#78868e 60%,#424e58)}
.laptop-keyboard{position:relative;display:block;height:auto;aspect-ratio:5.4;margin:-2px -15% 0;padding:0;transform:none;clip-path:none;background:none;overflow:hidden;border-radius:0}
.laptop-keyboard img{position:absolute;display:block;top:-22.5%;left:0;width:100%;height:145%;object-fit:fill}
.laptop-shadow{margin-top:-12px}
@media(max-width:1150px){
 .main-navigation{gap:18px;font-size:.9rem}.site-header{gap:22px}.brand{font-size:1.4rem}.demo-link{padding:13px 15px;font-size:.88rem}
 .hero-grid{grid-template-columns:minmax(0,1fr) 330px;gap:40px}
 .management-panel{padding:28px 25px}.panel-statement{font-size:1.4rem}
 .homepage-hero h1{font-size:clamp(62px,7.4vw,90px)}
}
@media(max-width:900px){
 .main-navigation{display:none}.demo-link{margin-left:auto}.site-header{height:84px}
 .homepage-hero{padding:125px 6% 65px}.hero-grid{grid-template-columns:1fr;gap:36px;max-width:740px}
 .homepage-hero h1{font-size:clamp(58px,9.4vw,86px);max-width:730px}
 .homepage-hero .opening-intro{font-size:24px}
 .management-panel{max-width:650px}.panel-statement{font-size:25px;max-width:570px}
 .management-metrics{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:640px){
 .site-header{padding:0 6%;gap:12px}.brand{font-size:1.15rem;gap:5px}.brand img{width:24px;height:29px;margin-right:3px}.demo-link{font-size:.8rem;gap:8px;padding:11px}
 .homepage-hero{padding:118px 6% 55px}.homepage-hero h1{font-size:clamp(47px,12.6vw,73px);line-height:1.02;letter-spacing:-.035em;margin-bottom:24px}
 .homepage-hero .eyebrow{font-size:.67rem;letter-spacing:.13em;gap:9px;margin-bottom:22px;max-width:none}.homepage-hero .eyebrow:before{width:24px}
 .homepage-hero .opening-intro{font-size:21px;line-height:1.35;margin-bottom:26px;max-width:none}
 .homepage-hero .hero-actions{gap:18px}.homepage-hero .primary-link,.homepage-hero .see-fides{font-size:.89rem}.homepage-hero .primary-link{padding:14px 16px;gap:12px}
 .management-panel{padding:28px 24px}.panel-statement{font-size:24px}.management-metrics{grid-template-columns:1fr 1fr}.management-metrics dd{font-size:1.4rem}
 .journey{height:540vh}.scene-sticky{min-height:620px}.chapter-copy{top:7%;max-width:none}.chapter-copy h2{font-size:2.2rem;max-width:370px}.chapter-copy p{font-size:1rem;line-height:1.35;max-width:360px}
 .laptop-shell{padding:8px 6px 9px}.laptop-keyboard{margin:-2px -15% 0;height:auto}
}
@media(max-width:640px) and (max-height:720px){
 .chapter-copy h2{font-size:1.85rem;line-height:1.05;margin-bottom:10px}
 .chapter-copy p{font-size:.9rem;line-height:1.3}.chapter-counter{margin-bottom:8px}
}

.homepage-hero:before{background:linear-gradient(100deg,#06121c8a 0%,#06121c35 55%,#06121c4d),url('./assets/glass-room-hero.webp') center 56%/cover}
.laptop-zone{aspect-ratio:var(--screen-ratio,1.88)}
.complete-device{position:absolute;inset:0;width:100%;height:100%;opacity:var(--device-frame);pointer-events:none;clip-path:polygon(15.5% 2.2%,84.7% 2.2%,86.1% 3.4%,86.3% 5.3%,86.3% 60%,86.8% 60.9%,97.5% 93.1%,97.5% 94.5%,96.8% 95.8%,95.8% 96.2%,4.3% 96.2%,3.1% 95.6%,2.5% 94.3%,2.7% 92.8%,13.3% 61%,13.8% 59.8%,13.8% 4.8%,14.4% 3.3%)}
.laptop-shell{position:absolute;inset:0;padding:0!important;background:none;border-radius:0;box-shadow:none}
.laptop-shell:before{display:none}
.laptop-screen{position:absolute;left:calc(14.973958% * var(--device-frame));top:calc(4.6875% * var(--device-frame));width:calc(100% - 29.947916% * var(--device-frame));height:calc(100% - 48.4375% * var(--device-frame));aspect-ratio:auto;border:0;border-radius:4px;background:transparent}
@media(max-width:640px){.complete-device{display:none}.laptop-screen{border-radius:8px}}

/* Room → laptop → digital room → connected operation → Fides home. */
.homepage-hero:before{background:linear-gradient(105deg,#06121ce8 0%,#06121ca3 53%,#06121c69),url('./assets/room-laptop.webp') center 55%/cover}
.journey{height:850vh}
.scene-sticky.is-room .chapter-copy{text-shadow:0 2px 28px #000,0 1px 6px #000}
.scene-sticky.is-room:before{content:'';position:absolute;inset:0 0 auto;height:38%;z-index:3;pointer-events:none;background:linear-gradient(#06121cec,#06121c68,transparent)}
.intro-portal{position:absolute;inset:0;z-index:8;overflow:hidden;background:#06121c;pointer-events:none}
.portal-room{position:absolute;inset:0;transform-origin:0 0;will-change:transform}
.portal-environment{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.portal-display{position:absolute;left:var(--portal-x);top:var(--portal-y);width:var(--portal-w);height:var(--portal-h);overflow:hidden;border-radius:3px;background:#071520;box-shadow:inset 0 0 0 1px #a2dce21a}
.portal-real,.portal-digital{position:absolute;left:0;top:-55%;width:220%;height:220%;max-width:none;object-fit:cover;object-position:left center}
.portal-digital{opacity:0}
.portal-scan{position:absolute;left:0;right:0;top:-50%;height:50%;opacity:0;background:linear-gradient(transparent,#93e4ed28,transparent);border-bottom:1px solid #adf8ff9c;pointer-events:none}
.portal-caption{position:absolute;left:5%;bottom:6%;font-size:14px;color:#dfedf2;letter-spacing:.025em;text-shadow:0 2px 12px #000}
.report-reveal{will-change:transform,opacity}
.fides-home{position:absolute;inset:0;z-index:5;color:#315c6d;background:#e6e6e6;opacity:0;overflow:hidden;pointer-events:none;font-family:'DM Sans',sans-serif;container-type:inline-size}
.home-app-header{height:10%;min-height:32px;display:flex;align-items:center;justify-content:space-between;padding:0 3%;background:#315c6d;color:#fff;font-size:clamp(7px,1.25cqw,14px);letter-spacing:.08em}
.home-app-header .report-logo{font-size:clamp(18px,3cqw,34px);letter-spacing:0}
.home-menu-viewport{position:absolute;top:10%;bottom:7%;left:0;right:0;overflow:hidden}
.home-menu-content{padding:3%;will-change:transform;display:flex;flex-wrap:wrap;gap:2.5cqw 2%;align-items:start}
.report-category h3{margin:0 0 15px;padding-bottom:9px;border-bottom:1px solid #6c8c98;color:#315c6d;font-size:16px;font-weight:600;letter-spacing:.025em}
.report-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px}
.report-tile{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px;text-align:center;background:#fff;border:1px solid #dfe5e7;border-radius:15px;padding:22px 10px 18px;min-width:0;box-shadow:0 3px 8px #0000000d;color:#315c6d}
.report-tile img{object-fit:contain;width:64px;height:64px;flex:none}
.report-tile span{font-size:12px;line-height:1.3;font-weight:600;letter-spacing:.015em;max-width:150px;overflow-wrap:normal}
.report-tile.is-pantry{box-shadow:0 0 0 2px #6fa9b7,0 5px 18px #315c6d15;background:#faffff}
.home-menu-content .report-category{width:100%}
.home-menu-content .category-0{width:44%}.home-menu-content .category-1{width:54%}
.home-menu-content .category-0 .report-tiles,.home-menu-content .category-1 .report-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-menu-content .category-3 .report-tiles{grid-template-columns:repeat(7,minmax(0,1fr))}
.home-menu-content .category-4{width:27%}.home-menu-content .category-5{width:71%}
.home-menu-content .category-4 .report-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-menu-content .category-5 .report-tiles,.home-menu-content .category-6 .report-tiles{grid-template-columns:repeat(5,minmax(0,1fr))}
.home-menu-content .report-category h3{font-size:clamp(8px,1.5cqw,15px);padding-bottom:.6cqw;margin-bottom:1.15cqw;line-height:1.3}
.home-menu-content .report-tiles{gap:1cqw}
.home-menu-content .report-tile{padding:1.2cqw .5cqw;gap:.8cqw;border-radius:1.2cqw;box-shadow:0 2px 5px #00000012;min-height:10cqw}
.home-menu-content .report-tile img{width:4.5cqw;height:4.5cqw}
.home-menu-content .report-tile span{font-size:clamp(5.5px,.94cqw,11px);line-height:1.28}
.home-app-caption{position:absolute;bottom:0;height:7%;left:0;right:0;display:flex;gap:15px;align-items:center;justify-content:space-between;padding:0 3%;background:#f7f8f9;border-top:1px solid #cedade;font-size:clamp(6px,1.1cqw,12px);font-weight:500;white-space:nowrap}
.home-app-caption span{color:#5d7985;font-weight:400}
.platform-directory{position:relative;z-index:4;background:linear-gradient(160deg,#112a38,#06121c 50%);padding:100px 5% 110px;border-top:1px solid #75a2b22b}
.directory-intro{max-width:1260px;margin:0 auto 48px}
.directory-intro h2{font-size:clamp(2.5rem,4.3vw,4.7rem);font-weight:400;letter-spacing:-.035em;line-height:1.07;margin:0 0 25px}
.directory-intro h2 span{color:var(--aqua)}
.directory-intro>p:last-child{color:var(--muted);font-size:1.2rem;line-height:1.5;max-width:820px;margin:0}
.directory-window{max-width:1450px;margin:auto;border:1px solid #52798a;border-radius:14px;overflow:hidden;box-shadow:0 40px 100px #0004;background:#e6e6e6;font-family:'DM Sans',sans-serif}
.directory-header{background:#315c6d;color:white;display:flex;align-items:center;justify-content:space-between;padding:21px 30px;gap:20px;font-size:12px;letter-spacing:.08em}
.directory-header .report-logo{font-size:32px;letter-spacing:0}
.directory-categories{padding:38px 30px 45px;display:grid;gap:38px}
.directory-categories .report-tiles{grid-template-columns:repeat(8,minmax(0,1fr))}
.directory-categories .category-0 .report-tiles,.directory-categories .category-1 .report-tiles{grid-template-columns:repeat(3,minmax(0,145px))}
.directory-categories .category-3 .report-tiles{grid-template-columns:repeat(7,minmax(0,1fr))}
.directory-categories .category-4 .report-tiles{grid-template-columns:repeat(2,minmax(0,145px))}
.directory-categories .category-5 .report-tiles,.directory-categories .category-6 .report-tiles{grid-template-columns:repeat(5,minmax(0,145px))}
.directory-categories .report-tile span{font-size:13px}
@media(max-width:1050px){
 .directory-categories .report-tiles,.directory-categories .category-3 .report-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
 .directory-categories .category-5 .report-tiles,.directory-categories .category-6 .report-tiles{grid-template-columns:repeat(5,minmax(0,1fr))}
 .directory-categories .report-tile img{width:58px;height:58px}
 .directory-categories .report-tile span{font-size:12px}
}
@media(max-width:640px){
 .journey{height:830vh}.scene-sticky{min-height:650px}
 .chapter-navigation{gap:7px}.chapter-navigation button{width:32px;min-height:40px}
 .platform-directory{padding:75px 5%}
 .directory-intro h2{font-size:2.55rem}.directory-intro>p:last-child{font-size:1.1rem}
 .directory-header{padding:17px 19px;font-size:10px}.directory-header .report-logo{font-size:27px}
 .directory-categories{padding:25px 17px;gap:30px}
 .directory-categories .report-tiles,.directory-categories .category-0 .report-tiles,.directory-categories .category-1 .report-tiles,.directory-categories .category-3 .report-tiles,.directory-categories .category-4 .report-tiles,.directory-categories .category-5 .report-tiles,.directory-categories .category-6 .report-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .directory-categories .report-tile{padding:21px 10px;min-height:140px}.directory-categories .report-tile span{font-size:14px}
 .report-category h3{font-size:16px}.portal-caption{display:none}
 .home-menu-content .report-tile span{font-size:6px}.home-menu-content .report-category h3{font-size:9px}
 .home-app-caption span{display:none}.home-app-caption{font-size:8px;justify-content:center}
 .scene-sticky.is-room:before{display:none}
}

/* Keep navigation neutral; the homepage end cue is defined in integration.css. */
.site-header{position:fixed;background:#06121ce8;backdrop-filter:blur(14px);height:84px;border-bottom:1px solid #9cd9de16}
.chapter-copy{top:max(108px,12%)}
.meet-fides-link{position:relative;display:inline-flex;align-items:center;gap:15px;overflow:visible}
.main-navigation .meet-fides-link{padding:10px 0;margin:0}
.end-meet-link{margin-top:18px;padding:11px 19px;border:1px solid #8ed1d795;background:#112c38;color:#bcecf3;font-size:1rem;pointer-events:auto;min-height:44px}
.end-meet-link[hidden]{display:none}
.end-meet-link:hover{background:#204451}
.directory-outro{max-width:1260px;margin:65px auto 0;padding-top:50px;border-top:1px solid #9cd9de2b}
.directory-outro h2{font-size:clamp(2rem,3.5vw,3.7rem);font-weight:400;line-height:1.1;margin:0 0 24px;letter-spacing:-.035em}
.directory-outro h2 span{color:var(--aqua)}
.directory-outro p{max-width:760px;color:var(--muted);font-size:1.2rem;line-height:1.5;margin:0 0 28px}
@media(max-width:900px){.main-navigation{display:flex}.main-navigation>a:not(.meet-fides-link){display:none}.site-header{gap:16px}.main-navigation .meet-fides-link{margin:0;font-size:1rem}.demo-link{margin:0}}
@media(max-width:640px){.site-header{height:104px;display:grid;grid-template-columns:1fr auto;gap:0 10px;padding:9px 6%}.site-header .brand{grid-column:1;grid-row:1}.site-header .demo-link{grid-column:2;grid-row:1}.site-header .main-navigation{grid-column:1 / -1;grid-row:2;margin:0}.main-navigation .meet-fides-link{padding:5px 0;min-height:36px;font-size:.95rem}.homepage-hero{padding-top:138px}.chapter-copy{top:18%}.end-meet-link{font-size:.95rem;padding:10px 14px;margin-top:12px}.directory-outro{margin-top:45px;padding-top:35px}}

.journey-bottom .end-meet-link{margin-top:0}.scroll-cue[hidden]{display:none}
