:root{color-scheme:dark;--ink:#f6f2e9;--muted:#bac3d1;--base:#101729;--panel:#182237;--line:#35415a;--accent:#ffad79;--max:1120px;font-family:"Segoe UI",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--base);color:var(--ink);line-height:1.55}a{color:inherit}a:focus-visible,video:focus-visible{outline:3px solid var(--accent);outline-offset:4px}img,video{max-width:100%;display:block}p,h1,h2,h3,figure{margin:0}.shell{width:min(var(--max),calc(100% - 72px));margin-inline:auto}.skip{position:fixed;top:0;left:1rem;transform:translateY(-110%);z-index:10;background:var(--accent);color:var(--base);padding:.6rem}.skip:focus{transform:none}
.top{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;border-bottom:1px solid var(--line)}.top a,.foot a{text-decoration:none}.wordmark{font-size:1.18rem;font-weight:800;letter-spacing:.15em}.wordmark span,h1 span,.lab h2 span,.brand span{color:var(--accent)}.top nav{display:flex;gap:28px;color:var(--muted)}.top a:hover,.foot a:hover{color:var(--accent)}.top-link,.text-link{font-weight:700;font-size:.9rem}.top-link{color:var(--accent)}
.hero{min-height:550px;display:grid;grid-template-columns:1.35fr 1fr;gap:55px;align-items:center;padding-block:52px}.eyebrow{font:700 .73rem/1.4 ui-monospace,Consolas,monospace;letter-spacing:.13em;color:var(--accent)}.eyebrow i{display:inline-block;width:8px;height:8px;margin-right:8px;background:var(--accent);border-radius:50%}h1{font-size:clamp(3rem,7.7vw,7.4rem);line-height:.91;letter-spacing:-.075em;margin:20px 0 25px;font-weight:780}.role{font-weight:700;font-size:clamp(.95rem,2vw,1.25rem)}.lead{margin-top:13px;color:var(--muted);max-width:52ch}.actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;gap:25px;align-items:center;border-radius:5px;padding:12px 16px;background:var(--accent);color:#23182a;text-decoration:none;font-weight:750}.button:hover{background:#ffd0ad}.text-link{color:var(--accent);text-underline-offset:.22em}.portrait{border:1px solid var(--line);background:var(--panel);padding:11px}.portrait img{width:100%;aspect-ratio:4/4.3;object-fit:cover;object-position:center 30%;height:auto}.portrait figcaption{display:flex;justify-content:space-between;gap:8px;margin:11px 2px 0;color:var(--muted);font:600 .68rem/1.3 ui-monospace,monospace;letter-spacing:.12em}
.guide{display:grid;grid-template-columns:155px 1fr;align-items:center;gap:24px;padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:9px}.guide p+p{margin-top:7px}.guide-mark{display:flex;align-items:center;gap:10px}.brand{font-weight:800;font-size:1.72rem;letter-spacing:-.06em}.noti-dock{width:50px;height:50px;display:block;flex:0 0 50px}.noti-dock img{width:100%;height:100%}.has-noti .noti-dock[data-occupied] img{visibility:hidden}.noti{position:fixed;top:0;left:0;width:50px;height:50px;pointer-events:none;z-index:5;will-change:transform;filter:drop-shadow(0 5px 9px #0005)}.noti svg{display:block}.noti-eyes{transform-box:fill-box;transform-origin:center}.dust{position:fixed;top:0;left:0;background:var(--accent);pointer-events:none;z-index:4;width:5px;height:5px}
.section{padding-block:79px;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:29px}.section-heading>p{color:var(--muted);font-size:.9rem;text-align:right}.section-heading h2{font-size:clamp(2.1rem,5.3vw,4.5rem);line-height:1.04;letter-spacing:-.056em;margin-top:9px}.case{display:grid;grid-template-columns:55px 1fr 230px;gap:24px;border-top:1px solid var(--line);padding:29px 0}.case-number,.tag{color:var(--accent);font-family:ui-monospace,Consolas,monospace}.tag{font-size:.72rem;font-weight:800;letter-spacing:.1em}.case h3,.projects h3,.reel h3{font-size:clamp(1.26rem,2.4vw,1.75rem);line-height:1.2;margin:7px 0 11px;letter-spacing:-.025em}.case-body>p,.projects article>p:not(.eyebrow),.reel p,.small{color:var(--muted)}.case .outcome{margin-top:12px;color:var(--ink);font-weight:700}.outcome span{font-weight:400;margin-left:7px;color:var(--muted)}.case-note{border-left:1px solid var(--line);padding-left:19px;color:var(--muted);font-size:.87rem}.case-note .noti-dock{margin-bottom:7px}.credentials{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:15px}.credentials .eyebrow{margin-bottom:5px}.badges{display:flex;align-items:center;gap:10px}.badges img{width:70px;height:70px;object-fit:contain}
.lab{background:#191d35;border-block:1px solid var(--line)}.projects,.reels{display:grid;grid-template-columns:1fr 1fr;gap:19px}.projects article,.reel{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:23px}.projects .text-link,.reel .text-link{display:inline-block;margin-top:15px}.small{font-size:.83rem;margin-top:17px}.reel{display:grid;grid-template-columns:minmax(130px,195px) 1fr;align-items:center;gap:20px}.reel video{aspect-ratio:9/16;width:100%;background:#22243a;border-radius:5px;object-fit:contain}.foot{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-block:23px;color:var(--muted);font-size:.86rem}
.project-page{max-width:850px}.project-page .section{padding-block:54px}.project-page h1{font-size:clamp(2.8rem,7vw,5.5rem);line-height:1.02}.project-page h2{font-size:1.6rem;margin-bottom:12px}.project-page .steps{margin:30px 0;padding:22px 25px;background:var(--panel);border:1px solid var(--line);border-radius:9px}.project-page li+li{margin-top:8px}.project-page .download{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.project-page details{padding-block:14px;border-bottom:1px solid var(--line)}.project-page summary{cursor:pointer;font-weight:700}.project-page details p{margin-top:8px;color:var(--muted)}
@media(max-width:870px){.hero{gap:26px;min-height:auto}.case{grid-template-columns:32px 1fr 175px;gap:14px}.reel{grid-template-columns:1fr}.reel video{width:min(100%,240px);margin:auto}}
@media(max-width:610px){.shell{width:calc(100% - 32px)}.top{gap:9px;min-height:58px}.top nav{gap:10px;font-size:.8rem}.wordmark,.top-link{font-size:.76rem}.hero{grid-template-columns:1fr;padding-block:34px;gap:23px}.portrait{width:min(100%,380px)}.portrait img{aspect-ratio:4/3.3;object-position:center 26%}.guide{grid-template-columns:1fr;gap:10px;padding:16px}.section{padding-block:47px}.section-heading{align-items:start;gap:9px}.section-heading>p{font-size:.76rem}.case{grid-template-columns:24px 1fr}.case-note{grid-column:2;display:flex;align-items:center;gap:10px;padding-left:9px}.case-note .noti-dock{margin:0}.credentials{align-items:start}.badges img{width:49px;height:49px}.projects,.reels{grid-template-columns:1fr}.reel{grid-template-columns:minmax(94px,135px) 1fr;padding:12px;gap:12px}.reel h3{font-size:1.04rem}.reel p,.reel a{font-size:.82rem}.foot{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.noti,.dust{display:none}}
/* Keep the guide within the opening composition. */
@media(min-width:611px){.hero{min-height:0;padding-block:38px;gap:42px}.portrait{width:min(100%,390px);justify-self:end}.portrait img{aspect-ratio:4/3.85;object-position:center 26%}}

.hero-copy{grid-area:copy}.hero .portrait{grid-area:portrait}.hero .guide-area{grid-area:guide}.hero{grid-template-areas:"copy portrait" "guide guide";row-gap:25px}@media(max-width:610px){.hero{grid-template-areas:"copy" "guide" "portrait"}}
.hotel .lead{max-width:75ch}.dashboard{margin-top:22px;padding:clamp(13px,3vw,24px);border:1px solid var(--line);background:var(--panel);border-radius:9px}.filters{display:flex;flex-wrap:wrap;gap:12px 20px}.filters label{display:grid;gap:4px;color:var(--muted);font-size:.85rem}.filters select{font:inherit;padding:7px 10px;color:var(--ink);background:var(--base);border:1px solid var(--line);border-radius:4px}.kpis{display:grid;grid-template-columns:repeat(3,1fr);margin:20px 0;gap:8px}.kpis div{display:grid;gap:3px;padding:8px 0;border-bottom:1px solid var(--line)}.kpis strong{font-size:clamp(1.08rem,4.2vw,2.4rem);line-height:1.1;color:var(--accent)}.kpis span{font-size:clamp(.67rem,2.4vw,.9rem)}.chart{width:100%;border-collapse:collapse;text-align:left;font-size:clamp(.73rem,2.2vw,.95rem)}.chart caption{text-align:left;font-weight:750;padding-bottom:7px}.chart th,.chart td{padding:7px 4px;border-bottom:1px solid var(--line)}.chart td:last-child{width:40%;white-space:nowrap}.hotel-bar{display:inline-block;height:.53em;width:calc(var(--pct) * .68);min-width:1px;margin-right:5px;background:var(--accent);border-radius:2px;vertical-align:.12em}.findings{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:19px 0}.findings article{border-left:2px solid var(--accent);padding-left:12px}.findings p,.method p{color:var(--muted)}.method summary{cursor:pointer;font-weight:700}.method p{margin-top:7px}
.noti svg{animation:noti-hover 1.7s ease-in-out infinite}@keyframes noti-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}.has-noti .noti-dock:not([data-occupied]) img{visibility:hidden}@media(prefers-reduced-motion:reduce){.has-noti .noti-dock img{visibility:visible!important}.noti svg{animation:none}}@media(max-width:610px){.findings{grid-template-columns:1fr}.top nav{gap:7px}.top nav a{font-size:.73rem}}
