@font-face{font-family:Work;src:url('assets/WorkSans.ttf')}*{box-sizing:border-box}body{margin:0;background:#f4f5f3;color:#383635;font:14px Work,Arial,sans-serif}aside{position:fixed;inset:0 auto 0 0;width:246px;background:#fff;padding:34px 25px;border-right:1px solid #e1e5e3;display:flex;flex-direction:column}.logo{width:165px;height:50px;object-fit:contain;margin-bottom:48px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;color:#727e86}nav{margin-top:26px;display:grid;gap:5px}nav button{border:0;text-align:left;background:none;padding:13px 12px;color:#68717a}nav button.active{background:#3f495a;color:white;border-radius:4px}.sidefoot{margin-top:auto;font-size:11px;line-height:1.8;color:#647079}.sidefoot span{color:#91999b}main{margin-left:246px;padding:36px 42px 60px;max-width:1660px}header{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}h1{font:400 32px Georgia,serif;margin:10px 0;max-width:620px;line-height:1.18}h2{font:400 26px Georgia,serif;margin:0 0 12px}h3{font-weight:550;font-size:15px}.buttons{display:flex;gap:8px;flex-wrap:wrap}button{font:inherit;font-size:12px;cursor:pointer;border:1px solid #d2d9d8;background:#fff;border-radius:4px;padding:10px 13px;color:#3f495a}button.primary{background:#3f495a;color:white;border-color:#3f495a}button:hover{filter:brightness(.96)}.hero{display:grid;grid-template-columns:1.12fr 1fr;background:#3f495a;color:white;min-height:310px;border-radius:6px;overflow:hidden;margin-bottom:22px}.hero img{width:100%;height:340px;object-fit:cover}.hero .copy{padding:32px}.hero p{line-height:1.7;color:#dae1e2;max-width:440px}.hero .eyebrow{color:#b0c2c1}.hero h2{font-size:35px;margin-top:18px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.card,.panel{background:white;border:1px solid #e0e5e2;border-radius:5px;padding:23px}.card label{display:block;color:#697680;font-size:11px;min-height:28px}.card strong{display:block;font-size:29px;font-weight:500;letter-spacing:-1.2px;margin:8px 0}.card small{color:#78818a;line-height:1.5;font-size:10px}.two{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.panel p,.note{line-height:1.65;color:#657079;font-size:12px}.panel .large{font-size:26px;line-height:1.3;color:#3f495a}.pill{display:inline-block;padding:5px 9px;background:#e7eeeb;color:#3f6155;font-size:10px;border-radius:3px}.bad{background:#f8e6e2;color:#9d5144}.controls{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.control label{display:flex;justify-content:space-between;gap:5px;font-size:11px}.control input[type=range]{width:100%;accent-color:#3f495a;margin:16px 0 3px}.control input[type=number],select{width:100%;padding:9px;margin-top:8px;border:1px solid #d2d9d8;font:inherit;border-radius:3px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}th,td{text-align:right;padding:11px 10px;border-bottom:1px solid #e6eae7;white-space:nowrap}th{color:#697780;font-weight:500;background:#f4f6f4}td:first-child,th:first-child{text-align:left}tr.total{font-weight:600;background:#edf1ef}.note{padding-top:6px}.chart{width:100%;height:230px}.legend{display:flex;gap:18px;font-size:11px;color:#737e85}.legend span:before{content:'';display:inline-block;width:18px;height:3px;background:var(--c);vertical-align:middle;margin-right:7px}.callout{padding:20px;border-left:3px solid #b0c2c1;background:#e9eeeb;margin:20px 0;line-height:1.65;font-size:12px}a{color:#3f495a}.foot{font-size:10px;color:#80898d;margin-top:24px;line-height:1.6}.projectstats{display:flex;gap:26px;margin-top:22px}.projectstats strong{font-size:25px;display:block}.projectstats span{font-size:10px;color:#b0c2c1}.stressbuttons{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.status{font-size:11px;color:#60726e}.hero .copy small{color:#b0c2c1;font-size:10px}@media(max-width:1050px){aside{width:200px;padding:24px 15px}main{margin-left:200px;padding:25px}.kpis,.controls{grid-template-columns:repeat(2,1fr)}header{display:block}.hero .copy{padding:24px}.hero h2{font-size:28px}}@media(max-width:700px){aside{position:relative;width:100%;padding:16px;display:block}.logo{width:120px;height:32px;margin:0 0 12px}nav{display:flex;overflow:auto;margin:12px 0 0;gap:4px}nav button{white-space:nowrap;font-size:11px}.sidefoot,aside>.eyebrow{display:none}main{margin:0;padding:22px 16px}h1{font-size:27px}.hero{display:block}.hero img{height:230px}.two,.three{grid-template-columns:1fr}.card{padding:17px}.card strong{font-size:24px}.controls{gap:15px}}@media print{aside,.buttons,.controls,.stressbuttons{display:none}main{margin:0;padding:0}.panel,.card{break-inside:avoid}.hero{min-height:200px}.hero img{height:230px}body{background:white}}

@font-face{font-family:Lora;src:url(assets/Lora.ttf)}
h1,h2{font-family:Lora,Georgia,serif}
.hotel-scene{position:relative;min-height:340px;overflow:hidden;background:#2c3645}
.hotel-motion{position:absolute;width:100%;height:100%;inset:0}
.window-light{fill:#14202d;mix-blend-mode:multiply;animation:roomLight var(--cycle) linear var(--delay) infinite;opacity:0}
.neon-glow{mix-blend-mode:screen;animation:neonLight 12s ease-in-out infinite;opacity:.36}
.neon-dim{animation:neonDip 12s ease-in-out infinite;opacity:0}
.sign-1{animation-duration:15s;animation-delay:-5s}
.motion-toggle{position:absolute;right:12px;bottom:12px;background:#263042b8;color:white;border:1px solid #ffffff40;z-index:1;font-size:10px;backdrop-filter:blur(6px);display:flex;align-items:center;gap:7px}
.motion-indicator{height:5px;width:5px;border-radius:50%;background:#eabf90;box-shadow:0 0 7px #ffce9970}
.paused .scene-effect{animation-play-state:paused}
.paused .motion-indicator{background:#aeb7bd;box-shadow:none}
/* Long independent on/off periods, with a brief natural change of light. */
@keyframes roomLight{0%,13%{opacity:0}15%,43%{opacity:.94}46%,79%{opacity:0}81%,96%{opacity:.9}100%{opacity:0}}
/* A gentle neon ignition followed by a stable glow; no rapid flashing. */
@keyframes neonLight{0%,26%{opacity:.36}32%{opacity:.95}44%{opacity:.6}60%{opacity:.4}66%,68%{opacity:.05}73%{opacity:.85}84%,100%{opacity:.36}}
@keyframes neonDip{0%,60%,75%,100%{opacity:0}66%,68%{opacity:.68}}
@media(max-width:700px){.hotel-scene{height:330px;min-height:0}}
@media(prefers-reduced-motion:reduce){.scene-effect{animation:none}.window-light,.neon-dim{opacity:0}.neon-glow{opacity:.25}.motion-toggle{display:none}}
@media print{.scene-effect{animation:none;opacity:0}.motion-toggle{display:none}}

.location-map{width:100%;height:auto;display:block;margin:15px 0}.brand-strip{display:flex;align-items:center;justify-content:space-around;gap:18px;padding:23px;background:#3f495a;margin:18px 0}.brand-strip img{width:28%;max-height:60px;object-fit:contain}

/* Editorial project and brand pages retain the Evientro visual hierarchy. */
.project-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:42px;margin:8px 0 30px;align-items:end}.project-intro h2{font-size:34px;line-height:1.3;margin:15px 0 0}.project-intro p,.section-intro p{font-size:14px;line-height:1.8;color:#657079;margin:0;max-width:740px}.project-metrics{display:grid;grid-template-columns:repeat(4,1fr);background:#3f495a;color:#fff;padding:25px 30px;margin:24px 0;border-radius:5px}.project-metrics>div{padding:4px 20px;border-right:1px solid #ffffff25}.project-metrics>div:first-child{padding-left:0}.project-metrics>div:last-child{border:0}.project-metrics strong{display:block;font-size:34px;font-weight:450;letter-spacing:-1px}.project-metrics span{display:block;font-size:11px;color:#d2dddd;margin-top:5px}.project-figure{margin:0;background:#fff;border:1px solid #e0e5e2;border-radius:5px;overflow:hidden}.project-main-image{margin:24px 0}.photo-button{display:block;position:relative;width:100%;border:0;padding:0;border-radius:0;background:#e4e9e6;text-align:left}.photo-button img{display:block;width:100%;height:auto}.photo-button:hover{filter:none}.photo-expand{position:absolute;right:15px;bottom:15px;background:#263042cb;color:#fff;padding:10px 13px;font-size:11px;border-radius:3px}.photo-button:focus-visible{outline:3px solid #b0c2c1;outline-offset:-3px}.project-figure figcaption{padding:18px 22px;display:flex;justify-content:space-between;gap:15px;align-items:baseline}.project-figure figcaption strong{font-size:14px;font-weight:550}.project-figure figcaption span{font-size:10px;color:#78818a;line-height:1.5}.gallery-pair figcaption{display:block}.gallery-pair figcaption span{display:block;margin-top:6px}.project-detail .eyebrow{display:block;margin-bottom:13px}.fact-list{margin:18px 0 0}.fact-list div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #e6eae7}.fact-list dt{color:#657079;font-size:13px}.fact-list dd{margin:0;font-weight:500;font-variant-numeric:tabular-nums}.project-timeline{list-style:none;margin:24px 0 0;padding:0}.project-timeline li{display:grid;grid-template-columns:95px 1fr;gap:20px;padding:15px 0;border-top:1px solid #e6eae7;font-size:12px;line-height:1.6}.project-timeline b{color:#3f495a}.project-timeline span{color:#657079}.section-intro{margin:42px 0 22px}.section-intro h2{margin-top:13px;font-size:29px}.contact-strip{margin-top:28px;padding:28px 30px;background:#e7eeeb;border-radius:5px;display:flex;justify-content:space-between;gap:25px;align-items:center}.contact-strip h3{margin:12px 0 5px}.contact-strip p{margin:0;font-size:12px;color:#657079}.contact-strip a{display:block;font-size:13px;margin:9px 0;text-decoration:none}.gallery-dialog{width:min(1120px,94vw);max-height:94vh;padding:18px;border:0;border-radius:7px;background:#fff;color:#383635;box-shadow:0 20px 90px #0004}.gallery-dialog::backdrop{background:#202833de;backdrop-filter:blur(5px)}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;color:#657079}.gallery-dialog>img{display:block;width:100%;max-height:70vh;object-fit:contain;background:#f4f5f3}.gallery-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 0 3px}.gallery-caption h2{font-size:22px;margin:0}.gallery-caption p{font-size:11px;color:#657079;margin:6px 0}.gallery-controls{display:flex;gap:8px}.gallery-controls button{font-size:18px;padding:8px 16px}.marriott-hero{display:grid;grid-template-columns:.65fr 1.35fr;background:#3f495a;color:#fff;border-radius:6px;padding:40px;gap:44px;align-items:center}.marriott-wordmark{padding-right:32px;border-right:1px solid #ffffff30;text-align:center}.marriott-wordmark img{width:100%;max-width:240px;height:105px;object-fit:contain}.marriott-wordmark span{display:block;letter-spacing:2.3px;font-size:9px;color:#b0c2c1;margin-top:23px}.marriott-hero h2{font-size:35px;line-height:1.28;margin:16px 0}.marriott-hero .eyebrow{color:#b0c2c1}.marriott-hero p{font-size:13px;line-height:1.75;color:#dbe2e2}.source-inline{font-size:10px;line-height:1.7;color:#78818a}.source-inline a{color:inherit;text-decoration-color:#b0c2c1;text-underline-offset:3px}.marriott-hero .source-inline{font-size:10px;color:#b0c2c1}.bonvoy-section{display:grid;grid-template-columns:.65fr 1.35fr;gap:40px;background:white;border:1px solid #e0e5e2;border-radius:5px;padding:32px;margin-top:32px;align-items:center}.bonvoy-identity{background:#3f495a;padding:35px 25px;border-radius:4px;text-align:center;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.bonvoy-identity img{height:83px;width:100%;object-fit:contain}.bonvoy-section .bonvoy-identity p{color:#dbe2e2;font-size:12px;margin:25px 0 0}.bonvoy-section h2{margin:13px 0}.bonvoy-section p{color:#657079;font-size:13px;line-height:1.8}.bonvoy-section .source-inline{font-size:10px}.step-number{font-family:Lora,Georgia,serif;font-size:30px;color:#93aaa5}.distribution-grid h3{font-size:15px;margin-top:20px}.brand-family{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;border:1px solid #e0e5e2;background:#e0e5e2;border-radius:5px;overflow:hidden}.brand-family article{padding:26px;background:#fff}.brand-family article>span{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:#78818a}.brand-family h3{font:400 20px/1.6 Lora,Georgia,serif;margin:13px 0}.brand-family p{font-size:12px;color:#657079;line-height:1.65;margin:0}.brand-family .moxy-family{background:#e7eeeb}.portfolio-logos{background:#3f495a;border-radius:4px;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:30px;margin-top:20px;align-items:center}.portfolio-logos img{width:100%;max-height:54px;object-fit:contain}.moxy-section{display:grid;grid-template-columns:1fr 1.1fr;gap:0;background:#3f495a;color:white;margin-top:35px;border-radius:5px;overflow:hidden}.moxy-copy{padding:30px}.moxy-mark{display:block;width:125px;height:60px;object-fit:contain;margin-bottom:23px}.moxy-copy .eyebrow{color:#b0c2c1}.moxy-copy h2{font-size:27px;line-height:1.35;margin-top:15px}.moxy-copy p{font-size:12px;line-height:1.75;color:#dbe2e2}.moxy-copy .source-inline{font-size:10px;color:#b0c2c1;margin-bottom:0}.moxy-copy button{margin-top:8px}.moxy-section figure{margin:0;position:relative;min-height:460px}.moxy-section figure>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.moxy-section figcaption{position:absolute;bottom:15px;right:15px;font-size:9px;background:#263042bd;padding:8px 10px;color:#fff}td:first-child{white-space:normal;min-width:170px}a:focus-visible,button:focus-visible{outline:2px solid #93aaa5;outline-offset:3px}
@media(max-width:1050px){.project-intro{gap:25px}.marriott-hero{padding:28px;gap:26px}.marriott-hero h2{font-size:29px}.marriott-wordmark{padding-right:22px}.bonvoy-section{padding:25px;gap:25px}.moxy-section{grid-template-columns:1fr}.moxy-section figure{min-height:380px}.moxy-section figure>img{object-position:center 50%}.project-metrics{padding:20px}.project-metrics>div{padding:4px 12px}.project-metrics strong{font-size:28px}}
@media(max-width:700px){.project-intro,.marriott-hero,.bonvoy-section{grid-template-columns:1fr}.project-intro{gap:18px}.project-intro h2{font-size:29px}.project-intro p,.section-intro p{font-size:13px}.project-metrics{grid-template-columns:repeat(2,1fr);gap:22px;padding:23px}.project-metrics>div,.project-metrics>div:first-child{padding:0;border:0}.project-metrics strong{font-size:29px}.project-figure figcaption{display:block;padding:16px}.project-figure figcaption span{display:block;margin-top:6px}.photo-expand{font-size:9px;right:10px;bottom:10px;padding:8px}.contact-strip{display:block;padding:23px}.contact-strip>div+div{margin-top:20px}.marriott-wordmark{border:0;border-bottom:1px solid #ffffff30;padding:0 0 25px}.marriott-wordmark img{height:65px;max-width:200px}.marriott-wordmark span{margin-top:15px}.marriott-hero{padding:27px;gap:27px}.marriott-hero h2{font-size:29px}.brand-family{grid-template-columns:1fr}.portfolio-logos{grid-template-columns:repeat(2,1fr);gap:28px;padding:25px}.portfolio-logos img{height:45px}.bonvoy-section{padding:22px}.bonvoy-identity{padding:28px}.moxy-copy{padding:25px}.moxy-section figure{min-height:270px}.section-intro h2{font-size:27px}.gallery-caption h2{font-size:17px}.gallery-caption p{font-size:10px}.gallery-controls button{padding:8px 12px}.gallery-dialog{padding:12px}.brand-kpis .card strong{font-size:26px;letter-spacing:-.7px}.legend{flex-wrap:wrap}}
