@font-face{font-family:Hanken;src:url('/assets/fonts/body.woff2') format('woff2');font-display:swap}
@font-face{font-family:BigShoulders;src:url('/assets/fonts/display.woff2') format('woff2');font-display:swap}
:root{--paper:#f2f0e8;--surface:#e7e3d8;--ink:#10261d;--muted:#62675f;--gold:#a87322;--rule:#bbb9ae;--header:rgba(242,240,232,.91);--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.58 Hanken,Arial,sans-serif;overflow-x:hidden}
body:before{content:'';position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}
a{color:inherit}
a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
img{display:block;max-width:100%}
figure{margin:0}
.ml-skip{position:fixed;left:18px;top:-70px;z-index:80;padding:11px 15px;background:var(--ink);color:var(--paper)}
.ml-skip:focus{top:12px}
.ml-header{position:sticky;top:0;z-index:40;height:72px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--rule);background:var(--header);backdrop-filter:blur(14px)}
.ml-brand{display:block;width:155px;height:50px;overflow:hidden}
.ml-brand svg{display:block;width:155px;height:50px}.ml-logo-dark{display:none}
.ml-header nav{display:flex;align-items:center;gap:34px;white-space:nowrap}
.ml-header nav a{font-size:11px;text-decoration:none}
.ml-header nav .ml-project-link{padding-bottom:5px;border-bottom:1px solid currentColor;font-size:9px;font-weight:650;letter-spacing:.14em;text-transform:uppercase}
.ml-hero{min-height:calc(100dvh - 72px);display:grid;grid-template-columns:minmax(430px,.82fr) minmax(0,1.18fr);border-bottom:1px solid var(--rule)}
.ml-hero-copy{min-width:0;padding:clamp(32px,4vw,65px) 6% 28px 9%;display:flex;flex-direction:column}
.ml-kicker,.ml-section-mark,.ml-meta dt,.ml-tour-chapter>span{font-size:9px;font-weight:650;line-height:1.5;letter-spacing:.18em;text-transform:uppercase}
.ml-kicker{margin:0;color:var(--muted)}
.ml-hero h1{margin:auto 0 28px;font:800 clamp(100px,10.5vw,190px)/.75 BigShoulders,sans-serif;letter-spacing:-.035em;text-transform:uppercase}
.ml-hero h1 span,.ml-hero h1 em{display:block}
.ml-hero h1 em{color:var(--gold);font-style:normal}
.ml-deck{max-width:30rem;margin:0 0 32px;font-size:clamp(19px,1.55vw,27px);line-height:1.25;letter-spacing:-.025em;text-wrap:balance}
.ml-meta{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:18px;margin:0;padding-top:13px;border-top:1px solid var(--rule)}
.ml-meta dt{color:var(--muted)}
.ml-meta dd{margin:5px 0 0;font-size:11px;line-height:1.4}
.ml-hero-media{position:relative;min-height:500px;overflow:hidden;background:var(--surface)}
.ml-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.ml-opening{max-width:1500px;margin:auto;padding:clamp(100px,12vw,195px) 5%;display:grid;grid-template-columns:minmax(290px,.85fr) minmax(420px,1.15fr);gap:11%;align-items:start}
.ml-opening-statement p{margin:0;font:400 clamp(42px,4.6vw,82px)/.98 Georgia,serif;letter-spacing:-.052em;text-wrap:balance}
.ml-opening-statement strong{color:var(--gold);font-weight:400}
.ml-opening-copy{max-width:690px;padding-top:6px}
.ml-opening-copy h2{margin:0 0 34px;font:800 clamp(43px,4.5vw,78px)/.9 BigShoulders,sans-serif;letter-spacing:-.022em;text-transform:uppercase}
.ml-opening-copy p,.ml-brand-copy p,.ml-product-intro p{margin:0 0 23px;font-size:clamp(17px,1.18vw,21px);line-height:1.65;text-wrap:pretty}
.ml-wide-image{width:100%;padding:0 3.5%}
.ml-wide-image img{width:100%;height:min(76dvh,820px);min-height:500px;object-fit:cover}
.ml-wide-image figcaption,.ml-brand-board figcaption,.ml-site-frame figcaption{display:flex;justify-content:flex-end;padding-top:11px;color:var(--muted);font-size:10px;letter-spacing:.1em}
.ml-brand-story{max-width:1500px;margin:auto;padding:clamp(110px,12vw,195px) 5%;display:grid;grid-template-columns:minmax(280px,.68fr) minmax(550px,1.32fr);gap:8%;align-items:center}
.ml-section-mark{margin:0 0 30px;color:var(--gold)}
.ml-brand-copy h2,.ml-product-intro h2{margin:0 0 38px;font:800 clamp(57px,6.5vw,116px)/.84 BigShoulders,sans-serif;letter-spacing:-.025em;text-transform:uppercase}
.ml-brand-board{min-width:0}
.ml-brand-board img{width:100%;background:var(--surface)}
.ml-product{padding:clamp(100px,11vw,180px) 5%;border-top:1px solid var(--rule)}
.ml-product-intro{max-width:980px;margin:0 auto 70px;text-align:center}
.ml-product-intro p:not(.ml-section-mark){max-width:720px;margin:0 auto;font-size:clamp(18px,1.3vw,23px)}
.ml-site-frame{max-width:1540px;margin:auto;padding:clamp(18px,2.5vw,38px);background:var(--surface)}
.ml-site-frame img{width:100%;box-shadow:0 26px 65px rgba(16,38,29,.12)}
.ml-site-frame figcaption{justify-content:flex-start}
.ml-tour{max-width:1600px;margin:auto;padding:clamp(85px,9vw,140px) 4%;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:7%;align-items:start;border-top:1px solid var(--rule)}
.ml-tour-media{position:sticky;top:92px;height:calc(100dvh - 125px);min-height:520px;overflow:hidden;background:var(--surface)}
.ml-tour-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.025);transition:opacity .7s ease,transform 1.1s var(--ease)}
.ml-tour-media img.is-active{opacity:1;transform:scale(1)}
.ml-tour-media img[data-tour-image="story"],.ml-tour-media img[data-tour-image="book"]{object-fit:contain;background:var(--surface);padding:3%}
.ml-tour-chapters{min-width:0}
.ml-tour-chapter{min-height:72dvh;padding:18dvh 0 70px;border-bottom:1px solid var(--rule);opacity:.42;transition:opacity .4s ease}
.ml-tour-chapter:last-child{border-bottom:0}
.ml-tour-chapter.is-active{opacity:1}
.ml-tour-chapter>span{color:var(--gold)}
.ml-tour-chapter h3{margin:25px 0 27px;font:400 clamp(38px,4vw,69px)/1 Georgia,serif;letter-spacing:-.05em;text-wrap:balance}
.ml-tour-chapter p{max-width:34rem;margin:0;font-size:clamp(17px,1.1vw,20px);line-height:1.62}
.ml-tour-inline{display:none}
.ml-launch-system{padding:clamp(110px,12vw,190px) 6%;display:grid;grid-template-columns:minmax(390px,.95fr) minmax(470px,1.05fr);gap:9%;border-top:1px solid var(--rule)}
.ml-launch-heading h2{position:sticky;top:120px;margin:0;font:800 clamp(58px,6.5vw,116px)/.84 BigShoulders,sans-serif;letter-spacing:-.028em;text-transform:uppercase}
.ml-launch-points{display:grid;grid-template-columns:1fr 1fr;gap:0}
.ml-launch-points article{min-height:270px;padding:28px 32px 42px 0;border-top:1px solid var(--ink)}
.ml-launch-points article:nth-child(odd){margin-right:32px;border-right:1px solid var(--rule)}
.ml-launch-points article:nth-child(even){padding-left:2px}
.ml-launch-points h3{margin:0 0 65px;font:400 clamp(31px,3vw,49px)/1 Georgia,serif;letter-spacing:-.045em}
.ml-launch-points p{max-width:28rem;margin:0;font-size:16px;line-height:1.55}
.ml-closing{padding:clamp(120px,14vw,220px) 6% 65px;border-top:1px solid var(--rule)}
.ml-closing-quote{max-width:1300px;margin:0 0 100px;font:400 clamp(52px,7.2vw,132px)/.95 Georgia,serif;letter-spacing:-.06em;text-wrap:balance}
.ml-closing-links{display:flex;justify-content:space-between;gap:32px;padding-top:18px;border-top:1px solid var(--ink)}
.ml-closing-links a{font-size:11px;font-weight:650;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}
.ml-footer{padding:34px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--rule);font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.ml-footer a{text-decoration:none}
.js .ml-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .ml-reveal.is-visible{opacity:1;transform:none}
@keyframes ml-title-in{from{opacity:0;transform:translateY(55%)}to{opacity:1;transform:none}}
@keyframes ml-image-in{from{opacity:0;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
.ml-hero h1 span,.ml-hero h1 em{animation:ml-title-in .9s var(--ease) both}
.ml-hero h1 em{animation-delay:.1s}
.ml-hero-media img{animation:ml-image-in 1.35s var(--ease) both}
@media(hover:hover) and (pointer:fine){.ml-header nav a:hover,.ml-closing-links a:hover,.ml-footer a:hover{color:var(--gold)}}
@media(max-width:980px){.ml-hero{grid-template-columns:1fr}.ml-hero-copy{min-height:640px;padding:55px 6% 30px}.ml-hero h1{font-size:clamp(110px,18vw,170px);margin:90px 0 35px}.ml-hero-media{min-height:0;aspect-ratio:1.25}.ml-opening{grid-template-columns:1fr;gap:65px}.ml-opening-statement{max-width:720px}.ml-opening-copy{margin-left:auto}.ml-brand-story{grid-template-columns:1fr;gap:55px}.ml-brand-copy{max-width:770px}.ml-tour{grid-template-columns:1fr}.ml-tour-media{display:none}.ml-tour-chapter{min-height:0;padding:75px 0;opacity:1}.ml-tour-inline{display:block;width:100%;max-height:680px;margin-bottom:38px;object-fit:cover}.ml-tour-chapter[data-tour="story"] .ml-tour-inline,.ml-tour-chapter[data-tour="book"] .ml-tour-inline{object-fit:contain;background:var(--surface);padding:3%}.ml-launch-system{grid-template-columns:1fr;gap:65px}.ml-launch-heading h2{position:static;max-width:800px}}
@media(max-width:680px){html{scroll-padding-top:64px}.ml-header{height:64px;padding:0 5%;gap:14px}.ml-brand{width:120px;height:42px}.ml-brand svg{width:120px;height:42px}.ml-header nav{gap:15px}.ml-header nav a:nth-child(2){display:none}.ml-header nav a{font-size:9px}.ml-header nav .ml-project-link{font-size:8px}.ml-hero-copy{min-height:535px;padding:43px 6% 26px}.ml-kicker{font-size:8px}.ml-hero h1{font-size:20vw;margin:72px 0 30px}.ml-deck{font-size:18px}.ml-meta{grid-template-columns:1fr;gap:9px}.ml-meta div{display:grid;grid-template-columns:72px 1fr}.ml-meta dd{margin:0}.ml-hero-media{aspect-ratio:.83}.ml-opening{padding:90px 6%;gap:55px}.ml-opening-statement p{font-size:11vw}.ml-opening-copy h2{font-size:13vw}.ml-wide-image{padding:0}.ml-wide-image img{height:72dvh;min-height:520px}.ml-wide-image figcaption{padding:10px 5% 0}.ml-brand-story,.ml-product,.ml-tour,.ml-launch-system,.ml-closing{padding-left:6%;padding-right:6%}.ml-brand-copy h2,.ml-product-intro h2,.ml-launch-heading h2{font-size:15vw}.ml-product-intro{text-align:left}.ml-product-intro p:not(.ml-section-mark){margin-left:0}.ml-site-frame{margin-left:-6.8%;margin-right:-6.8%;padding:14px}.ml-tour-chapter h3{font-size:11vw}.ml-launch-points{grid-template-columns:1fr}.ml-launch-points article{min-height:0;padding:26px 0 48px;margin:0!important;border-right:0!important}.ml-launch-points h3{margin-bottom:24px}.ml-closing-quote{font-size:12vw;margin-bottom:70px}.ml-closing-links{display:grid}.ml-footer{display:block}.ml-footer span{display:block;margin:14px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ml-hero h1 span,.ml-hero h1 em,.ml-hero-media img{animation:none}.js .ml-reveal{opacity:1;transform:none;transition:none}.ml-tour-media img,.ml-tour-chapter{transition:none}}
@media(min-width:2200px){body{font-size:26px}.ml-header{height:110px}.ml-brand,.ml-brand svg{width:240px;height:76px}.ml-header nav a{font-size:18px}.ml-header nav .ml-project-link{font-size:15px}.ml-hero{min-height:calc(100dvh - 110px)}.ml-hero h1{font-size:260px}.ml-kicker,.ml-section-mark,.ml-meta dt,.ml-tour-chapter>span{font-size:16px}.ml-meta dd{font-size:18px}.ml-deck{font-size:36px;max-width:44rem}.ml-opening,.ml-brand-story,.ml-tour{max-width:2300px}.ml-opening-copy p,.ml-brand-copy p,.ml-product-intro p,.ml-tour-chapter p{font-size:29px}.ml-opening-copy h2,.ml-brand-copy h2,.ml-product-intro h2,.ml-launch-heading h2{font-size:155px}.ml-wide-image img{max-height:1200px}.ml-product-intro{max-width:1450px}.ml-site-frame{max-width:2300px}.ml-tour-chapter h3{font-size:92px}.ml-launch-points h3{font-size:70px}.ml-launch-points p{font-size:25px}.ml-closing-quote{font-size:170px}.ml-footer,.ml-closing-links a{font-size:16px}}
.ml-results,.ml-built{padding:clamp(80px,10vw,150px) 6%;border-top:1px solid var(--rule)}
.ml-results h2,.ml-built h2{max-width:980px;margin:0 0 56px;font:400 clamp(36px,4.6vw,76px)/1 Georgia,serif;letter-spacing:-.05em;text-wrap:balance}
.ml-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0}
.ml-stats div{padding:26px 24px 34px 0;border-top:1px solid var(--ink)}
.ml-stats dt{font:400 clamp(44px,5.4vw,88px)/1 Georgia,serif;letter-spacing:-.05em;color:var(--gold)}
.ml-stats dd{max-width:19rem;margin:14px 0 0;font-size:15px;line-height:1.5}
.ml-note{margin:22px 0 0;font-size:12px;letter-spacing:.06em;color:var(--muted)}
.ml-review{margin:64px 0 0;max-width:860px}
.ml-review blockquote{margin:0;font:italic 400 clamp(24px,2.6vw,38px)/1.3 Georgia,serif}
.ml-review figcaption{margin-top:18px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ml-built-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 28px}
.ml-built-grid article{padding:22px 0 34px;border-top:1px solid var(--ink)}
.ml-built-grid h3{margin:0 0 12px;font:400 24px/1.1 Georgia,serif;letter-spacing:-.03em}
.ml-built-grid p{margin:0;font-size:15px;line-height:1.5}
.ml-meta a{color:inherit}
@media(max-width:900px){.ml-stats{grid-template-columns:1fr 1fr}.ml-built-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ml-stats,.ml-built-grid{grid-template-columns:1fr}}


.ml-brand-board img,.ml-site-frame img{height:auto}
.ml-act{padding:clamp(90px,10vw,160px) 5%;border-top:1px solid var(--rule)}
.ml-act-tint{background:var(--surface)}
.ml-act-ink{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.ml-act-ink .ml-section-mark{color:var(--gold)}
.ml-act-head{max-width:1100px;margin:0 0 clamp(40px,5vw,72px)}
.ml-act-head h2{margin:14px 0 26px;font:400 clamp(40px,5.4vw,92px)/.98 Georgia,serif;letter-spacing:-.055em;text-wrap:balance}
.ml-act-head p:not(.ml-section-mark){max-width:42rem;margin:0;font-size:clamp(17px,1.2vw,21px);line-height:1.6}
.ml-shot{margin:0}
.ml-shot img{display:block;width:100%;height:auto;box-shadow:0 26px 65px rgba(16,38,29,.16)}
.ml-shot figcaption{padding-top:11px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ml-act-ink .ml-shot figcaption{color:var(--rule)}
.ml-act-ink .ml-shot img{box-shadow:0 26px 65px rgba(0,0,0,.4)}
.ml-crop img{height:100%;object-fit:cover;aspect-ratio:1.45/1}
.ml-crop-square img{aspect-ratio:1/1.05}
.ml-ribbon img{aspect-ratio:3.3/1;object-fit:cover;height:auto}
.ml-ribbon-low{margin-top:clamp(28px,3vw,48px)}
.ml-ribbon-low img{aspect-ratio:3.6/1}
.ml-shot-hero{margin-bottom:clamp(40px,5vw,80px)}
.ml-act-pair{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%;align-items:center}
.ml-act-note strong{display:block;margin-bottom:18px;font:400 clamp(30px,3.4vw,56px)/1 Georgia,serif;letter-spacing:-.045em;color:var(--gold)}
.ml-act-note p{max-width:28rem;margin:0;font-size:clamp(17px,1.15vw,20px);line-height:1.6}
.ml-act-collage{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(18px,2.4vw,36px);align-items:start}
.ml-sample{margin:34px 0 0;font-size:12px;letter-spacing:.06em;color:var(--rule)}

.ml-collage-a{grid-column:1 / span 7;grid-row:1}
.ml-collage-b{grid-column:1 / span 7;grid-row:2}
.ml-collage-c{grid-column:8 / span 5;grid-row:1 / span 2}
.ml-collage-c img{aspect-ratio:1055/1491}
.ml-act-duo{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2vw,30px);margin-top:clamp(28px,3vw,48px)}
.ml-act-duo .ml-crop img{aspect-ratio:1.25/1}
@media(max-width:900px){.ml-act-pair,.ml-act-collage,.ml-act-duo{grid-template-columns:1fr}.ml-collage-a,.ml-collage-b,.ml-collage-c{grid-column:auto;grid-row:auto}.ml-collage-c{max-width:380px}.ml-ribbon img,.ml-ribbon-low img{aspect-ratio:1.6/1}}

/* ===== Editorial layer: architectural hospitality magazine ===== */
body{counter-reset:sec plate}
.ml-opening,.ml-results,.ml-brand-story,.ml-product,.ml-tour,.ml-built,.ml-act,.ml-launch-system{position:relative;counter-increment:sec}
.ml-opening::before,.ml-results::before,.ml-brand-story::before,.ml-product::before,.ml-tour::before,.ml-built::before,.ml-act::before,.ml-launch-system::before{content:"No. " counter(sec,decimal-leading-zero) "  —  Manike Lodge";position:absolute;top:clamp(26px,3vw,44px);right:5%;font:italic 400 12px/1 Georgia,serif;letter-spacing:.08em;color:var(--muted)}
.ml-act-ink::before{color:var(--rule)}
body::after{content:"A Zezzla case file  ·  Habarana, Sri Lanka";position:fixed;left:14px;top:50%;z-index:30;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font-size:9px;font-weight:650;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);pointer-events:none;opacity:.8}
@media(max-width:1280px){body::after{display:none}}
.ml-header{border-bottom:0;box-shadow:0 1px 0 var(--rule)}
@supports(animation-timeline:scroll()){.ml-header::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--gold);transform-origin:0 50%;animation:ml-progress linear both;animation-timeline:scroll(root)}@keyframes ml-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}}
/* hero */
.ml-kicker{color:var(--gold)}
.ml-deck{font:italic 400 clamp(21px,1.7vw,30px)/1.28 Georgia,serif;letter-spacing:-.02em}
.ml-meta{border-top:1px solid var(--ink);gap:24px}
.ml-meta dd{font-size:12px}
.ml-hero-media:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.55);pointer-events:none}
/* section marks and rules */
.ml-section-mark{display:flex;align-items:center;gap:14px;color:var(--gold)}
.ml-section-mark:before{content:"";width:42px;height:1px;background:currentColor}
/* opening */
.ml-opening-statement p{font-size:clamp(46px,5.2vw,96px);line-height:.94}
.ml-opening-copy{border-top:1px solid var(--ink);padding-top:34px}
.ml-opening-copy>p:first-of-type:first-letter{float:left;margin:8px 14px 0 -2px;font:400 clamp(86px,8vw,128px)/.72 Georgia,serif;color:var(--gold)}
.ml-opening-copy h2{font-size:clamp(34px,3.4vw,58px)}
/* results as a ledger */
.ml-results{padding-top:clamp(110px,12vw,190px)}
.ml-results h2{font-size:clamp(40px,5.2vw,88px);line-height:.97;max-width:1100px}
.ml-stats{border-top:3px double var(--ink);border-bottom:1px solid var(--ink)}
.ml-stats div{padding:34px 28px 38px 0;border-top:0;border-bottom:1px solid var(--rule);display:grid;grid-template-rows:auto 1fr}
.ml-stats div:nth-last-child(-n+3){border-bottom:0}
.ml-stats dt{font:400 clamp(54px,6.6vw,112px)/.9 Georgia,serif;letter-spacing:-.06em;color:var(--ink)}
.ml-stats dd{margin-top:18px;font-size:11px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;color:var(--muted)}
.ml-note{font:italic 400 13px/1.4 Georgia,serif;letter-spacing:0}
/* pull quote */
.ml-review{max-width:none;margin:clamp(70px,8vw,130px) 0 0;display:grid;grid-template-columns:minmax(80px,.18fr) minmax(0,1fr);gap:4%;align-items:start}
.ml-review:before{content:"\201C";font:400 clamp(160px,18vw,300px)/.7 Georgia,serif;color:var(--gold)}
.ml-review blockquote{font:italic 400 clamp(30px,3.7vw,62px)/1.12 Georgia,serif;letter-spacing:-.035em;text-wrap:balance}
.ml-review figcaption{grid-column:2;margin-top:26px;padding-top:16px;border-top:1px solid var(--ink)}
.ml-stars{color:var(--gold);letter-spacing:.2em;margin-right:10px}
/* plates */
.ml-wide-image figcaption,.ml-brand-board figcaption,.ml-site-frame figcaption,.ml-shot figcaption{counter-increment:plate;font:italic 400 13px/1.4 Georgia,serif;letter-spacing:0;text-transform:none;color:var(--muted)}
.ml-wide-image figcaption:before,.ml-brand-board figcaption:before,.ml-site-frame figcaption:before,.ml-shot figcaption:before{content:"Plate " counter(plate,decimal-leading-zero) "  ·  ";font:650 9px/1 Hanken,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;font-style:normal;color:var(--gold)}
.ml-wide-image{padding:0}
.ml-wide-image figcaption{padding:12px 3.5% 0;justify-content:flex-start}
.ml-wide-image img{min-height:560px;height:min(86dvh,940px)}
.ml-brand-board img{border:1px solid var(--rule);padding:clamp(10px,1.4vw,22px);background:#fbf9f3}
.ml-site-frame{background:transparent;padding:0 clamp(18px,3vw,50px)}
.ml-site-frame img{border:1px solid var(--rule)}
/* what we built: index list */
.ml-built{counter-reset:feat;padding-top:clamp(110px,12vw,190px)}
.ml-built h2{font-size:clamp(40px,5vw,84px)}
.ml-built-grid{border-top:3px double var(--ink);gap:0 clamp(24px,3vw,56px)}
.ml-built-grid article{counter-increment:feat;padding:26px 0 40px;border-top:0;border-bottom:1px solid var(--rule);min-height:210px}
.ml-built-grid article:before{content:counter(feat,decimal-leading-zero);display:block;margin-bottom:34px;font:italic 400 15px/1 Georgia,serif;color:var(--gold)}
.ml-built-grid h3{font-size:27px}
/* product acts */
.ml-act{padding-top:clamp(120px,13vw,200px)}
.ml-act-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:8%;align-items:end;max-width:none}
.ml-act-head .ml-section-mark{grid-column:1 / -1}
.ml-act-head h2{margin:0;font-size:clamp(46px,6vw,108px);line-height:.92}
.ml-act-head p:not(.ml-section-mark){padding-bottom:10px;border-bottom:1px solid currentColor;font-style:italic;font-family:Georgia,serif;font-size:clamp(17px,1.25vw,21px)}
.ml-shot img{box-shadow:none;border:1px solid var(--rule)}
.ml-act-ink .ml-shot img{border-color:rgba(255,255,255,.18)}
.ml-act-note strong{font-style:italic}
.ml-act-pair{gap:10%}
.ml-collage-c img{transform:rotate(1.2deg);box-shadow:0 30px 60px rgba(16,38,29,.2)}
.ml-launch-system{padding-top:clamp(120px,12vw,190px)}
.ml-launch-points article{border-top:1px solid var(--ink)}
.ml-launch-points h3{font-style:italic}
.ml-closing-quote{font-style:italic}
.ml-closing{border-top:3px double var(--ink)}
@media(max-width:900px){.ml-act-head{grid-template-columns:1fr}.ml-review{grid-template-columns:1fr}.ml-review:before{font-size:140px;margin-bottom:-30px}.ml-review figcaption{grid-column:1}.ml-stats div:nth-last-child(-n+3){border-bottom:1px solid var(--rule)}.ml-opening::before,.ml-results::before,.ml-brand-story::before,.ml-product::before,.ml-tour::before,.ml-built::before,.ml-act::before,.ml-launch-system::before{right:6%}}

.ml-stats dt{font-size:clamp(40px,5vw,86px);white-space:nowrap}

/* ===== Light ending: live-coded product illustrations, comparison, value, FAQ, CTA ===== */
.ml-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:root{--card:#fffdf8;--sage:#6b8a77;--sand:#c9b48a;--deep:#3b5a49}
.zx-marquee{overflow:hidden;background:var(--paper);color:var(--ink);padding:24px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule)}
.zx-marquee div{display:flex;width:max-content;animation:zx-marq 52s linear infinite}
.zx-marquee:hover div{animation-play-state:paused}
.zx-marquee span{display:flex;align-items:center;gap:clamp(28px,4vw,60px);padding-right:clamp(28px,4vw,60px);font:800 clamp(34px,4.2vw,68px)/1 BigShoulders,sans-serif;letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap}
.zx-marquee span:after{content:"";width:.34em;height:.34em;border-radius:50%;background:var(--gold)}
@keyframes zx-marq{to{transform:translateX(-50%)}}
.zx-why,.zx-sys,.zx-value,.zx-faq,.zx-final{position:relative;padding:clamp(110px,12vw,190px) 5%}
.zx-why,.zx-value,.zx-final{background:var(--paper)}
.zx-sys,.zx-faq{background:var(--surface)}
.zx-head{max-width:1500px;margin:0 auto clamp(56px,7vw,100px)}
.zx-head h2,.zx-faq h2,.zx-final h2{margin:14px 0 0;font:800 clamp(52px,7.6vw,138px)/.86 BigShoulders,sans-serif;letter-spacing:-.028em;text-transform:uppercase;color:var(--ink)}
.zx-head h2 em,.zx-faq h2 em,.zx-final h2 em{font-style:normal;color:var(--gold)}
.zx-lede{max-width:44rem;margin:30px 0 0;font:italic 400 clamp(18px,1.4vw,24px)/1.5 Georgia,serif;color:var(--ink)}
.js [data-split] .zx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.js [data-split] .zx-w>span{display:inline-block;transform:translateY(112%);transition:transform 1.1s var(--ease) calc(var(--i)*60ms)}
.js [data-split].is-in .zx-w>span{transform:none}
/* comparison */
.zx-table-wrap{max-width:1500px;margin:0 auto;overflow-x:auto;border-top:3px double var(--ink);border-bottom:1px solid var(--ink)}
.zx-table{width:100%;min-width:820px;border-collapse:collapse;text-align:left}
.zx-table th,.zx-table td{padding:22px 24px 22px 0;vertical-align:top;font-size:clamp(15px,1.05vw,18px);line-height:1.45;border-bottom:1px solid var(--rule)}
.zx-table thead th{padding-top:30px;font-size:10px;font-weight:650;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.zx-table tbody th{width:18%;font:400 clamp(20px,1.7vw,28px)/1.1 Georgia,serif;letter-spacing:-.03em}
.zx-table tr:last-child th,.zx-table tr:last-child td{border-bottom:0}
.zx-table .zx-us{padding-left:24px;background:linear-gradient(90deg,rgba(168,115,34,.12),rgba(168,115,34,.05));font-weight:650;color:var(--ink)}
.zx-table thead .zx-us{color:var(--gold)}
.zx-table td:not(.zx-us){color:var(--muted)}
.zx-table tbody tr{opacity:0;transform:translateY(14px)}
.zx-table-wrap.is-in tbody tr{animation:zx-row .8s var(--ease) both;animation-delay:calc(var(--r,0)*90ms)}
@keyframes zx-row{to{opacity:1;transform:none}}
/* walkthrough */
.zx-sys-body{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:6%;align-items:start}
.zx-sys-stage{position:sticky;top:92px}
.zx-sys-frame{container-type:inline-size;display:flex;flex-direction:column;aspect-ratio:16/10;overflow:hidden;background:var(--card);border:1px solid var(--ink);box-shadow:0 40px 90px -30px rgba(16,38,29,.35);clip-path:inset(0 0 100% 0);transition:clip-path 1.4s var(--ease)}
.zx-sys.is-in .zx-sys-frame{clip-path:inset(0)}
.mk-bar{flex:none;display:flex;align-items:center;gap:.9cqw;height:3.4cqw;padding:0 1.6cqw;background:var(--surface);border-bottom:1px solid var(--rule)}
.mk-bar i{width:.9cqw;height:.9cqw;border-radius:50%;background:var(--rule)}
.mk-url{margin-left:1.4cqw;padding:.5cqw 1.8cqw;border-radius:9cqw;background:var(--paper);font-size:1.25cqw;letter-spacing:.02em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mk-screen{position:relative;flex:1;min-height:0;background:var(--card)}
.zx-sys-note{margin:14px 0 0;font:italic 400 13px/1.4 Georgia,serif;color:var(--muted)}
.zx-sys-chapters{border-left:1px solid var(--ink)}
.ml-sys-ch{position:relative;min-height:84dvh;padding:15dvh 0 56px 9%;opacity:.3;transition:opacity .5s ease}
.ml-sys-ch:before{content:"";position:absolute;left:-1px;top:15dvh;width:3px;height:0;background:var(--gold);transition:height .8s var(--ease)}
.ml-sys-ch.is-active{opacity:1}
.ml-sys-ch.is-active:before{height:96px}
.ml-sys-ch>span{font-size:10px;font-weight:650;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.ml-sys-ch h3{margin:20px 0 20px;font:400 clamp(34px,3.7vw,62px)/1 Georgia,serif;letter-spacing:-.05em;text-wrap:balance}
.ml-sys-ch p{max-width:32rem;margin:0 0 26px;font-size:clamp(16px,1.1vw,19px);line-height:1.62}
.zx-vs{display:grid;gap:12px;max-width:32rem;margin:0}
.zx-vs div{position:relative;padding:16px 18px 16px 50px;border:1px solid var(--rule);background:transparent}
.zx-vs div+div{border-color:var(--gold);background:rgba(168,115,34,.1)}
.zx-vs div:before{content:"\2715";position:absolute;left:18px;top:16px;font-size:14px;color:var(--muted)}
.zx-vs div+div:before{content:"\2713";color:var(--gold);font-weight:700}
.zx-vs dt{margin:0 0 4px;font-size:9px;font-weight:650;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.zx-vs div+div dt{color:var(--gold)}
.zx-vs dd{margin:0;font-size:15px;line-height:1.5}
/* value */
.zx-value-grid{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0 clamp(22px,2.6vw,48px);border-top:3px double var(--ink)}
.zx-value-grid article{padding:28px 0 44px;border-bottom:1px solid var(--rule)}
.zx-value-grid b{display:block;margin-bottom:46px;font:italic 400 16px/1 Georgia,serif;color:var(--gold)}
.zx-value-grid h3{margin:0 0 16px;font:400 clamp(26px,2.2vw,38px)/1.05 Georgia,serif;letter-spacing:-.04em}
.zx-value-grid p{margin:0;font-size:16px;line-height:1.6}
.zx-scarce{max-width:1500px;margin:34px auto 0;font:italic 400 clamp(18px,1.5vw,24px)/1.4 Georgia,serif}
.zx-scarce strong{font-weight:400;color:var(--gold)}
/* FAQ */
.zx-faq{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%;align-items:start}
.zx-faq-head{position:sticky;top:110px}
.zx-faq h2{font-size:clamp(50px,6.4vw,118px)}
.zx-faq-list{border-bottom:1px solid var(--ink)}
.zx-faq details{border-top:1px solid var(--ink)}
.zx-faq summary{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 0;cursor:pointer;list-style:none;font:400 clamp(21px,1.9vw,32px)/1.15 Georgia,serif;letter-spacing:-.035em;transition:color .3s ease}
.zx-faq summary::-webkit-details-marker{display:none}
.zx-faq summary:hover{color:var(--gold)}
.zx-faq summary i{position:relative;flex:none;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;transition:transform .5s var(--ease),background .3s ease,color .3s ease}
.zx-faq summary i:before,.zx-faq summary i:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1px;background:currentColor;transform:translate(-50%,-50%)}
.zx-faq summary i:after{transform:translate(-50%,-50%) rotate(90deg)}
.zx-faq details[open] summary i{transform:rotate(135deg);background:var(--gold);color:#fff;border-color:var(--gold)}
.zx-faq details p{max-width:36rem;margin:0;padding:0 68px 32px 0;font-size:clamp(16px,1.1vw,19px);line-height:1.65;animation:zx-open .6s var(--ease)}
@keyframes zx-open{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
/* final */
.zx-final{overflow:hidden;isolation:isolate;padding-bottom:clamp(60px,6vw,100px)}
.zx-final:before{content:"";position:absolute;z-index:-1;right:-14%;top:2%;width:62vw;height:62vw;max-width:1000px;max-height:1000px;border-radius:50%;background:radial-gradient(circle,rgba(168,115,34,.28),rgba(168,115,34,0) 62%);animation:zx-float 16s ease-in-out infinite alternate}
@keyframes zx-float{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-6%,8%,0) scale(1.12)}}
.zx-final h2{font-size:clamp(70px,13vw,270px);line-height:.8}
.zx-actions{display:flex;flex-wrap:wrap;gap:16px;margin:clamp(44px,5vw,76px) 0 clamp(80px,9vw,140px)}
.zx-pill{position:relative;display:inline-flex;align-items:center;gap:18px;overflow:hidden;padding:20px 34px;border:1px solid var(--ink);border-radius:999px;color:var(--ink);font-size:11px;font-weight:650;letter-spacing:.16em;text-decoration:none;text-transform:uppercase;isolation:isolate;transition:color .5s var(--ease)}
.zx-pill:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);transform:translateY(101%);border-radius:inherit;transition:transform .6s var(--ease)}
.zx-pill:hover{color:var(--paper)}
.zx-pill:hover:before{transform:none}
.zx-pill b{font-weight:400;font-size:16px;transition:transform .5s var(--ease)}
.zx-pill:hover b{transform:translateX(5px)}
.zx-pill-gold{background:var(--gold);border-color:var(--gold);color:#fff}
.zx-related{display:grid;grid-template-columns:repeat(4,1fr);gap:0 clamp(20px,2.4vw,40px)}
.zx-related a{display:block;padding:22px 0 30px;border-top:1px solid var(--ink);text-decoration:none;transition:border-color .4s ease,transform .5s var(--ease)}
.zx-related a:hover{border-color:var(--gold);transform:translateY(-4px)}
.zx-related small{display:block;margin-bottom:14px;font-size:9px;font-weight:650;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.zx-related strong{font:800 clamp(24px,2.1vw,36px)/1 BigShoulders,sans-serif;letter-spacing:-.01em;text-transform:uppercase}
@media(max-width:980px){
 .zx-sys-body,.zx-faq{grid-template-columns:1fr}
 .zx-sys-stage{position:sticky;top:64px;z-index:6;margin:0 -5% 10px;padding:10px 5%;background:var(--surface)}
 .zx-sys-frame{aspect-ratio:1/1.02}
 .mk{font-size:2.55cqw}
 .mk-bar{height:6cqw}.mk-url{font-size:2.4cqw}.mk-bar i{width:1.6cqw;height:1.6cqw}
 .mk-book{grid-template-columns:1fr}.mk-book-photo{display:none}
 .mk-charts{grid-template-columns:1fr 1fr}.mk-chart:nth-child(3){display:none}
 .mk-kpis{grid-template-columns:1fr 1fr}
 .mk-plans{grid-template-columns:1fr 1fr}
 .mk-paper{width:78%}
 .mk-two{grid-template-columns:1fr 1fr}.mk-two .mk-mini:last-child{display:none}
 .zx-sys-chapters{border-left:0}
 .ml-sys-ch{min-height:62dvh;padding:5dvh 0 40px;opacity:.35}
 .ml-sys-ch:before{display:none}
 .zx-faq-head{position:static;margin-bottom:46px}
 .zx-value-grid,.zx-related{grid-template-columns:1fr 1fr}
 .zx-faq details p{padding-right:0}
}
@media(max-width:560px){.zx-value-grid,.zx-related{grid-template-columns:1fr}.zx-pill{padding:18px 26px}}
@media(prefers-reduced-motion:reduce){
 .zx-marquee div,.zx-final:before{animation:none}
 .js [data-split] .zx-w>span{transform:none;transition:none}
 .zx-sys-frame{clip-path:none;transition:none}
 .zx-table tbody tr{opacity:1;transform:none;animation:none!important}
 .zx-faq details p{animation:none}
}

/* ===== Faithful recreations of the Manike Lodge UI designs (laid out in original image pixels) ===== */
:root{--cvs:"Palatino Linotype",Palatino,"Book Antiqua","Iowan Old Style",Georgia,serif}
.zx-sys-frame{container-type:size;display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#e8e1d3;border:1px solid var(--ink);box-shadow:0 40px 90px -30px rgba(16,38,29,.35);clip-path:inset(0 0 100% 0);transition:clip-path 1.4s var(--ease)}
.zx-sys.is-in .zx-sys-frame{clip-path:inset(0)}
.mk{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s}
.mk.is-active{opacity:1;visibility:visible}
.cv{position:absolute;left:50%;top:50%;overflow:hidden;transform:translate(-50%,-50%) scale(var(--s,.5));font-family:Hanken,Arial,sans-serif;color:#2d3a33;line-height:1.25;background:#f2eee7}
.cv *{box-sizing:border-box}
.cv .p{position:absolute}
.cv .t{white-space:nowrap;margin:0}
.cv-serif{font-family:var(--cvs);letter-spacing:-.03em}
.cv .ic{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.cv em{font-style:italic}
@keyframes mk-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.mk.is-active .mk-in{animation:mk-in .8s var(--ease) both;animation-delay:var(--d,0s)}
.mk:not(.is-active) .mk-in{opacity:0}
@keyframes mk-write{from{max-width:0}to{max-width:260px}}
.mk-type{display:inline-block;overflow:hidden;white-space:nowrap;max-width:260px}
.mk.is-active .mk-type{animation:mk-write 1s steps(11) both;animation-delay:var(--d,0s)}
@keyframes mk-gy{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes mk-gx{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes mk-sweep{from{--a:0deg}to{--a:360deg}}
@property --a{syntax:'<angle>';inherits:false;initial-value:360deg}
@keyframes mk-cur{0%{opacity:0;transform:translate(var(--x0),var(--y0))}18%{opacity:1}68%{transform:translate(var(--x1),var(--y1)) scale(1)}78%{transform:translate(var(--x1),var(--y1)) scale(.8)}88%{opacity:1;transform:translate(var(--x1),var(--y1)) scale(1)}100%{opacity:0;transform:translate(var(--x1),var(--y1))}}
.cv .cur{left:0;top:0;width:36px;height:36px;opacity:0;z-index:20;pointer-events:none;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}
.mk.is-active .cur{animation:mk-cur 1.5s var(--ease) var(--t,3.4s) both}
@keyframes mk-pulse{0%,100%{box-shadow:0 0 0 0 rgba(181,131,47,.45)}50%{box-shadow:0 0 0 14px rgba(181,131,47,0)}}
@keyframes mk-blink{50%{opacity:.25}}
@keyframes mk-press{50%{transform:scale(.985)}}

/* -------- 1 booking dates */
.cv1 .cv{background:#e9e8da}
.cv1-photo{background:linear-gradient(180deg,rgba(12,34,24,.38),rgba(12,34,24,.1) 45%,rgba(12,34,24,.55)),url('/assets/work-manike-hero.webp') 35% 50%/cover;transform:scale(1.04)}
.mk.is-active .cv1-photo{animation:mk-kb 14s ease-out both}
@keyframes mk-kb{to{transform:scale(1.13)}}
.cv1-shade{background:linear-gradient(90deg,rgba(12,34,24,.45),rgba(12,34,24,0) 70%)}
.cv1-circ{border:1.5px solid #d0a24e;border-radius:50%;background:rgba(12,34,24,.28)}
.cv1-vl{background:rgba(240,230,200,.35)}
.cv1-explore{display:flex;align-items:center;justify-content:center;gap:22px;border:1.5px solid #d0a24e;border-radius:40px;color:#d0a24e;font-size:13px;font-weight:650;letter-spacing:.22em;background:rgba(12,34,24,.25)}
.cv1-explore b{font-weight:400;font-size:18px;letter-spacing:0}
.cv1-panel{background:linear-gradient(160deg,#eef0e6,#e6e5d3)}
.cv1-tab{font-size:11.5px;font-weight:650;letter-spacing:.2em;color:#6c7a72;padding-bottom:12px;border-bottom:2px solid #c4c8bc;line-height:15px;height:35px}
.cv1-tab.on{color:#14291f;border-bottom:3px solid #b5832f}
.cv1-close{border:1.5px solid #c4c8bc;border-radius:50%;display:grid;place-items:center;font-size:30px;line-height:1;color:#17382b;font-weight:300}
.cv1-kline{background:#b5832f}
.cv1-field{display:flex;align-items:center;padding-left:20px;font-size:19px;color:#1f2d26;background:rgba(255,255,255,.42);border:1.4px solid #c8cdbf;border-radius:6px}
.cv1-row{background:rgba(255,255,255,.42);border:1.4px solid #c8cdbf;border-radius:6px}
.cv1-step{display:grid;place-items:center;border:1.4px solid #c8cdbf;border-radius:50%;font-size:24px;color:#17382b;line-height:1;background:rgba(255,255,255,.5)}
.cv1-check{border:1.5px solid #8d9a90;border-radius:3px;background:rgba(255,255,255,.4)}
.cv1-btn{display:flex;align-items:center;justify-content:center;gap:24px;border-radius:5px;background:linear-gradient(90deg,#a46f22,#c99443);color:#fff;font-size:14px;font-weight:700;letter-spacing:.24em;box-shadow:0 10px 24px -10px rgba(140,90,20,.6)}
.cv1-btn b{font-weight:400;font-size:20px}
.mk.is-active .cv1-btn{animation:mk-in .8s var(--ease) var(--d) both,mk-press .5s 4.2s both,mk-pulse 1.4s 4.2s 2}
.cv1-hr{background:#c8cdbf}
/* -------- 2 meal plan */
.cv2c .cv{background:#cfc7b4}
.cv2-bg{background:linear-gradient(180deg,rgba(214,206,186,.35),rgba(190,176,150,.4)),url('/assets/work-manike-hero.webp') center/cover;filter:blur(26px) saturate(.9);transform:scale(1.2)}
.cv2-card{background:rgba(240,238,228,.93);border:1.5px solid rgba(255,255,255,.6);border-radius:26px;box-shadow:0 30px 70px -30px rgba(40,30,10,.45)}
.cv2-tab{font-size:14.5px;font-weight:650;letter-spacing:.22em;color:#5d6b63}
.cv2-tab.on{color:#14291f}
.cv2-tabl{background:#d3d4c8;border-radius:2px}.cv2-tabl.on{background:#b5832f}
.cv2-close{border:1.5px solid #c2c4b8;border-radius:50%;display:grid;place-items:center;font-size:40px;line-height:1;color:#17382b;font-weight:300}
.cv2-chg{color:#33443b}.cv2-chgl{background:#c9cbbe}
.cv2-kline{background:#b5832f}
.cv2-hr{background:#d7d5c6}
.cv2-lab{color:#4c5b52}.cv2-night{color:#78776d}
.cv2-plan{border:1.5px solid #e1dccf;border-radius:10px;background:#f7f5ee;box-shadow:0 1px 0 rgba(255,255,255,.7) inset}
.cv2-plan.sel{border:3px solid #d29f4e;background:#fbf0dc}
.cv2-code{position:absolute;left:28px;top:44px;font-size:42px;line-height:1;color:#b5832f}
.cv2-pv{position:absolute;left:106px;top:36px;width:1px;height:88px;background:#d9d3c3}
.cv2-pn{position:absolute;left:132px;top:32px;font-size:24px;color:#17140f;line-height:1}
.cv2-pt{position:absolute;left:133px;top:75px;font-size:23px;font-weight:700;color:#17140f;line-height:1}
.cv2-pp{position:absolute;left:134px;top:108px;font-size:19px;color:#7a776d;line-height:1}
.cv2-radio{position:absolute;right:26px;top:32px;width:30px;height:30px;border:2px solid #9a9a8f;border-radius:50%}
.cv2-plan.sel .cv2-radio{border-color:#b5832f}
.cv2-plan.sel .cv2-radio:after{content:"";position:absolute;inset:5px;border-radius:50%;background:#b5832f}
.mk.is-active .cv2-plan.sel{animation:mk-in .8s var(--ease) var(--d) both,mk-selfrom .7s var(--ease) 2.4s backwards}
@keyframes mk-selfrom{from{border:1.5px solid #e1dccf;background:#f7f5ee}}
.mk.is-active .cv2-plan.sel .cv2-radio:after{animation:mk-dot-in .5s var(--ease) 2.5s backwards}
@keyframes mk-dot-in{from{transform:scale(0)}}
.cv2-cta{display:flex;align-items:center;justify-content:center;gap:34px;border-radius:7px;background:linear-gradient(90deg,#a66f22,#cc9644);color:#fff;font-size:20px;font-weight:700;letter-spacing:.2em;box-shadow:0 18px 36px -16px rgba(140,90,20,.6)}
.cv2-cta b{font-weight:400;font-size:28px;letter-spacing:0}
.mk.is-active .cv2-cta{animation:mk-in .8s var(--ease) var(--d) both,mk-press .5s 3.8s both,mk-pulse 1.4s 3.8s 2}
/* -------- 3 payment portal */
.cv3 .cv{background:#f3efe8}
.cv3-banner{border:1.5px solid #ecc886;border-radius:22px;background:linear-gradient(90deg,#fbefdc,#fdf3e3)}
.cv3-bicon{border-radius:50%;background:#f6e2c5}
.cv3-up{display:flex;align-items:center;gap:16px;padding-left:34px;border-radius:9px;background:linear-gradient(90deg,#8d5c2c,#c8954a);color:#fff;font-size:20px;font-weight:700;box-shadow:0 14px 28px -14px rgba(120,70,20,.7)}
.cv3-up .ic{position:absolute}
.cv3-up span{padding-left:46px}
.mk.is-active .cv3-up{animation:mk-in .8s var(--ease) var(--d) both,mk-pulse 1.4s 1.9s 2}
.cv3-card{background:#fcfaf6;border:1.5px solid #ece5d8;border-radius:22px;box-shadow:0 20px 40px -30px rgba(60,40,10,.25)}
.cv3-hr{background:#e9e3d6}
.cv3-rl{font-size:21px}
.cv3-rv{font-weight:700;color:#14201a}
.cv3-rs{color:#6f6a60}
.cv3-pill{display:flex;align-items:center;gap:14px;padding-left:24px;border-radius:30px;background:#fbeed9;color:#8a5a12;font-size:21px;font-weight:700}
.cv3-pill i{width:16px;height:16px;border-radius:50%;background:#c58f2f}
.cv3 .cv3-pill i{animation:mk-blink 1.6s infinite}
/* -------- 4 messages */
.cv4 .cv{background:#f5f0e8}
.cv4-outer{background:#fbf9f5;border:1.5px solid #ebe4d7;border-radius:26px}
.cv4-hr{background:#e3ddd0}
.cv4-strip{background:#eef0ea;border-radius:18px}
.cv4-vl{background:#d6d9d0}
.cv4-av{border-radius:50%;background:#f9e8cd}
.cv4-av.you{background:#e5ebe4;border:1.5px solid #cfd9cf}
.cv4-bub{padding:19px 27px;border-radius:14px;font-size:22px;line-height:30px;color:#26332c}
.cv4-bub.sys,.cv4-bub.lodge{background:#fbf1e0;border-left:3px solid #d29f4e}
.cv4-bub.you{background:#e9eeea}
.cv4-ln{display:block;white-space:nowrap}
.mk.is-active .cv4-ln{animation:mk-in .6s var(--ease) calc(var(--d,0s) + .25s + var(--l)*.28s) both}
.cv4-typing{display:flex;align-items:center;justify-content:center;gap:9px;width:120px;height:52px;border-radius:26px;background:#fbf1e0;border:1px solid #efdcb8;opacity:0}
.cv4-typing i{width:11px;height:11px;border-radius:50%;background:#c58f2f;animation:mk-dotb 1s infinite}
.cv4-typing i:nth-child(2){animation-delay:.15s}.cv4-typing i:nth-child(3){animation-delay:.3s}
@keyframes mk-dotb{50%{transform:translateY(-6px);opacity:.4}}
.mk.is-active .cv4-typing{animation:mk-typ 1.1s 2.7s both}
@keyframes mk-typ{0%{opacity:0}12%,88%{opacity:1}100%{opacity:0}}
.cv4-input{display:block;border:1.5px solid #d9d3c5;border-radius:8px;background:#fff}
.cv4-input span{position:absolute;left:20px;top:15px;font-size:22px;color:#9a9a92}
.cv4-input u{position:absolute;right:8px;bottom:8px;width:13px;height:13px;background:linear-gradient(135deg,transparent 45%,#8a8a82 45% 52%,transparent 52% 70%,#8a8a82 70% 77%,transparent 77%)}
.cv4-send{display:grid;place-items:center;border-radius:10px;background:#7b4b2d;color:#fff;font-size:19px;font-weight:700}
.mk.is-active .cv4-send{animation:mk-in .8s var(--ease) var(--d) both,mk-pulse 1.4s 5.2s 1}
/* -------- 5 voucher (the original design, revealed) */
.cv5 .cv{background:#fbf3e6}
.cv5-img{position:absolute;left:0;top:0;width:100%;height:100%;clip-path:inset(0 0 100% 0)}
.mk.is-active .cv5-img{animation:mk-wipe 2.6s var(--ease) .15s forwards}
@keyframes mk-wipe{to{clip-path:inset(0 0 0 0)}}
.cv5-scan{position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,#c58f2f,transparent);box-shadow:0 0 24px 6px rgba(197,143,47,.45);opacity:0}
.mk.is-active .cv5-scan{animation:mk-scandown 2.6s var(--ease) .15s both}
@keyframes mk-scandown{0%{top:0;opacity:1}92%{opacity:1}100%{top:1491px;opacity:0}}
.cv5-qrscan{position:absolute;left:622px;top:1282px;width:100px;height:2px;background:#d0463a;box-shadow:0 0 10px 2px rgba(208,70,58,.6);opacity:0}
.mk.is-active .cv5-qrscan{animation:mk-qr 2s ease-in-out 3s infinite}
@keyframes mk-qr{0%{opacity:0;top:1282px}10%{opacity:1}50%{top:1372px;opacity:1}90%{opacity:1}100%{opacity:0;top:1282px}}
/* -------- 6 admin reservations */
.cv6 .cv{background:linear-gradient(180deg,#efe9dd,#ebe4d6)}
.cv6-pill{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:30px;background:#fbf8f2;border:1px solid #e8e0d0;font-size:12.5px;font-weight:700;letter-spacing:.16em;color:#4b3a28}
.cv6-pill.d{font-weight:500;letter-spacing:.02em;font-size:14.5px;color:#4b3a28}
.cv6-pill i{width:11px;height:11px;border-radius:50%;background:#1b8a6b;animation:mk-blink 1.8s infinite}
.cv6-in{display:flex;align-items:center;padding-left:20px;border:1px solid #e2d9c7;border-radius:8px;background:#fcfaf6;font-size:17px;color:#26332c}
.cv6-in .g{padding-left:36px;color:#8a867a;font-size:16px}
.cv6-in .ic{position:absolute}
.cv6-table{background:#f8f4ec;border-radius:22px;border:1px solid #efe8da}
.cv6-hr{background:#eae3d4}
.cv6-ref{font-size:17px;letter-spacing:.01em}
.cv6-dot{border-radius:50%;background:#2ca066}.cv6-dot.red{background:#d0463a}
.cv6-badge{display:flex;align-items:center;gap:10px;padding-left:16px;border-radius:30px;font-size:15.5px;font-weight:600}
.cv6-badge i{width:10px;height:10px;border-radius:50%;background:currentColor}
.cv6-badge.g{background:#dcebdd;color:#2e6b46}.cv6-badge.o{background:#f6e4c2;color:#9a6a1e}.cv6-badge.b{background:#dde8f6;color:#2c5a9a}.cv6-badge.pu{background:#e6e3ef;color:#55527a}
.cv6-act{display:flex;align-items:center;padding-left:22px;border:1px solid #e2d9c7;border-radius:8px;background:#fdfbf7;font-size:16px;color:#26332c}
.cv6-act .ic{position:absolute}
.cv6-sync{display:flex;align-items:center;gap:12px;padding-left:20px;border-radius:30px;background:#d9ebde;color:#2c5a43;font-size:15px;font-weight:650;box-shadow:0 8px 24px -10px rgba(40,100,70,.5)}
.cv6-sync i{width:12px;height:12px;border-radius:50%;background:#2c8a5a;animation:mk-pulse 1.6s infinite}
.cv6-sync{display:none}
/* -------- reports shared */
.cv7 .cv,.cv8 .cv,.cv9 .cv,.cv10 .cv{background:linear-gradient(180deg,#efe9dd,#ebe4d6)}
.rp-pill{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:30px;background:#fbf8f2;border:1px solid #e8e0d0;font-size:11.5px;font-weight:700;letter-spacing:.15em;color:#4b3a28}
.rp-pill.d{font-weight:500;letter-spacing:.02em;font-size:13.5px}
.rp-pill i{width:9px;height:9px;border-radius:50%;background:#1b8a6b;animation:mk-blink 1.8s infinite}
.rp-tab{display:grid;place-items:center;border-radius:9px;background:#fbf8f2;border:1px solid #e8e0d0;font-size:11px;font-weight:650;letter-spacing:.04em;color:#26201a;white-space:nowrap}
.rp-tab.on{background:#4b2f1c;color:#fff;border-color:#4b2f1c;box-shadow:0 0 0 3px rgba(181,131,47,.28)}
.rp-panel{background:#fbf8f1;border-radius:20px;border:1px solid #f0e9da}
.rp-panel.f{border-radius:24px}
.rp-date{display:flex;align-items:center;padding-left:18px;border:1px solid #e2d9c7;border-radius:9px;background:#fdfbf7;font-size:15.5px;letter-spacing:.06em;color:#4b4035}
.rp-date.s{font-size:13.5px}
.rp-date .ic{position:absolute}
.rp-days{display:flex;align-items:baseline;justify-content:center;gap:6px;padding-top:12px;border-radius:12px;background:#f0ebe0;font-size:14px;color:#4b4035}
.rp-days b{font:600 27px var(--cvs)}
.rp-days.s{flex-direction:column;align-items:center;gap:0;padding-top:8px}
.rp-days.s b{font-size:20px;line-height:1}.rp-days.s em{font-style:normal;font-size:11.5px;color:#6f6a60}.rp-days.s small{font-size:10.5px;color:#6f6a60}
.rp-days.f{padding-top:0;align-items:center;font-size:12.5px;gap:10px}.rp-days.f b{font-size:28px}.rp-days.f em{font-style:normal;line-height:14px;color:#6f6a60;text-align:left}
.rp-kpi{background:#fbf8f1;border-radius:16px;border:1px solid #f0e9da;overflow:hidden}
.rp-kpi:after{content:"";position:absolute;right:-26px;bottom:-26px;width:90px;height:90px;border-radius:50%;background:rgba(210,190,150,.18)}
.rp-kpi.s:after{display:none}
.rp-kic{border-radius:50%;background:#efe9db}
.rp-kic.pink{background:#f6d9d6}
.rp-grid{height:1px}
.rp-bar{background:linear-gradient(180deg,#cfa86a,#b58a42);border-radius:2px 2px 0 0;transform-origin:bottom}
.mk.is-active .rp-bar{animation:mk-gy 1s var(--ease) var(--d,0s) both}
.rp-track{background:#ebe5d8;border-radius:5px}
.rp-fill{background:linear-gradient(90deg,#7a5a35,#c99a50);border-radius:5px;transform-origin:left}
.mk.is-active .rp-fill{animation:mk-gx 1s var(--ease) var(--d,0s) both}
.rp-donut{border-radius:50%}
.rp-donut:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--seg);-webkit-mask:conic-gradient(#000 var(--a),transparent 0);mask:conic-gradient(#000 var(--a),transparent 0)}
.mk.is-active .rp-donut:before{animation:mk-sweep 1.6s var(--ease) var(--d,0s) both}
.rp-donut .hole{position:absolute;left:50%;top:50%;width:110px;height:110px;margin:-55px 0 0 -55px;border-radius:50%;background:#fbf8f1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.rp-donut .hole b{font-size:34px;line-height:1;font-weight:500;color:#2d2a25}
.rp-donut .hole small{margin-top:4px;font-size:11px;letter-spacing:.08em;color:#6f6a60;line-height:12px}
.rp-donut.s .hole b{font-size:35px}
.rp-band{background:#f4eee2}
.rp-band.tot{background:#ece4d3}
.rp-td{color:#2d2a25}
.rp-hr{background:#eae3d4;height:1px}
.rp-vl{background:#e1d9c7;width:1px}
.rp-mini{background:#fbf8f1;border-radius:14px;border:1px solid #efe7d6}
.rp-ftrack{background:#e9e4da;border-radius:8px}
.rp-ffill{background:linear-gradient(90deg,#7a5a35,#cfa35c);border-radius:8px;transform-origin:left}
.mk.is-active .rp-ffill{animation:mk-gx 1.2s var(--ease) var(--d,0s) both}
.rp-hbar{border-radius:7px;transform-origin:left}
.mk.is-active .rp-hbar{animation:mk-gx 1.1s var(--ease) var(--d,0s) both}
.rp-nlab{background:#f6efe2;border-radius:3px}
.rp-in{display:flex;align-items:center;padding-left:14px;border:1px solid #e2d9c7;border-radius:8px;background:#fdfbf7;font-size:14px;color:#26201a}
.rp-in .ic{position:absolute}
.rp-thead{background:#e9e4da}
.rp-grid.v{width:1px}
.mk.is-active .rp-big span{display:inline-block}
.rp-top{color:#6f6a60}
.cv10 .rp-td{color:#3d2b1c}

/* ---- walkthrough section tweaks that go with the faithful screens */
@media(max-width:980px){
 .zx-sys-body{display:block}
 .zx-sys-frame{aspect-ratio:5/4}
}
@media(prefers-reduced-motion:reduce){
 .mk .mk-in,.mk .mk-type{animation:none!important;opacity:1}
 .mk .rp-bar,.mk .rp-fill,.mk .rp-ffill,.mk .rp-hbar,.mk .cur,.mk .cv5-img,.mk .rp-donut:before,.mk .cv4-ln{animation:none!important}
 .mk .cur{display:none}
 .mk .cv5-img{clip-path:none}
}

.js .zx-up{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--u,0)*90ms)}
.js .zx-up.is-in{opacity:1;transform:none}
.js .ml-sys-ch .zx-up{transition-delay:0s}
@media(prefers-reduced-motion:reduce){.js .zx-up{opacity:1;transform:none;transition:none}}
