@import url('../fonts/text.css');
@import url('../fonts/symbols.css');

/* ---------- tokens (light default, dark under [data-mode=dark]) ---------- */
:root{
  --cream:#F8F7F4; --panel:#FFFEFC; --panel2:#F2F0EB; --ink:#5F300D; --ink2:#3E2A1A;
  --gold:#B0892B; --gold-soft:#D6BB88; --muted:#8D7355; --hair:rgba(95,48,13,.13); --hair2:rgba(95,48,13,.28);
  --sage:#4A603F; --sage-bg:rgba(74,96,63,.12); --ruby:#8E3A63; --ruby-bg:rgba(142,58,99,.10); --blue:#2E6FB8;
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'Raleway',Helvetica,sans-serif;
  --shadow:0 10px 30px rgba(95,48,13,.08);
  /* device screens are always the apps' dark mode, whatever the page theme */
  --app-bg:#181614; --app-panel:#221E1A; --app-rail:#1E1B18; --app-ink:#E6DDD0; --app-ink2:#A69881; --app-line:rgba(214,187,136,.14); --app-gold:#D6BB88; --app-sage:#8FB08A; --app-sage-bg:rgba(143,176,138,.16); --app-ruby:#D48AA8; --app-ruby-bg:rgba(212,138,168,.14); --app-red:#E08C7C;
}
[data-mode="dark"]{
  --cream:#1C1C1A; --panel:#242422; --panel2:#2A2926; --ink:#F0EAE0; --ink2:#E6DDD0; --gold:#D6BB88; --gold-soft:#C7AA70;
  --muted:#A69881; --hair:rgba(214,187,136,.16); --hair2:rgba(214,187,136,.36); --shadow:0 10px 30px rgba(0,0,0,.35);
  --sage-bg:rgba(120,160,110,.18); --ruby-bg:rgba(200,110,150,.14);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background .35s,color .35s}
.ms{font-family:'Material Symbols Outlined';font-weight:normal;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;font-feature-settings:'liga';-webkit-font-feature-settings:'liga';font-variation-settings:'FILL' 0,'wght' 300,'GRAD' 0,'opsz' 24}
.grain{position:fixed;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:multiply;z-index:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.37 0 0 0 0 0.19 0 0 0 0 0.05 0 0 0 1 0'/></filter><rect width='300' height='300' filter='url(%23n)'/></svg>")}
[data-mode="dark"] .grain{opacity:.08;mix-blend-mode:screen}
a{color:inherit}
.kicker{font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:600;color:var(--gold)}
.rn{font-family:var(--serif);font-style:italic;color:var(--gold);letter-spacing:.06em}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:400;line-height:1}
h1 i,h2 i,h3 i{font-style:italic;font-weight:300;color:var(--gold)}
.lead{font-weight:700;color:var(--gold)}
.lbl{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding:12px 20px;border:1px solid var(--hair2);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;transition:all .25s}
.btn:hover{border-color:var(--gold);color:var(--gold)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#FFFEFC}
.btn.gold:hover{filter:brightness(1.08);color:#fff}
.btn[disabled]{opacity:.4;pointer-events:none}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--muted);border:1px dashed var(--hair2);padding:5px 10px;border-radius:999px}
.badge:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold-soft)}

/* ---------- shell ---------- */
#rail{position:fixed;left:0;top:0;bottom:0;width:236px;padding:36px 22px 28px;border-right:1px solid var(--hair);background:var(--panel2);z-index:20;display:flex;flex-direction:column;transition:transform .4s}
#rail .crest{width:52px;display:block;margin:0 auto 10px}
#rail .rk{text-align:center}
#rail .title{font-family:var(--serif);font-size:30px;text-align:center;margin-top:6px}
#rail .title i{font-style:italic;color:var(--gold);font-weight:300}
#rail nav{margin-top:26px;border-top:1px solid var(--hair);padding-top:14px;overflow:auto}
#rail nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;text-decoration:none;font-size:13px;color:var(--muted);letter-spacing:.02em;transition:all .2s}
#rail nav a img{width:22px;height:22px;border-radius:6px}
#rail nav a .n{font-family:var(--serif);font-style:italic;color:var(--gold);width:22px;text-align:center;font-size:15px}
#rail nav a.on{background:rgba(214,187,136,.22);color:var(--ink);font-weight:600}
#rail nav a:hover{color:var(--ink)}
#rail .foot{margin-top:auto;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-align:center;line-height:1.8}
#tools{position:fixed;right:22px;top:20px;z-index:30;display:flex;gap:8px}
#tools button{width:38px;height:38px;border-radius:50%;border:1px solid var(--hair2);background:var(--panel);color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:all .2s}
#tools button:hover{border-color:var(--gold);color:var(--gold)}
#tools button.on{background:var(--gold);color:#fff;border-color:var(--gold)}
#prog{position:fixed;left:236px;right:0;top:0;height:2px;background:var(--hair);z-index:25}
#prog i{display:block;height:100%;background:var(--gold);width:0;transition:width .4s}
#main{margin-left:236px;position:relative;z-index:1}

/* present vs explore */
body.present #main .ch{min-height:100vh;display:none}
body.present #main .ch.on{display:block}
body.explore #main .ch{min-height:100vh;border-bottom:1px solid var(--hair)}
.ch{padding:64px 72px 72px;position:relative}
.ch .head{display:flex;align-items:flex-end;gap:26px;border-bottom:1.5px solid var(--gold-soft);padding-bottom:18px;margin-bottom:34px}
.ch .head h1{font-size:64px}
.ch .head .job{margin-left:auto;max-width:560px;font-family:var(--serif);font-size:20px;line-height:1.35;text-align:right;color:var(--ink)}
.ch .head .job b{color:var(--gold);font-weight:500}
.ch .parts{display:flex;gap:8px;margin-bottom:26px}
.ch .parts button{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;padding:10px 16px;border-radius:999px;border:1px solid var(--hair2);background:transparent;color:var(--muted);cursor:pointer}
.ch .parts button.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
[data-mode="dark"] .ch .parts button.on{background:var(--gold);color:#1C1C1A;border-color:var(--gold)}
.part{display:none;animation:rise .5s ease both}
.part.on{display:block}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* infographic embed */
.info{position:relative;width:100%;aspect-ratio:1920/1080;border:1px solid var(--hair);box-shadow:var(--shadow);background:#F8F7F4;overflow:hidden}
.info iframe{position:absolute;left:0;top:0;width:1920px;height:1080px;border:0;transform-origin:0 0;pointer-events:none}

/* live stage */
.stage{display:grid;grid-template-columns:1fr 340px;gap:36px;align-items:start}
.stage .col{display:flex;flex-direction:column;gap:18px}
.stage.three{grid-template-columns:1fr 350px}
.stage.three .side{position:static}
.stage .under{margin-top:18px}
.stage.wide{grid-template-columns:1fr}
.stage .side{display:flex;flex-direction:column;gap:18px;position:sticky;top:64px}
.moment{background:var(--panel);border:1px solid var(--hair);border-top:2.5px solid var(--gold-soft);padding:20px 22px;box-shadow:var(--shadow)}
.moment h3{font-size:26px;margin:6px 0 8px}
.moment p{font-size:14px;line-height:1.55;color:var(--muted)}
.moment .steps{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.moment .steps .btn{justify-content:space-between;width:100%}
.moment .steps .btn.done{border-color:var(--sage);color:var(--sage)}
.moment .steps .btn.done:after{content:'check';font-family:'Material Symbols Outlined';font-size:16px}
.ledger{background:var(--panel);border:1px solid var(--hair);padding:16px 18px}
.ledger h4{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px}
.ledger ul{list-style:none;font-size:12.5px;color:var(--muted);line-height:1.5}
.ledger li{padding:5px 0;border-top:1px solid var(--hair);display:flex;gap:10px}
.ledger li b{color:var(--ink);font-weight:600;white-space:nowrap;font-family:var(--serif);font-size:14px}
.ledger li.new{animation:flash 1.6s ease}
@keyframes flash{0%{background:rgba(214,187,136,.35)}100%{background:transparent}}
.ledger .empty{font-style:italic;font-size:12.5px;color:var(--muted)}

/* toast (the push) */
#toast{position:fixed;top:72px;right:22px;z-index:50;width:360px;background:#1C1C1A;color:#F0EAE0;border-radius:18px;padding:14px 16px;box-shadow:0 18px 40px rgba(0,0,0,.35);transform:translateY(-30px);opacity:0;transition:all .45s cubic-bezier(.2,.9,.3,1.2);display:flex;gap:12px;align-items:flex-start;pointer-events:none}
#toast.on{transform:none;opacity:1}
#toast img{width:38px;height:38px;border-radius:9px}
#toast .t{font-size:13px;font-weight:600}
#toast .m{font-size:12.5px;color:#C9BBA4;line-height:1.4;margin-top:2px}
#toast .app{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#D6BB88;margin-bottom:2px}

/* ---------- device frames ---------- */
.laptop{position:relative;background:#1C1C1A;border-radius:18px;padding:12px 12px 0;box-shadow:0 30px 60px rgba(95,48,13,.18)}
.laptop .scrwrap{position:relative;overflow:hidden;border-radius:8px 8px 0 0;background:var(--app-bg)}
.laptop .bar{height:30px;display:flex;align-items:center;gap:6px;padding:0 6px 0 4px}
.laptop .bar i{width:10px;height:10px;border-radius:50%;background:#3A3733}
.laptop .bar .url{margin-left:14px;flex:1;height:18px;border-radius:6px;background:#2A2825;color:#A69881;font-size:11px;letter-spacing:.06em;display:flex;align-items:center;padding:0 10px}
.laptop .scr{background:var(--app-bg);width:1280px;height:800px;overflow:hidden;position:absolute;left:0;top:0;transform-origin:0 0}
.laptop:after{content:'';display:block;height:14px;background:#2A2825;border-radius:0 0 18px 18px;margin:0 -12px}
.phone{width:350px;height:728px;border-radius:46px;background:#1C1C1A;padding:12px;box-shadow:0 24px 50px rgba(95,48,13,.2);position:relative;margin:0 auto;flex:none}
.phone .scr{width:100%;height:100%;border-radius:35px;background:var(--app-bg);overflow:hidden;position:relative}
.phone .fit{position:absolute;left:0;top:0;width:390px;height:844px;transform:scale(.8359);transform-origin:0 0}
.phone .notch{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:110px;height:28px;background:#1C1C1A;border-radius:0 0 16px 16px;z-index:5}
.phone .status{height:50px;display:flex;justify-content:space-between;align-items:flex-end;padding:0 28px 8px;font-size:14px;font-weight:600;color:var(--app-ink)}
.phone .lock{cursor:pointer;position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 0%,#3B3530,#1C1C1A 70%);color:#F0EAE0;display:flex;flex-direction:column;align-items:center;padding-top:80px;z-index:2;transition:opacity .5s}
.phone .lock .time{font-family:var(--serif);font-size:86px;font-weight:300;line-height:1}
.phone .lock .hintp{margin-top:auto;padding-bottom:40px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8D7355}
.phone .lock .date{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#C9BBA4;margin-top:6px}
.phone .lock .push{margin:54px 14px 0;background:rgba(58,52,46,.62);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:22px;padding:12px 14px 13px;display:block;width:calc(100% - 28px);transform:translateY(-28px) scale(.96);opacity:0;transition:transform .55s cubic-bezier(.2,.9,.3,1.15),opacity .45s ease;box-shadow:0 14px 34px rgba(0,0,0,.35);text-align:left}
.phone .lock .push.on{transform:none;opacity:1}
.phone .lock .push .ph{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.phone .lock .push img{width:24px;height:24px;border-radius:6px}
.phone .lock .push .app{font-size:12px;font-weight:600;color:#F0EAE0;letter-spacing:0;text-transform:none;flex:1}
.phone .lock .push .when{font-size:11px;color:#C9BBA4}
.phone .lock .push .t{font-size:14px;font-weight:700;color:#FFFCF7;line-height:1.3}
.phone .lock .push .lines{list-style:none;margin:5px 0 0}
.phone .lock .push .lines li{font-size:12.5px;color:#EAE2D5;line-height:1.4;padding:3px 0 3px 12px;position:relative;opacity:0;transform:translateX(-8px);transition:opacity .4s ease,transform .45s cubic-bezier(.2,.9,.3,1.1)}
.phone .lock .push .lines li:before{content:'';position:absolute;left:0;top:10px;width:5px;height:5px;border-radius:50%;background:#D6BB88}
.phone .lock .push.lines-on .lines li{opacity:1;transform:none}
.phone .lock .push.lines-on .lines li:nth-child(2){transition-delay:.32s}
.phone .lock .push.lines-on .lines li:nth-child(3){transition-delay:.64s}
.phone .lock .hintp{opacity:0;transition:opacity .6s ease}
.phone .lock.hint .hintp{opacity:1}
.phone .lock.off{opacity:0;pointer-events:none}
.phone .tabbar{position:absolute;left:0;right:0;bottom:0;height:92px;background:#151311;border-top:1px solid var(--app-line);display:flex;justify-content:space-around;align-items:flex-start;padding:10px 4px 0;overflow-x:auto;overflow-y:hidden;gap:2px}
.phone .tabbar div{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:8px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--app-ink2);flex:1 1 0;min-width:0;max-width:100%;cursor:pointer}
.phone .tabbar div span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.phone .tabbar.house{overflow:hidden;padding:8px 2px 0;gap:0}
.phone .tabbar img{width:30px;height:30px;border-radius:8px;border:2px solid transparent}
.phone .tabbar div.on{color:#F0EAE0}
.phone .tabbar div.on img{border-color:#D6BB88;box-shadow:0 0 0 2px rgba(214,187,136,.25)}
.phone .tabbar .ms{font-size:24px;height:36px;display:grid;place-items:center}
.phone .tabbar div.on .ms{color:#D6BB88}
.phone .tabbar div.on{color:var(--app-gold)}
.phone .tabbar .ms{font-size:22px}
.phone .body{position:absolute;top:50px;left:0;right:0;bottom:92px;overflow:auto;padding:8px 18px 20px}
.phone .body.nopad{padding:0}

/* ---------- replica app components (the house look) ---------- */
.app{display:grid;grid-template-columns:200px 1fr;height:100%;font-family:var(--sans);color:var(--app-ink)}
.app .arail{background:var(--app-rail);border-right:1px solid var(--app-line);padding:22px 12px;display:flex;flex-direction:column}
.app .arail .crest{width:42px;margin:0 auto 18px;display:block}
.app .arail a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;font-size:12.5px;color:var(--app-ink);text-decoration:none;cursor:pointer;transition:background .2s}
.app .arail a .ms{font-size:18px;color:var(--app-ink2)}
.app .arail a.on{background:rgba(214,187,136,.22);font-weight:600}
.app .arail a.on .ms{color:var(--app-gold)}
.app .arail .out{margin-top:auto;color:var(--app-ink2)}
.app .amain{overflow:auto;padding:26px 32px 40px;position:relative}
.app .atitle{font-family:var(--serif);font-size:34px;line-height:1;color:var(--app-ink)}
.app .asub{font-size:12px;color:var(--app-ink2);margin-top:6px}
.app .aband{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--app-ink2);margin:22px 0 8px}
.app .acard{background:var(--app-panel);border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.25);overflow:hidden}
.app .arow{display:flex;gap:14px;padding:14px 16px;border-top:1px solid var(--app-line);cursor:pointer;transition:background .2s;align-items:flex-start}
.app .arow:first-child{border-top:0}
.app .arow:hover{background:rgba(214,187,136,.08)}
.app .arow.new{animation:rowin .6s ease both}
@keyframes rowin{from{opacity:0;transform:translateY(-8px);background:rgba(214,187,136,.35)}to{opacity:1;transform:none}}
.app .dtile{width:44px;height:44px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--serif);flex:none}
.app .dtile small{font-family:var(--sans);font-size:8px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.app .dtile b{font-size:20px;font-weight:400;line-height:1}
.app .dtile.sage{background:var(--app-sage-bg);color:var(--app-sage)}
.app .dtile.gold{background:rgba(214,187,136,.22);color:var(--app-gold)}
.app .dtile.ruby{background:var(--app-ruby-bg);color:var(--app-ruby)}
.app .aname{font-family:var(--serif);font-size:19px;line-height:1.1}
.app .anote{font-size:12.5px;color:var(--app-ink);margin-top:3px;line-height:1.45}
.app .anote i{color:var(--app-ink2)}
.app .ameta{font-size:11px;color:var(--app-ink2);margin-top:4px}
.app .ameta b{font-weight:600}
.app .ameta .due{color:var(--app-red);font-weight:600}
.app .ameta .soon{color:var(--app-gold);font-weight:600}
.app .aright{margin-left:auto;font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.app .aright.sage{color:var(--app-sage)}
.app .aright.ruby{color:var(--app-red)}
.app .chip{display:inline-block;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;padding:5px 10px;border-radius:999px;margin-right:6px}
.app .chip.sage{background:var(--app-sage-bg);color:var(--app-sage)}
.app .chip.gold{background:rgba(214,187,136,.22);color:var(--app-gold)}
.app .chip.ruby{background:var(--app-ruby-bg);color:var(--app-ruby)}
.app .chip.ghost{border:1px solid var(--app-line);color:var(--app-ink2)}
.app .tabs{display:inline-flex;background:rgba(0,0,0,.25);border-radius:999px;padding:4px;margin-top:16px}
.app .tabs span{padding:7px 14px;border-radius:999px;font-size:12px;color:var(--app-ink2);cursor:pointer}
.app .tabs span.on{background:var(--app-panel);color:var(--app-ink);font-weight:600;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.app .empty{border:1px dashed var(--app-line);border-radius:10px;padding:16px;text-align:center;font-size:12.5px;color:var(--app-sage);background:var(--app-panel)}
.app .back{font-size:13px;color:var(--app-ink2);cursor:pointer;display:inline-flex;align-items:center;gap:6px;margin-bottom:8px}
.app .where{border-left:3px solid var(--app-gold);background:var(--app-panel);border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.5;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.app .where p+p{border-top:1px solid var(--app-line);margin-top:8px;padding-top:8px}
.app .mail{background:var(--app-panel);border-radius:12px;padding:14px 16px;box-shadow:0 6px 18px rgba(0,0,0,.25);font-size:13px;line-height:1.55}
.app .mail.out{border-left:3px solid var(--app-sage)}
.app .mail.in{border-left:3px solid var(--app-gold)}
.app .mail .mh{display:flex;justify-content:space-between;font-size:11px;color:var(--app-ink2);margin-bottom:8px}
.app .mail .mh b{color:var(--app-ink);font-weight:600}
.app .draft{background:var(--app-panel);border:1.5px solid var(--app-gold);border-radius:12px;padding:16px 18px;font-size:13px;line-height:1.6;position:relative;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.app .draft .dh{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.app .draft .dh .chip{margin:0}
.app .draft .body{white-space:pre-line}
.app .draft .fact{background:rgba(143,176,138,.18);border-radius:4px;padding:0 4px;color:var(--app-sage);font-weight:600;cursor:help;border-bottom:1px dotted var(--app-sage)}
.app .draft .ph{background:var(--app-ruby-bg);border-radius:4px;padding:0 4px;color:var(--app-ruby);font-weight:600}
.app .draft .acts{display:flex;gap:8px;margin-top:14px;justify-content:flex-end}
.app .abtn{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding:9px 16px;border-radius:999px;border:1px solid var(--app-line);background:transparent;color:var(--app-ink);cursor:pointer;font-family:var(--sans)}
.app .abtn.gold{background:var(--app-gold);color:#1C1C1A;border-color:var(--app-gold)}
.app .abtn.quiet{color:var(--app-ink2)}
.app .checks{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:10px 0 4px}
.app .check{background:var(--app-panel);border-radius:10px;padding:10px 12px;font-size:11.5px;border:1px solid var(--app-line)}
.app .check .k{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--app-ink2);font-weight:600}
.app .check .v{font-family:var(--serif);font-size:18px;margin-top:2px}
.app .check .v.ok{color:var(--app-sage)}
.app .check .src{font-size:10px;color:var(--app-ink2);margin-top:2px}
.app .money{background:var(--app-panel);border-radius:12px;padding:6px 16px;box-shadow:0 6px 18px rgba(0,0,0,.25);font-size:13px}
.app .money div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--app-line)}
.app .money div:first-child{border-top:0}
.app .money b{font-weight:600}
.app .money .tot{font-weight:700}
.app .timeline{font-size:12px;color:var(--app-ink2)}
.app .timeline div{padding:7px 0;border-top:1px solid var(--app-line);display:flex;gap:10px}
.app .timeline div b{color:var(--app-ink);font-weight:600;white-space:nowrap}
.app .timeline div.new{animation:rowin .6s ease both}
.hint{font-size:12px;color:var(--muted);font-style:italic}

/* dashboard replica */
.dash{background:var(--app-bg);height:100%;overflow:auto;padding:26px 30px 40px;color:var(--app-ink)}
.dash .hero{background:var(--app-panel);border-radius:14px;padding:22px 26px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.dash .hero .g{font-family:var(--serif);font-style:italic;font-size:24px}
.dash .hero .y{font-size:13px;color:var(--app-ink2);margin-top:8px;line-height:1.5}
.dash .hero .y b{font-size:9px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;margin-right:8px;color:var(--app-ink2)}
.dash .hero ul{list-style:none;margin-top:10px}
.dash .hero li{display:flex;gap:8px;font-size:13px;padding:4px 0;align-items:flex-start}
.dash .hero li .ms{font-size:16px;margin-top:2px;color:var(--app-gold)}
.dash .hero li.new{animation:rowin .6s ease both}
.dash .cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.dash .card{background:var(--app-panel);border-radius:12px;padding:16px 18px;border-left:3px solid var(--sec,var(--app-gold));box-shadow:0 6px 18px rgba(0,0,0,.25);min-height:120px}
.dash .card .ct{display:flex;align-items:center;gap:8px;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--app-ink2);margin-bottom:10px}
.dash .card .ct .ms{font-size:15px;color:var(--sec,var(--app-gold))}
.dash .card .ct .r{margin-left:auto;letter-spacing:.14em;color:var(--app-ink2);opacity:.7}
.dash .card .row{display:flex;gap:10px;font-size:12.5px;padding:7px 0;border-top:1px solid var(--app-line);align-items:flex-start;line-height:1.4}
.dash .card .row:first-of-type{border-top:0}
.dash .card .row b{font-family:var(--serif);font-size:15px;font-weight:500;white-space:nowrap}
.dash .card .row i{color:var(--app-ink2);font-style:normal}
.dash .card .row .st{margin-left:auto;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.dash .card .row .st.sage{color:var(--app-sage)}.dash .card .row .st.gold{color:var(--app-gold)}.dash .card .row .st.ruby{color:var(--app-red)}
.dash .card .row.new{animation:rowin .6s ease both}
.dash .card .big{font-family:var(--serif);font-size:34px;line-height:1}
.dash .card .big small{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--app-ink2);display:block;margin-top:4px}
.dash .card .quiet{font-size:12px;color:var(--app-ink2);font-style:italic}

/* house map (interactive) */
.hmap{position:relative;height:640px}
.hmap svg{position:absolute;inset:0;width:100%;height:100%}
.hnode{position:absolute;background:var(--panel);border:1px solid var(--hair2);padding:12px 16px;cursor:pointer;transition:all .25s;text-decoration:none;color:var(--ink)}
.hnode:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:var(--shadow)}
.hnode.core{border:1.5px solid var(--gold);background:rgba(214,187,136,.10);cursor:default}
.hnode.core:hover{transform:none}
.hnode .lbl{display:block;margin-bottom:4px;font-size:10px}
.hnode h3{font-size:24px;font-weight:500}
.hnode h3 i{font-style:italic;font-weight:400;color:var(--gold)}
.hnode p{font-size:12.5px;color:var(--muted);margin-top:4px;line-height:1.4}
.hnode img{width:26px;height:26px;border-radius:7px;float:right;margin-left:8px}
.hband{position:absolute;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600}

/* the day strip */
.day{display:grid;grid-template-columns:repeat(9,1fr);gap:10px;margin-top:30px}
.day a{text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--hair);border-top:2.5px solid var(--gold-soft);padding:12px 12px 10px;transition:all .25s}
.day a:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:var(--shadow)}
.day .t{font-family:var(--serif);font-size:22px;color:var(--gold);line-height:1}
.day .w{font-size:12px;line-height:1.4;margin-top:6px}
.day .r{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:8px;font-weight:600}

/* cover */
.cover{display:grid;grid-template-columns:1fr 380px;gap:60px;align-items:center;min-height:calc(100vh - 136px)}
.cover .crest{width:96px;display:block;margin-bottom:26px}
.cover h1{font-size:110px}
.cover .sub{font-family:var(--serif);font-size:28px;line-height:1.3;max-width:640px;margin-top:22px}
.cover .sub b{color:var(--gold);font-weight:500}
.cover .keys{margin-top:38px;font-size:12px;color:var(--muted);line-height:2}
.cover .keys kbd{font-family:var(--sans);border:1px solid var(--hair2);border-radius:5px;padding:1px 7px;margin-right:6px;font-size:11px}

/* notes */
#notes{position:fixed;right:0;bottom:0;width:420px;max-height:46vh;overflow:auto;background:#1C1C1A;color:#E6DDD0;padding:18px 22px;font-size:13.5px;line-height:1.6;z-index:40;border-top-left-radius:16px;display:none;box-shadow:0 -10px 40px rgba(0,0,0,.35)}
#notes.on{display:block}
#notes h5{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:#D6BB88;margin-bottom:8px}
#notes p+p{margin-top:8px}

.rules{display:flex;gap:34px;margin-top:26px;border-top:1px solid var(--hair);padding-top:16px}
.rules div{flex:1;font-size:14px;line-height:1.5;color:var(--ink)}
.rules .rn{font-size:18px;margin-right:8px}
.callout{background:var(--panel);border:1px solid var(--hair);border-left:3px solid var(--gold-soft);padding:16px 20px;font-size:14px;line-height:1.55;color:var(--muted)}
.callout b{color:var(--ink);font-weight:600}

@media (max-width:1100px){#rail{transform:translateX(-100%)}#main{margin-left:0}#prog{left:0}.ch{padding:40px 24px}.stage{grid-template-columns:1fr}.cover{grid-template-columns:1fr}}

/* ---------- second pass: banner push, kanban, call screen ---------- */
.phone .banner{position:absolute;top:56px;left:10px;right:10px;z-index:4;background:rgba(40,36,32,.96);backdrop-filter:blur(10px);border-radius:16px;padding:10px 12px;display:flex;gap:10px;align-items:flex-start;transform:translateY(-90px);opacity:0;transition:all .45s cubic-bezier(.2,.9,.3,1.2);color:#F0EAE0;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.phone .banner.on{transform:none;opacity:1}
.phone .banner img{width:32px;height:32px;border-radius:8px}
.phone .banner .app{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:#D6BB88}
.phone .banner .t{font-size:12.5px;font-weight:600}
.phone .banner .m{font-size:11.5px;color:#DDD3C4;line-height:1.35}
.app .kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.app .kcol{background:rgba(214,187,136,.05);border-radius:12px;padding:10px;min-height:420px}
.app .kh{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--app-ink2);padding:4px 6px 10px;display:flex;justify-content:space-between}
.app .kh span{color:var(--app-gold)}
.app .kcard{background:var(--app-panel);border-radius:10px;padding:10px 12px;margin-bottom:8px;border:1px solid var(--app-line)}
.app .kcard.new{animation:rowin .6s ease both;border-color:var(--app-gold)}
.call{height:100%;display:flex;flex-direction:column;align-items:center;padding:26px 14px 0;color:var(--app-ink);text-align:center}
.call .who{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--app-gold)}
.call .num{font-family:var(--serif);font-size:30px;margin-top:6px;line-height:1}
.call .sub{font-size:11px;color:var(--app-ink2);margin-top:4px}
.call .clock{font-family:var(--serif);font-size:22px;color:var(--app-ink2);margin-top:8px}
.call .bubbles{flex:1;width:100%;overflow:auto;margin-top:12px;display:flex;flex-direction:column;gap:6px;padding-bottom:10px}
.call .bub{max-width:88%;font-size:11.5px;line-height:1.4;padding:8px 11px;border-radius:14px;text-align:left;animation:rowin .4s ease both}
.call .bub.line{align-self:flex-start;background:rgba(214,187,136,.16);border-bottom-left-radius:4px}
.call .bub.caller{align-self:flex-end;background:rgba(240,234,224,.10);border-bottom-right-radius:4px}
.call .ctl{display:flex;gap:16px;padding:10px 0 16px}
.call .ctl i{font-family:'Material Symbols Outlined';font-style:normal;width:52px;height:52px;border-radius:50%;background:rgba(240,234,224,.14);display:grid;place-items:center;font-size:22px;color:#fff}
.phone .body.nopad{padding:0}
.stage.phone-only{grid-template-columns:350px 1fr;align-items:start}
.stage.phone-only .phone{margin:0}

/* ---------- closing chapters ---------- */
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.loop{background:#181614;border-radius:14px;padding:22px 24px;box-shadow:0 24px 50px rgba(95,48,13,.16);min-height:420px}
.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rules-grid .rule{background:var(--panel);border:1px solid var(--hair);border-top:2.5px solid var(--gold-soft);padding:16px 18px}
.rules-grid .rule .rn{display:block;font-size:20px;margin-bottom:6px}
.rules-grid .rule b{font-family:var(--serif);font-size:20px;font-weight:500;display:block;line-height:1.1}
.rules-grid .rule p{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.5}
.counts{display:flex;gap:40px;margin-bottom:22px}
.counts .fig{font-family:var(--serif);font-size:46px;line-height:1}
.counts .lbl{margin-top:6px}
.timeline-x{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 22px;border-top:1.5px solid var(--gold-soft);padding-top:22px}
.timeline-x .tx{padding-left:14px;border-left:1px solid var(--hair)}
.timeline-x .d{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:18px}
.timeline-x h3{font-size:24px;font-weight:500;margin-top:4px}
.timeline-x p{font-size:13px;color:var(--muted);line-height:1.5;margin-top:6px}
.model{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:30px}
.model .m{background:var(--panel);border:1px solid var(--hair);border-top:2.5px solid var(--gold);padding:18px 20px}
.model .m .kicker{font-size:10px}
.model .m h3{font-size:26px;margin-top:8px}
.model .m p{font-size:13.5px;color:var(--muted);line-height:1.5;margin-top:8px}
.cfg-wrap{display:grid;grid-template-columns:420px 1fr 340px;gap:36px;align-items:start}
.cfg-list{display:flex;flex-direction:column;gap:8px}
.cfg{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--hair);padding:10px 14px;cursor:pointer;transition:all .2s;opacity:.55}
.cfg.on{opacity:1;border-color:var(--gold-soft)}
.cfg input{accent-color:#B0892B}
.cfg img{width:30px;height:30px;border-radius:8px}
.cfg b{display:block;font-family:var(--serif);font-size:19px;font-weight:500;line-height:1}
.cfg span{font-size:12px;color:var(--muted)}
.cfg-house{background:var(--panel);border:1px solid var(--hair);padding:22px;min-height:420px}
.cfg-house .hcore{border:1.5px solid var(--gold);background:rgba(214,187,136,.10);padding:16px 18px;text-align:center}
.cfg-house .hcore .k{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600}
.cfg-house .hcore .n{font-family:var(--serif);font-size:26px;margin-top:4px}
.cfg-house .hrooms{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.cfg-house .hr{display:flex;align-items:center;gap:10px;border:1px solid var(--hair2);padding:10px 12px;font-family:var(--serif);font-size:19px;animation:rise .4s ease both}
.cfg-house .hr img{width:26px;height:26px;border-radius:7px}
.verdict{margin-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:30px}
.verdict .v{background:var(--panel);border:1px solid var(--hair);border-left:3px solid var(--gold);padding:18px 22px}
.verdict h3{font-size:26px}
.verdict ul{list-style:none;margin-top:10px}
.verdict li{font-size:13.5px;line-height:1.5;padding:6px 0;border-top:1px solid var(--hair);color:var(--ink)}
.verdict li b{color:var(--gold);font-weight:700}

/* ---------- dashboard replica (mirrors the real page) ---------- */
.db{color:#ECE7DD;font-family:var(--sans);padding:0 0 40px}
.db-desk{display:grid;grid-template-columns:230px 1fr;height:100%;background:#121110}
.db-rail{background:#0f0e0d;border-right:1px solid rgba(214,187,136,.08);padding:26px 18px;display:flex;flex-direction:column}
.db-rail>img{width:46px;margin:0 auto 8px;display:block}
.db-rail .k{font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:#8d8478;text-align:center}
.db-rail .t{font-family:var(--serif);font-size:24px;text-align:center;color:#ECE7DD;margin-top:2px}
.db-rail .t i{color:#D6BB88}
.db-rail .f{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#8d8478;margin:26px 0 8px}
.db-rail a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#bfb7aa;font-weight:600}
.db-rail a img{width:22px;height:22px;border-radius:6px}
.db-rail a.on{background:rgba(214,187,136,.16);color:#F0EAE0}
.db-main{overflow:auto;height:100%;padding:0 40px;background:radial-gradient(60% 30% at 50% 0%,rgba(214,187,136,.06),transparent 70%),#121110}
.db-main .db{max-width:960px;margin:0 auto}
.db.ph{padding:0 18px 30px;background:radial-gradient(80% 26% at 50% 0%,rgba(214,187,136,.08),transparent 70%)}
.db-mast{text-align:center;padding-top:28px}
.db-crest{width:104px;filter:drop-shadow(0 0 22px rgba(214,187,136,.35))}
.db.ph .db-crest{width:120px}
.db-title{font-family:var(--serif);font-style:italic;font-size:40px;line-height:1;margin-top:6px}
.db-title i{color:#D6BB88}
.db.ph .db-title{font-size:44px}
.db-sub{font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:#8d8478;margin-top:6px}
.db-kicker{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#D6BB88;margin-top:26px}
.db-date{font-family:var(--serif);font-style:italic;font-size:54px;line-height:1.05;margin-top:8px}
.db.ph .db-date{font-size:58px}
.db-week{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#8d8478;margin-top:8px}
.db-weather{margin:22px auto 0;max-width:560px;border:1px solid rgba(214,187,136,.14);background:rgba(255,255,255,.02);padding:18px 16px}
.db-weather .w1{display:flex;justify-content:center;align-items:center;gap:14px}
.db-weather .emo{font-size:34px}
.db-weather .deg{font-family:var(--serif);font-size:38px}
.db-weather .desc{font-size:16px;color:#c9c2b4}
.db-weather .w2{display:flex;justify-content:center;gap:22px;font-size:13px;color:#8d8478;margin-top:10px}
.db-weather .w2 b{color:#ECE7DD;font-weight:500}
.db-weather .w3{font-style:italic;color:#D6BB88;font-size:13px;margin-top:12px}
.db-live{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;letter-spacing:.1em;color:#c9c2b4;margin-top:20px}
.db-live i{width:8px;height:8px;border-radius:50%;background:#4caf50;display:inline-block}
.db-pills{display:flex;justify-content:center;gap:10px;margin-top:22px}
.db-pills span{font-size:11px;letter-spacing:.26em;text-transform:uppercase;padding:12px 24px;border-radius:999px;background:rgba(255,255,255,.03);color:#8d8478}
.db-pills span.on{background:rgba(214,187,136,.16);color:#D6BB88;border:1px solid rgba(214,187,136,.5)}
.db-hero{margin-top:22px;border:1px solid rgba(214,187,136,.14);background:rgba(255,255,255,.025);padding:22px 24px;box-shadow:0 20px 40px rgba(0,0,0,.3)}
.db-hero .g{font-family:var(--serif);font-style:italic;font-size:28px}
.db-hero .y{font-size:14px;color:#c9c2b4;line-height:1.55;margin-top:12px}
.db-hero .y b{font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:#8d8478;font-weight:600;margin-right:10px}
.db-hero .tl{font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:#8d8478;font-weight:600;margin-top:14px}
.db-check{display:flex;gap:9px;align-items:flex-start;padding:6px 0;font-size:14px;line-height:1.45}
.db-check .ms{font-size:16px;margin-top:2px}
.db-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.db.ph .db-grid{grid-template-columns:1fr}
.db-card{background:rgba(255,255,255,.025);border:1px solid rgba(214,187,136,.08);border-left:3px solid var(--sec,rgba(214,187,136,.25));padding:18px 20px;border-radius:6px}
.db-card.wide{grid-column:1/-1}
.db-grid>*{min-width:0;overflow:hidden}.db-nums>div{min-width:0}
.db.ph .db-card.wide{grid-column:auto}
.db-tag{display:flex;align-items:center;gap:8px;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;margin-bottom:10px}
.db-tag .ms{font-size:15px}
.db-tag .r{margin-left:auto;font-weight:500;color:#6d6559;letter-spacing:.14em}
.db-big{font-family:var(--serif);font-size:40px;line-height:1;color:#F0EAE0}
.db-big small{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#8d8478;display:block;margin-top:6px}
.db-bar{height:4px;background:rgba(255,255,255,.08);margin-top:14px;border-radius:2px}
.db-bar i{display:block;height:100%;background:#D6BB88;border-radius:2px}
.db-meta{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8d8478;margin-top:8px}
.db-streak{margin-top:16px;font-size:13px;color:#c9c2b4}
.db-streak b{font-family:var(--serif);font-size:24px;color:#F0EAE0;margin-right:4px}
.db-todo{display:flex;gap:10px;font-size:13px;line-height:1.5;color:#c9c2b4;padding:7px 0;border-top:1px solid rgba(255,255,255,.05)}
.db-todo i{width:14px;height:14px;border:1.5px solid #8d8478;border-radius:3px;flex:none;margin-top:3px}
.db-add{display:flex;justify-content:space-between;align-items:center;margin-top:10px;border:1px solid rgba(255,255,255,.08);padding:8px 12px;font-size:12px;color:#6d6559}
.db-add b{background:#D6BB88;color:#1C1C1A;font-size:10px;letter-spacing:.1em;padding:4px 10px;border-radius:4px}
.db-day{display:flex;gap:14px;align-items:center;padding:8px 0;border-top:1px solid rgba(255,255,255,.05);font-size:13px;color:#c9c2b4}
.db-day .dt{width:42px;height:42px;border-radius:6px;background:rgba(255,255,255,.04);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;color:#8d8478}
.db-day .dt small{font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.db-day .dt b{font-family:var(--serif);font-size:18px;font-weight:400;line-height:1;color:#ECE7DD}
.db-day.on .dt{background:rgba(214,187,136,.18);color:#D6BB88}
.db-day.on .dt b{color:#D6BB88}
.db-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.db.ph .db-nums{grid-template-columns:1fr 1fr}
.db-nums>div{background:rgba(255,255,255,.03);padding:12px 14px}
.db-nums .k{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#8d8478}
.db-nums .v{font-family:var(--serif);font-size:26px;margin-top:6px}
.db-nums .s{font-size:10px;color:#6d6559;margin-top:2px}
.db-row{display:flex;gap:10px;font-size:12.5px;padding:8px 0;border-top:1px solid rgba(255,255,255,.05);align-items:flex-start;line-height:1.45;color:#c9c2b4}
.db-row:first-of-type{border-top:0}
.db-row b{font-family:var(--serif);font-size:15px;font-weight:500;white-space:nowrap;color:#F0EAE0}
.db-row i{color:#8d8478;font-style:normal}
.db-row em{margin-left:auto;font-style:normal;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;white-space:nowrap}
.db-row em.sage{color:#8FB08A}.db-row em.gold{color:#D6BB88}.db-row em.ruby{color:#E08C7C}
.db-row.new{animation:rowin .6s ease both}
.db-foot{text-align:center;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:#4f4a43;margin-top:40px}

/* phone-sized app pages (the .app block inside a phone) */
.phone .app .atitle{font-size:30px}
.phone .app .checks{grid-template-columns:1fr 1fr 1fr;gap:6px}
.phone .app .check .v{font-size:15px}
.phone .app .draft{padding:12px 14px;font-size:12.5px}
.phone .app .mail{font-size:12.5px}
.phone .app .arow{padding:12px 12px}
.phone .app .money{font-size:12.5px}
/* steps stay visible: moment first, then the phone, then the ledger */
.stage .side .moment{order:1}.stage .side .phone{order:2}.stage .side .ledger{order:3}

/* ---------- one-screen live layout ---------- */
.ch.live-on{padding-top:34px;padding-bottom:24px}
.ch.live-on .head{padding-bottom:10px;margin-bottom:14px;gap:16px;align-items:center}
.ch.live-on .head h1{font-size:34px}
.ch.live-on .head img{width:36px!important}
.ch.live-on .head .job{font-size:15px;max-width:640px}
.ch.live-on .head .kicker{font-size:9.5px}
.ch.live-on .parts{margin-bottom:14px}
.ch.live-on .parts button{padding:7px 13px;font-size:10px}
.live{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:16px 26px;align-items:start}
.live.no-phone{grid-template-columns:1fr}
.live.phone-only{grid-template-columns:auto 1fr;grid-template-rows:auto}
.live .laptop{grid-column:1;grid-row:1;justify-self:center}
.live .phone{grid-column:2;grid-row:1;margin:0}
.live.phone-only .phone{grid-column:1}
.live .control{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 380px;gap:22px;align-items:stretch}
.live.phone-only .control{grid-column:2;grid-row:1;grid-template-columns:1fr;align-content:start}
.live .moment{padding:14px 18px 16px;display:flex;flex-direction:column}
.live .moment h3{font-size:22px;margin:4px 0 4px}
.live .moment p{font-size:13px;min-height:2.6em}
.live .moment .steps{flex-direction:row;flex-wrap:wrap;gap:8px;margin-top:10px}
.live .moment .steps .btn{width:auto;flex:1 1 auto;justify-content:center;padding:10px 14px;font-size:11px;letter-spacing:.1em}
.live.phone-only .moment .steps{flex-direction:column}
.live .ledger{max-height:100%;overflow:auto;padding:12px 16px}
.live .ledger ul{font-size:12px}
.live .ledger li b{font-size:13px}
.live .phone .fit{transform-origin:0 0}

/* ---------- capabilities strip (any order) ---------- */
.live .control{grid-template-columns:320px 1fr 300px;height:172px}
.live.phone-only .control{grid-template-columns:1fr;height:auto}
.live .why{background:var(--panel);border:1px solid var(--hair);border-top:2.5px solid var(--gold-soft);padding:11px 15px;overflow:hidden}
.live .why h4{font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:5px}
.live .why ul{list-style:none;font-size:12px;line-height:1.4;color:var(--ink)}
.live .why li{padding:2px 0 2px 11px;position:relative}
.live .why li:before{content:'';position:absolute;left:0;top:8px;width:4px;height:4px;background:var(--gold-soft);transform:rotate(45deg)}
.live .why li b{color:var(--gold);font-weight:700}
.live .moment{padding:11px 15px 12px}
.live .moment .kicker{font-size:9.5px}
.live .moment h3{font-size:19px;margin:3px 0 2px}
.live .moment p{font-size:12px;min-height:2.4em;line-height:1.4}
.live .moment .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}
.live.phone-only .moment .steps{grid-template-columns:1fr 1fr}
.live .moment .steps .btn{padding:8px 11px;font-size:10.5px;letter-spacing:.04em;text-transform:none;font-weight:600;justify-content:flex-start;text-align:left;width:auto}
.live .moment .steps .btn.on{background:var(--gold);color:#FFFEFC;border-color:var(--gold)}
.live .moment .steps .btn.done:after{content:none}
.live .ledger{max-height:172px}
/* house: map + key facts */
.house2{display:grid;grid-template-columns:1fr 440px;gap:34px;align-items:start}
.house2 .hmap{height:560px}
.keyfacts{display:flex;flex-direction:column;gap:12px}
.keyfacts .kf{background:var(--panel);border:1px solid var(--hair);border-top:2.5px solid var(--gold-soft);padding:14px 18px}
.keyfacts .kf h4{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:6px}
.keyfacts .kf ul{list-style:none;font-size:13px;line-height:1.45}
.keyfacts .kf li{padding:3px 0 3px 12px;position:relative}
.keyfacts .kf li:before{content:'';position:absolute;left:0;top:9px;width:4px;height:4px;background:var(--gold-soft);transform:rotate(45deg)}
.keyfacts .kf li b{color:var(--gold)}
.keyfacts .nums{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.keyfacts .nums div{text-align:center;background:var(--panel);border:1px solid var(--hair);padding:10px 6px}
.keyfacts .nums .fig{font-family:var(--serif);font-size:30px;line-height:1}
.keyfacts .nums .lbl{font-size:9px;margin-top:4px;letter-spacing:.14em}
.day.compact{margin-top:14px;gap:10px;grid-template-columns:repeat(11,1fr)}
.day.compact a{padding:10px 10px 8px;display:flex;flex-direction:column;min-height:0}
.day.compact a img{width:30px;height:30px;border-radius:8px;margin-bottom:8px}
.day.compact .t{font-size:22px}.day.compact .w{font-size:12px;line-height:1.3;margin-top:5px;flex:1}.day.compact .r{display:block;font-size:9px;margin-top:8px}
@media (max-width:1500px){.day.compact{gap:6px}.day.compact a{padding:8px 8px 6px;min-height:0}.day.compact a img{width:22px;height:22px;margin-bottom:5px}.day.compact .t{font-size:18px}.day.compact .w{font-size:11px;line-height:1.3}.day.compact .r{display:none}}
/* a short window: the bullet tabs tighten so nothing runs past the fold */
/* replica extras */
.app .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.app .dish{background:var(--app-panel);border-radius:12px;overflow:hidden;border:1px solid var(--app-line)}
.app .dish img{width:100%;height:120px;object-fit:cover;display:block}
.app .dish .b{padding:10px 12px}
.app .dish .aname{font-size:16px}
.app .site{background:#F8F7F4;color:#5F300D;border-radius:10px;padding:18px 22px;font-family:var(--serif)}
.app .site .t{font-size:26px}.app .site .t i{color:#B0892B}
.app .site .rv{border-top:1px solid rgba(95,48,13,.13);margin-top:12px;padding-top:10px;font-family:var(--sans);font-size:12.5px;line-height:1.5}
.app .site .rv b{font-weight:600}
.app .score{font-family:var(--serif);font-size:44px;line-height:1;color:var(--app-gold)}
.app .bar{height:5px;background:rgba(255,255,255,.08);border-radius:3px;margin:6px 0 10px}
.app .bar i{display:block;height:100%;background:var(--app-gold);border-radius:3px}
.app .thumbs{display:flex;gap:8px;margin-top:8px}
.app .thumbs img{width:64px;height:64px;object-fit:cover;border-radius:8px}
.app .form label{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--app-ink2);margin:10px 0 4px}
.app .form .in{background:rgba(255,255,255,.05);border:1px solid var(--app-line);border-radius:8px;padding:9px 11px;font-size:13px;color:var(--app-ink)}
.app .sms{display:flex;flex-direction:column;gap:8px;padding:10px 0}
.app .sms div{max-width:86%;padding:9px 12px;border-radius:16px;font-size:12.5px;line-height:1.4}
.app .sms .out{align-self:flex-end;background:var(--app-gold);color:#1C1C1A;border-bottom-right-radius:4px}
.app .sms .in{align-self:flex-start;background:rgba(255,255,255,.08);border-bottom-left-radius:4px}
.db-card .thumbs{display:flex;gap:6px;margin-top:8px}
.db-card .thumbs img{width:54px;height:54px;object-fit:cover;border-radius:6px}
.db-card .cover{display:flex;gap:10px;align-items:center}
.db-card .cover img{width:64px;height:80px;object-fit:cover;border-radius:6px}

.hnode{padding:9px 12px}.hnode h3{font-size:19px}.hnode p{font-size:11px}.hnode img{width:20px;height:20px}.hnode .lbl{font-size:9px;margin-bottom:2px}

/* ---------- focused layout: side column + devices, one screen ---------- */
.live{grid-template-columns:330px 1fr!important;grid-template-rows:auto!important;gap:0 26px}
.live .side{display:flex;flex-direction:column;gap:12px;position:static}
.live .devices{display:flex;gap:20px;align-items:flex-start;justify-content:flex-start}
.live .laptop,.live .phone{grid-column:auto;grid-row:auto;justify-self:auto}
.live .why{border-top:2.5px solid var(--gold)}
.live .why ul{font-size:12.5px}
.live .moment{flex:1;overflow:auto}
.live .moment .steps{grid-template-columns:1fr;gap:5px;margin-top:8px}
.live .moment .steps .btn{padding:8px 12px;font-size:12px}
.live .moment p{min-height:0;margin-top:8px;border-top:1px solid var(--hair);padding-top:8px}
.live .moment h3{display:none}
.ch.live-on .head{margin-bottom:16px}
.ch .parts:has(button:only-child){display:none}
.flowbtn{margin-left:18px;display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;padding:8px 12px;border:1px solid var(--hair2);border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;white-space:nowrap}
.flowbtn:hover{border-color:var(--gold);color:var(--gold)}
.flowbtn .ms{font-size:15px}
#flow{position:fixed;inset:0;background:rgba(28,28,26,.72);z-index:60;display:flex;align-items:center;justify-content:center}
#flow[hidden]{display:none}
#flow .fwrap{width:min(92vw,1600px)}
#flow .fwrap .info{box-shadow:0 30px 80px rgba(0,0,0,.5)}
#flow .btn{margin:14px auto 0;display:flex;background:var(--cream)}
.house2.one{grid-template-columns:1fr 400px;align-items:start}
.house2.one .info{width:100%}
.keyfacts .kf ul{font-size:12.5px}


/* ---------- three tabs per room ---------- */
.caps3{display:grid;grid-template-columns:380px 1fr;gap:40px;align-items:start}
.capcol h4{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:10px;padding-bottom:8px;border-bottom:1.5px solid var(--gold-soft)}
.capcol ul{list-style:none}
.capcol li{position:relative;padding:7px 0 7px 18px;font-size:15px;line-height:1.5;border-bottom:1px solid var(--hair)}
.capcol li:before{content:'';position:absolute;left:0;top:15px;width:5px;height:5px;background:var(--gold-soft);transform:rotate(45deg)}
.capcol ul.two{columns:2;column-gap:36px}
.capcol ul.two li{break-inside:avoid}
.appview .apptop{display:flex;align-items:flex-start;gap:26px;margin-bottom:16px}
.devsw{display:inline-flex;background:var(--panel);border:1px solid var(--hair2);border-radius:999px;padding:4px;flex:none}
.devsw button{font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;padding:9px 16px;border-radius:999px;border:0;background:transparent;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.devsw button .ms{font-size:17px}
.devsw button.on{background:var(--ink);color:var(--cream)}
.appview .moment{background:transparent;border:0;box-shadow:none;padding:0;flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.appview .moment .lbl{margin-right:4px}
.appview .moment .steps{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.appview .moment .steps .btn{padding:8px 13px;font-size:11px;letter-spacing:.04em;text-transform:none;font-weight:600}
.appview .moment .steps .btn.on{background:var(--gold);color:#FFFEFC;border-color:var(--gold)}
.appview .moment p{flex-basis:100%;font-size:13px;color:var(--muted);margin:0;min-height:0}
.appview .devices{display:flex;justify-content:center;align-items:flex-start}
.appview[data-dev="desktop"] .phone{display:none}
.appview[data-dev="phone"] .laptop{display:none}
.appview .phone{margin:0}
.ch.live-on{padding:34px 72px 24px}
.appview .moment .steps{flex-direction:row}
.appview .apptop{align-items:center}
.appview .moment .steps .btn{width:auto;flex:0 0 auto}

.phone .tabbar div{cursor:pointer}
.app .arail a{cursor:pointer}
.app .guest{background:#F8F7F4;color:#5F300D;border-radius:12px;padding:28px 32px;max-width:640px;margin:0 auto;font-family:var(--sans)}
.app .guest .gt{font-family:var(--serif);font-size:30px;line-height:1.05}
.app .guest .gt i{color:#B0892B}
.app .guest .gk{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#B0892B;font-weight:600}
.app .guest label{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#8D7355;margin:12px 0 4px}
.app .guest .in{background:#FFFEFC;border:1px solid rgba(95,48,13,.2);border-radius:8px;padding:10px 12px;font-size:13px;min-height:38px}
.app .guest .gb{display:inline-block;margin-top:16px;background:#5F300D;color:#F8F7F4;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;padding:12px 22px;border-radius:999px}
.app .guest p{font-size:13px;line-height:1.55;color:#5F300D}
.app .guest .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.app .doc{background:#FFFEFC;color:#5F300D;border-radius:6px;padding:34px 40px;max-width:720px;margin:0 auto;font-family:var(--sans);box-shadow:0 20px 40px rgba(0,0,0,.35)}
.app .doc .dk{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#B0892B;font-weight:600;text-align:center}
.app .doc h2{font-family:var(--serif);font-weight:400;font-size:26px;text-align:center;margin-top:6px}
.app .doc h2 i{color:#B0892B}
.app .doc .sec{font-family:var(--serif);font-size:15px;margin-top:16px;border-bottom:1px solid rgba(95,48,13,.13);padding-bottom:4px}
.app .doc .sec span{color:#B0892B;font-style:italic;margin-right:8px}
.app .doc p{font-size:11.5px;line-height:1.55;margin-top:6px}
.app .doc .sig{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8D7355}
.app .doc .sig div{border-top:1px solid #5F300D;padding-top:6px}
.app .doc img{width:44px;display:block;margin:0 auto 8px}
.phone .guest{border-radius:0;padding:22px 18px;max-width:none}

/* customer pages row + per-app accent */
.cpages{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1}
.cpages .lbl{margin-right:6px}
.cpages button{font-family:var(--sans);font-size:11px;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid var(--hair2);background:var(--panel);color:var(--ink);cursor:pointer}
.cpages button:hover,.cpages button.on{border-color:var(--gold);color:var(--gold)}
.appview .apptop{flex-wrap:wrap}
.app .arail a.on{background:color-mix(in srgb,var(--acc) 26%,transparent)}
.app .arail a.on .ms{color:var(--acc)}
.app .aband{color:var(--acc)}
.app .dtile.gold{background:color-mix(in srgb,var(--acc) 22%,transparent);color:var(--acc)}
.app .chip.gold{background:color-mix(in srgb,var(--acc) 22%,transparent);color:var(--acc)}
.app .check .k{color:var(--acc);opacity:.85}
.app .tabs span.on{color:var(--acc)}
.app .arow:hover{background:color-mix(in srgb,var(--acc) 8%,transparent)}
.app .abtn.gold{background:var(--acc);border-color:var(--acc);color:#fff}
.app .kh span{color:var(--acc)}
.app .chip.blue{background:rgba(93,143,214,.18);color:#8fb4ea}
.app .chip.teal{background:rgba(79,179,173,.18);color:#6fd0c9}
.app .chip.purple{background:rgba(181,140,203,.18);color:#c9a6de}
.app .chip.olive{background:rgba(169,184,106,.18);color:#c4d08a}

.app .real,.phone .body .real{width:100%;height:100%;border:0;background:#F8F7F4;display:block}
.laptop .scr .real{position:absolute;inset:0}
.cpages .back-app{background:var(--ink);color:var(--cream);border-color:var(--ink);display:inline-flex;align-items:center;gap:6px}
[data-mode="dark"] .cpages .back-app{background:var(--gold);color:#1C1C1A;border-color:var(--gold)}
.cpages .back-app[hidden]{display:none}
.laptop .scr > .real{position:absolute;inset:0;width:100%;height:100%;border:0;background:#F8F7F4}
.app .amain .framewrap{position:absolute;inset:0;overflow:hidden}
.app .amain.hasframe{position:relative;padding:0}
.app .amain .framewrap iframe{width:100%;height:100%;border:0;background:#F8F7F4}

/* ---------- the real app kit inside a device (kit.css is the scoped copy of the apps' stylesheet) ---------- */
.laptop .scr .kit,.phone .body .kit{position:absolute;inset:0;overflow:hidden;background:var(--nm-bg);color:var(--nm-text);font-family:var(--nm-sans);font-size:15px;line-height:1.5}
.kit *{box-sizing:border-box}
.kit[data-app=wholesale]{--nm-sans:'Archivo',-apple-system,'Segoe UI',sans-serif;font-family:var(--nm-sans)}
/* the voice hero card and its rows, from the live app */
.kit .vhero{border-radius:24px;padding:26px 26px 22px;background:linear-gradient(160deg,rgba(216,179,90,.10),rgba(255,255,255,.02) 55%),var(--nm-surface);box-shadow:var(--nm-shadow-card);margin-bottom:22px}
.kit .vhero .vk{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--nm-sub);font-weight:600}
.kit .vhero h2{font-family:var(--nm-serif);font-weight:400;font-size:34px;line-height:1.15;color:var(--nm-ink);margin:8px 0 14px}.kit .vhero h2 i{color:var(--nm-gold)}
.kit .vhero .vs{display:flex;gap:28px}.kit .vhero .vs b{font-family:var(--nm-serif);font-weight:400;font-size:26px;color:var(--nm-ink);display:block;line-height:1}.kit .vhero .vs span{font-size:13px;color:var(--nm-sub)}
.kit .vrow{display:flex;align-items:center;gap:14px;padding:14px 16px 14px 12px;background:var(--nm-surface);border-radius:19px;box-shadow:var(--nm-shadow-card);margin-bottom:9px;cursor:pointer}
.kit .vrow .vbar{width:4px;height:36px;border-radius:4px;flex:none}
.kit .vrow b{font-size:17px;font-weight:600;color:var(--nm-ink);display:block}.kit .vrow span{font-size:13px;color:var(--nm-sub)}
.kit .vrow .vd{margin-left:auto;font-size:15px;color:var(--nm-sub);flex:none}
.kit .vfold{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--nm-surface);border-radius:19px;box-shadow:var(--nm-shadow-card);margin-bottom:9px}
.kit .vfold .vn{font-family:var(--nm-serif);font-size:34px;color:var(--nm-gold);line-height:1;min-width:44px}.kit .vfold .vn.teal{color:var(--nm-slate)}
.kit .vfold b{font-size:16px;font-weight:600;color:var(--nm-ink);display:block}.kit .vfold span{font-size:13px;color:var(--nm-sub)}.kit .vfold .chev{margin-left:auto;color:var(--nm-faint)}
.kit .grade{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--nm-surface);border-radius:14px;margin-bottom:8px;font-size:15px;color:var(--nm-ink)}
.kit .vbig{font-family:var(--nm-serif);font-size:54px;line-height:1;color:var(--nm-ink);margin:2px 0 6px}
.kit .vtiles{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:14px}.kit .vtiles div{background:var(--nm-surface);border-radius:14px;padding:16px 18px}.kit .vtiles b{font-family:var(--nm-serif);font-weight:400;font-size:28px;color:var(--nm-ink);display:block}.kit .vtiles span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nm-sub);font-weight:700}
.kit.ph .vtiles{grid-template-columns:1fr 1fr}
.kit .tool{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--nm-line);font-size:13px}.kit .tool code{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--nm-gold);white-space:nowrap}.kit .tool span{color:var(--nm-text)}.kit .tool em{font-style:normal;color:var(--nm-sub);margin-left:auto;white-space:nowrap;font-size:12px}
.kit .turn{padding:9px 0;border-top:1px solid var(--nm-line);font-size:13.5px;line-height:1.45;color:var(--nm-text)}.kit .turn b{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:2px}.kit .turn.line b{color:var(--nm-gold)}.kit .turn.caller b{color:var(--nm-sub)}
/* the caller's phone during the call */
.callscr{position:absolute;inset:0;background:radial-gradient(120% 70% at 50% 0%,#3B3530,#141210 70%);color:#F0EAE0;display:flex;flex-direction:column;align-items:center;padding:60px 18px 0;text-align:center}
.callscr .who{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#D6BB88}
.callscr .num{font-family:'Bodoni Moda',Georgia,serif;font-size:32px;margin-top:8px;line-height:1}
.callscr .sub{font-size:12.5px;color:#A69881;margin-top:6px}
.callscr .clock{font-family:'Bodoni Moda',Georgia,serif;font-size:22px;color:#A69881;margin-top:10px}
.callscr .bubbles{flex:1;width:100%;overflow:hidden;margin-top:14px;display:flex;flex-direction:column;gap:7px;padding-bottom:10px}
.callscr .bub{max-width:88%;font-size:12.5px;line-height:1.4;padding:9px 12px;border-radius:16px;text-align:left;opacity:0;transform:translateY(8px);animation:bubin .45s ease forwards}
@keyframes bubin{to{opacity:1;transform:none}}
.callscr .bub.line{align-self:flex-start;background:rgba(214,187,136,.18);border-bottom-left-radius:4px}
.callscr .bub.caller{align-self:flex-end;background:rgba(240,234,224,.12);border-bottom-right-radius:4px}
.callscr .ctl{display:flex;gap:18px;padding:10px 0 26px}
.callscr .ctl i{font-family:'Material Symbols Outlined';font-style:normal;width:56px;height:56px;border-radius:50%;background:rgba(240,234,224,.14);display:grid;place-items:center;font-size:24px;color:#fff}
.callscr .ctl i.end{background:#E0655C}
.kit.desk .nm-page{position:absolute;top:0;bottom:0;left:224px;right:0;overflow:auto;max-width:none;margin:0;padding:6px 40px 48px 36px}
.kit.desk .nm-page>*{max-width:1000px}
.kit.desk .nm-tabbar{position:absolute;left:0;top:0;bottom:0;width:224px}
.kit.ph .nm-page{position:absolute;top:0;bottom:66px;left:0;right:0;overflow:auto;max-width:none;margin:0;padding:6px 20px 30px}
.kit.ph .nm-tabbar{position:absolute;left:0;right:0;bottom:0;height:66px;padding:11px 6px 10px}
.kit .nm-home-link{position:absolute;top:12px;left:14px;width:38px;height:38px;border-radius:11px;overflow:hidden;cursor:pointer;z-index:5;box-shadow:0 6px 16px rgba(0,0,0,.35)}
.kit .nm-home-link img{width:100%;height:100%;object-fit:cover;display:block}
.kit .nm-toggle{position:absolute;top:12px;right:14px;z-index:5}
.kit.desk .nm-home-link{top:14px;left:22px}
.kit.desk .nm-toggle{top:16px;right:22px}
.kit.ph .nm-page>:first-child{margin-top:54px!important}
.kit.ph .two{flex-direction:column}.kit.ph .two>*{width:100%!important;max-width:100%}
.kit.desk .nl-mast{padding-top:22px}
.kit.desk .ft-top{padding-right:56px;margin-top:18px}.kit.ph .ft-top{margin-top:54px;padding-right:46px}
.kit .nm-tab{cursor:pointer}
.kit .nm-tab-lbl-sm{display:none}.kit.ph .nm-tab--short .nm-tab-lbl{display:none}.kit.ph .nm-tab--short .nm-tab-lbl-sm{display:inline}
/* on the phone every multi-column grid stacks to two columns or one; nothing inside a device scrolls sideways */
.kit.ph .nm-grid-2,.kit.ph [style*="repeat(5,1fr)"],.kit.ph [style*="repeat(4,1fr)"],.kit.ph [style*="repeat(3,1fr)"],.kit.ph .checks,.kit.ph .vtiles{grid-template-columns:1fr 1fr!important}
.kit.ph [style*="grid-template-columns:1.4fr 1fr"],.kit.ph [style*="grid-template-columns:150px 1fr"],.kit.ph [style*="grid-template-columns:1.2fr 1fr"],.kit.ph [style*="grid-template-columns:200px 1fr"]{grid-template-columns:1fr!important}
.kit.ph .nm-page>*{max-width:100%}
.kit.ph .nm-list-row{flex-wrap:wrap}
.kit.ph .nm-list-row>[style*="width:"]{width:auto!important;min-width:44px}
.kit.ph .nm-list-row>span[style*="flex:1"]{flex:1 1 60%!important;min-width:150px!important}
.db.ph .db-nums .v{font-size:22px}.db.ph .db-row b{white-space:normal}
.kit.ph .nm-list-row .nm-rmeta{max-width:40%}
.kit.ph .nm-mini-row{flex-wrap:wrap}
.kit.ph .nm-avatar{width:64px;height:64px;font-size:22px}
.kit.ph .st-ba{grid-template-columns:1fr}
.kit.ph .st-mcols{grid-template-columns:1fr}
.kit.ph .st-week-row{grid-template-columns:1fr auto}.kit.ph .st-week-d{grid-column:2}
.kit.ph .ft-four{grid-template-columns:1fr}
.kit.ph .ft-hero{grid-template-columns:110px 1fr;gap:14px;padding:18px}.kit.ph .ft-ring{width:104px;height:104px}
.kit.ph .cal-grid .d{height:40px;font-size:14px}
.kit.ph .ev-thumb{display:none}
.kit .pkg{margin:0 -40px 0 -36px}.kit.ph .pkg{margin:0 -20px}.kit.ph .pkg>div:first-child{height:auto;padding:70px 22px 26px}.kit.ph .pkg h1{font-size:38px}.kit.ph .pkg [style*="grid-template-columns:1.2fr 1fr"]{grid-template-columns:1fr!important}
.kit.ph.dense .nm-tab{font-size:9px;letter-spacing:.04em;padding:2px 0}.kit.ph.dense .nm-tab .nm-icn{width:19px;height:19px}
.kit.desk .nm-tab .tbadge{position:static;margin-left:auto}
.kit .poster{border-radius:10px;background:linear-gradient(170deg,#2a2320,#0f0d0c);border:1px solid var(--nm-line);display:flex;flex-direction:column;justify-content:flex-end;padding:8%;position:relative;overflow:hidden;color:var(--nm-ink)}
.kit .poster:before{content:'';position:absolute;inset:0;background:radial-gradient(80% 60% at 30% 20%,rgba(216,179,90,.18),transparent 60%)}
.kit .poster>*{position:relative}
.kit .poster .pk{font-size:.55em;letter-spacing:.3em;text-transform:uppercase;color:var(--nm-gold);font-weight:700}
.kit .poster .pt{font-family:var(--nm-serif);line-height:1;margin-top:.3em}.kit .poster .pt i{color:var(--nm-gold)}
.kit .poster .pd{font-size:.6em;color:var(--nm-sub);margin-top:.5em}
.kit .poster img.crest{position:absolute;right:8%;top:8%;width:14%;opacity:.9}
.kit .ev-feed{display:flex;flex-direction:column;gap:16px;margin-top:8px;max-width:860px}
.kit .ev-card{display:flex;gap:22px;padding:20px;background:var(--nm-surface);border-radius:19px;box-shadow:var(--nm-shadow-card)}
.kit .ev-thumb{flex:0 0 132px;width:132px;height:165px;border-radius:10px;overflow:hidden;cursor:pointer}.kit .ev-thumb .poster{width:100%;height:100%;font-size:14px}
.kit .ev-body{flex:1;min-width:0;display:flex;flex-direction:column}
.kit .ev-top{display:flex;align-items:center;gap:12px;margin-bottom:4px}
.kit .ev-count{font-family:var(--nm-serif);font-style:italic;font-size:15px;color:var(--nm-gold)}
.kit .ev-pill{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:4px 10px;border-radius:999px}
.kit .ev-pill-live{background:rgba(143,188,143,.14);color:#8fbc8f}.kit .ev-pill-mid{background:rgba(143,188,143,.10);color:#8fbc8f;border:1px solid rgba(143,188,143,.3)}.kit .ev-pill-staged{background:rgba(236,231,221,.08);color:var(--nm-sub)}
.kit .ev-title{font-family:var(--nm-serif);font-size:26px;line-height:1.1;color:var(--nm-ink);display:block;margin-bottom:3px;cursor:pointer}
.kit .ev-meta{color:var(--nm-sub);font-size:13px;margin-bottom:12px}
.kit .ev-channels{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.kit .ev-ch{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--nm-sub)}.kit .ev-ch em{font-style:normal;opacity:.75}
.kit .ev-dot{width:8px;height:8px;border-radius:50%}.kit .ev-dot.on{background:#8fbc8f;box-shadow:0 0 5px rgba(143,188,143,.45)}.kit .ev-dot.mid{background:#d8b35a}.kit .ev-dot.off{background:transparent;border:1.4px solid var(--nm-sub);opacity:.55}
.kit .ev-attn{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(216,179,90,.09);border:1px solid rgba(216,179,90,.28);border-radius:10px;padding:10px 14px}
.kit .ev-attn span{color:#d8b35a;font-size:13px;font-weight:500;line-height:1.4}
.kit .ev-quiet{margin-top:auto;color:var(--nm-sub);font-size:13px;padding:6px 2px}.kit .ev-alldone{color:#8fbc8f}
.kit .ev-lasthead{font-family:var(--nm-serif);font-style:italic;font-size:18px;color:var(--nm-sub);margin:36px 0 4px}
.kit .ev-results{display:flex;max-width:860px;border-top:1px solid var(--nm-line);padding-top:16px}.kit .ev-results>div{flex:1}
.kit .ev-num{font-family:var(--nm-serif);font-size:26px;display:block;color:var(--nm-ink)}.kit .ev-lab{color:var(--nm-sub);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;display:block;margin-top:3px}
.kit .ev-foot{margin-top:30px;color:var(--nm-sub);font-size:13px}.kit .ev-foot a{color:var(--nm-gold)}
.kit.ph .ev-card{gap:14px;padding:14px}.kit.ph .ev-thumb{flex-basis:92px;width:92px;height:115px}.kit.ph .ev-thumb .poster{font-size:10px}.kit.ph .ev-title{font-size:20px}.kit.ph .ev-channels{gap:10px}.kit.ph .ev-attn{flex-direction:column;align-items:stretch}.kit.ph .ev-results{flex-wrap:wrap;gap:14px 0}.kit.ph .ev-results>div{flex:1 1 45%}
.kit .igpost{background:#000;color:#f5f5f5;max-width:420px;margin:0 auto;border-radius:12px;overflow:hidden;font-family:-apple-system,'Segoe UI',Roboto,sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.kit .igpost .ih{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:13px;font-weight:600}.kit .igpost .ih img{width:32px;height:32px;border-radius:50%}
.kit .igpost .im{aspect-ratio:4/5;background:#111}.kit .igpost .im .poster{width:100%;height:100%;border-radius:0;font-size:22px}.kit .igpost .im img{width:100%;height:100%;object-fit:cover;display:block}
.kit .igpost .ia{padding:10px 14px;font-size:20px;letter-spacing:8px}.kit .igpost .ic{padding:0 14px 16px;font-size:13px;line-height:1.45}.kit .igpost .ic b{font-weight:600}
.kit.ph .igpost{border-radius:0;margin:54px -20px 0}
.kit .gpost{background:#fff;color:#202124;max-width:420px;margin:0 auto;border-radius:12px;overflow:hidden;font-family:-apple-system,Roboto,Arial,sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.kit .gpost .gh{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:13px}.kit .gpost .gh img{width:36px;height:36px;border-radius:50%}.kit .gpost .gh b{display:block;font-weight:600}.kit .gpost .gh span{color:#5f6368;font-size:12px}
.kit .gpost .gi{aspect-ratio:1;background:#eee}.kit .gpost .gi .poster{width:100%;height:100%;border-radius:0;font-size:22px}
.kit .gpost .gt{padding:12px 14px 6px;font-size:14px;line-height:1.5}.kit .gpost .gl{padding:0 14px 14px;color:#1a73e8;font-weight:600;font-size:14px}
.kit.ph .gpost{border-radius:0;margin:54px -20px 0}
.kit .grev{background:#fff;color:#202124;max-width:560px;margin:0 auto;border-radius:12px;padding:16px 18px;font-family:-apple-system,Roboto,Arial,sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.kit .grev .rh{display:flex;align-items:center;gap:10px}.kit .grev .rh .av{width:36px;height:36px;border-radius:50%;background:#8e24aa;color:#fff;display:grid;place-items:center;font-weight:600}.kit .grev .rh b{display:block;font-size:14px}.kit .grev .rh span{font-size:12px;color:#5f6368}
.kit .grev .stars{color:#fbbc04;margin:8px 0 4px;letter-spacing:2px}.kit .grev .stars small{color:#5f6368;letter-spacing:0;margin-left:8px}
.kit .grev p{font-size:14px;line-height:1.5;margin:6px 0}
.kit .grev .own{margin-top:12px;background:#f1f3f4;border-radius:10px;padding:12px 14px}.kit .grev .own b{display:block;font-size:13px;margin-bottom:4px}.kit .grev .own span{font-size:12px;color:#5f6368}
.kit.ph .grev{border-radius:0;margin:54px -20px 0}
.kit .shopp{background:#F8F7F4;color:#5F300D;max-width:720px;margin:0 auto;border-radius:10px;overflow:hidden;font-family:var(--sans);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.kit .shopp .hd{display:flex;justify-content:space-between;align-items:center;padding:12px 22px;border-bottom:1px solid rgba(95,48,13,.13);font-size:10px;letter-spacing:.24em;text-transform:uppercase;font-weight:600}
.kit .shopp .hd img{width:34px}
.kit .shopp .pr{display:grid;grid-template-columns:200px 1fr;gap:22px;padding:22px}
.kit .shopp .bottle{height:250px;border-radius:8px;background:linear-gradient(170deg,#3a2a1a,#150f0a);display:grid;place-items:center;color:#D6BB88;font-family:var(--serif);font-size:22px;text-align:center;padding:14px}
.kit .shopp h2{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.05}.kit .shopp h2 i{color:#B0892B}
.kit .shopp .price{font-size:15px;margin:8px 0 12px}.kit .shopp .buy{display:inline-block;background:#5F300D;color:#F8F7F4;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;padding:12px 22px;border-radius:999px}
.kit .shopp .revs{padding:0 22px 22px}.kit .shopp .revs h3{font-family:var(--serif);font-weight:400;font-size:20px;border-top:1px solid rgba(95,48,13,.13);padding-top:14px;margin-bottom:8px}
.kit .shopp .rv{padding:10px 0;border-top:1px solid rgba(95,48,13,.08);font-size:13px;line-height:1.5}.kit .shopp .rv b{font-weight:600}.kit .shopp .rv .st{color:#B0892B;letter-spacing:2px}.kit .shopp .rv.new{animation:rowin .6s ease both;background:rgba(176,137,43,.08)}
.kit.ph .shopp{border-radius:0;margin:54px -20px 0}.kit.ph .shopp .pr{grid-template-columns:1fr}
.kit .klav{background:#F8F7F4;color:#5F300D;max-width:600px;margin:0 auto;border-radius:10px;overflow:hidden;font-family:var(--sans);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.kit .klav .top{background:#1C1C1A;padding:26px;text-align:center}.kit .klav .top img{width:54px}.kit .klav .top .k{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#D6BB88;margin-top:12px}
.kit .klav .bd{padding:24px 28px}.kit .klav h2{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.05;margin-bottom:10px}.kit .klav h2 i{color:#B0892B}
.kit .klav p{font-size:14px;line-height:1.6;margin:0 0 12px}
.kit .klav .night{display:flex;gap:14px;align-items:center;padding:12px 0;border-top:1px solid rgba(95,48,13,.13)}.kit .klav .night .poster{width:64px;height:80px;font-size:7px;flex:none}
.kit .klav .night b{font-family:var(--serif);font-weight:400;font-size:20px;display:block}.kit .klav .night span{font-size:12.5px;color:#8D7355}
.kit .klav .cta{display:inline-block;background:#B0892B;color:#1C1C1A;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;padding:12px 22px;border-radius:999px;margin:8px 0 4px}
.kit .klav .ft{padding:14px 28px 20px;font-size:11px;color:#8D7355;border-top:1px solid rgba(95,48,13,.13)}
.kit.ph .klav{border-radius:0;margin:54px -20px 0}
.kit .ebrite{background:#fff;color:#1e0a3c;max-width:640px;margin:0 auto;border-radius:10px;overflow:hidden;font-family:-apple-system,'Segoe UI',Roboto,sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.45)}
.kit .ebrite .eh{height:220px;background:linear-gradient(170deg,#2a2320,#0f0d0c);display:grid;place-items:center}.kit .ebrite .eh .poster{width:170px;height:212px;font-size:12px}
.kit .ebrite .eb{padding:20px 24px}.kit .ebrite .eb .ed{font-size:13px;font-weight:700;color:#d1410c;text-transform:uppercase;letter-spacing:.02em}.kit .ebrite .eb h2{font-size:28px;font-weight:800;line-height:1.1;margin:6px 0 10px}.kit .ebrite .eb p{font-size:14px;line-height:1.5;color:#39364f;margin:0 0 10px}
.kit .ebrite .eb .go{display:inline-block;background:#d1410c;color:#fff;font-weight:700;padding:12px 28px;border-radius:4px;margin-top:8px}
.kit.ph .ebrite{border-radius:0;margin:54px -20px 0}
.kit.ph .nm-tab{overflow:hidden;text-overflow:ellipsis}
.kit .nl-rise,.kit .nm-rise{animation:none}
.kit a{cursor:pointer}
.kit .nm-card,.kit .nm-list-row{transition:background .15s}
.kit .nm-card[data-view]:hover,.kit .nm-list-row[data-view]:hover{background:rgba(216,179,90,.06)}
.kit .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kit .guest{background:#F8F7F4;color:#5F300D;border-radius:12px;padding:28px 32px;max-width:640px;margin:0 auto;font-family:var(--sans)}
.kit .guest .gt{font-family:var(--serif);font-size:30px;line-height:1.05}.kit .guest .gt i{color:#B0892B}
.kit .guest .gk{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#B0892B;font-weight:600}
.kit .guest label{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#8D7355;margin:12px 0 4px}
.kit .guest .in{background:#FFFEFC;border:1px solid rgba(95,48,13,.2);border-radius:8px;padding:10px 12px;font-size:13px;min-height:38px}
.kit .guest .gb{display:inline-block;margin-top:16px;background:#5F300D;color:#F8F7F4;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;padding:12px 22px;border-radius:999px}
.kit .guest p{font-size:13px;line-height:1.55;color:#5F300D}
.kit.ph .guest{border-radius:0;padding:22px 18px;max-width:none;margin:54px -20px 0}
/* the mail as the person receives it: a plain message from Gmail, or the branded shell */
.kit .gmail{background:#fff;color:#202124;border-radius:10px;max-width:680px;margin:0 auto;font-family:-apple-system,'Segoe UI',Roboto,Arial,sans-serif;font-size:14px;line-height:1.5;box-shadow:0 12px 30px rgba(0,0,0,.35);overflow:hidden}
.kit .gmail .gh{padding:16px 22px 12px;border-bottom:1px solid #e0e0e0}
.kit .gmail .gh .subj{font-size:20px;font-weight:400;color:#1f1f1f;margin-bottom:10px}
.kit .gmail .gh .from{display:flex;gap:12px;align-items:center;font-size:13px;color:#5f6368}
.kit .gmail .gh .from b{color:#1f1f1f;font-weight:600}
.kit .gmail .gh .av{width:40px;height:40px;border-radius:50%;background:#5F300D;color:#F8F7F4;display:grid;place-items:center;font-weight:700;flex:none}
.kit .gmail .gb{padding:18px 22px 24px;white-space:pre-line}
.kit .gmail .gb a{color:#1a73e8}
.kit.ph .gmail{border-radius:0;margin:54px -20px 0;box-shadow:none}
.kit .shell{background:#F8F7F4;color:#5F300D;max-width:600px;margin:0 auto;border-radius:10px;overflow:hidden;font-family:var(--sans);box-shadow:0 12px 30px rgba(0,0,0,.35)}
.kit .shell .top{background:#1C1C1A;padding:22px;text-align:center}.kit .shell .top img{width:48px}
.kit .shell .top .k{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#D6BB88;margin-top:10px}
.kit .shell .bd{padding:26px 28px}.kit .shell .bd h2{font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.1;margin-bottom:12px}.kit .shell .bd h2 i{color:#B0892B}
.kit .shell .bd p{font-size:14px;line-height:1.6;margin:0 0 12px}
.kit .shell .cta{display:inline-block;background:#B0892B;color:#1C1C1A;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;padding:13px 24px;border-radius:999px;margin:6px 0 10px}
.kit .shell .ft{padding:14px 28px 20px;font-size:11px;color:#8D7355;border-top:1px solid rgba(95,48,13,.13)}
.kit.ph .shell{border-radius:0;margin:54px -20px 0;box-shadow:none}
/* the document view (a contract-style page) */
.kit .doc{background:#FFFEFC;color:#5F300D;border-radius:6px;padding:34px 40px;max-width:720px;margin:0 auto;font-family:var(--sans);box-shadow:0 20px 40px rgba(0,0,0,.35)}
.kit .doc .dk{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#B0892B;font-weight:600;text-align:center}
.kit .doc h2{font-family:var(--serif);font-weight:400;font-size:26px;text-align:center;margin-top:6px}.kit .doc h2 i{color:#B0892B}
.kit .doc .sec{font-family:var(--serif);font-size:15px;margin-top:16px;border-bottom:1px solid rgba(95,48,13,.13);padding-bottom:4px}.kit .doc .sec span{color:#B0892B;font-style:italic;margin-right:8px}
.kit .doc p{font-size:11.5px;line-height:1.55;margin-top:6px}
.kit .doc .sig{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8D7355}.kit .doc .sig div{border-top:1px solid #5F300D;padding-top:6px}
.kit .doc img{width:44px;display:block;margin:0 auto 8px}
.kit.ph .doc{border-radius:0;padding:24px 20px;margin:54px -20px 0;max-width:none}
/* a page on the site, rendered (not the theme) */
.kit .site{background:#F8F7F4;color:#5F300D;border-radius:10px;padding:22px 26px;font-family:var(--serif);max-width:720px;margin:0 auto;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.kit .site .url{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#B0892B;font-family:var(--sans);font-weight:600}
.kit .site .t{font-size:30px;line-height:1.05;margin-top:8px}.kit .site .t i{color:#B0892B}
.kit .site .rv{border-top:1px solid rgba(95,48,13,.13);margin-top:12px;padding-top:10px;font-family:var(--sans);font-size:13px;line-height:1.55}.kit .site .rv b{font-weight:600}
.kit .site .thumbs{display:flex;gap:10px;margin-top:14px}.kit .site .thumbs img{width:120px;height:120px;object-fit:cover;border-radius:8px}
.kit.ph .site{border-radius:0;margin:54px -20px 0;padding:20px}
.kit .thumbs{display:flex;gap:8px;flex-wrap:wrap}.kit .thumbs img{width:64px;height:64px;object-fit:cover;border-radius:8px}
.kit .full{position:absolute;inset:0;width:100%;height:100%;border:0;background:#F8F7F4}
/* sms bubbles */
.kit .sms{display:flex;flex-direction:column;gap:8px;padding:10px 0;max-width:420px}
.kit .sms div{max-width:86%;padding:9px 12px;border-radius:16px;font-size:13px;line-height:1.4}
.kit .sms .out{align-self:flex-end;background:var(--nm-gold-bright);color:#17120B;border-bottom-right-radius:4px}
.kit .sms .in{align-self:flex-start;background:rgba(255,255,255,.08);border-bottom-left-radius:4px}
/* the draft with verified facts */
.kit .draft{background:var(--nm-surface);border:1px solid rgba(216,179,90,.45);border-radius:19px;padding:16px 18px;font-size:14px;line-height:1.6;box-shadow:var(--nm-shadow-card);margin-bottom:12px}
.kit .draft .dh{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.kit .draft .body{white-space:pre-line;color:var(--nm-ink)}
.kit .draft .fact{background:rgba(151,190,143,.16);border-radius:4px;padding:0 4px;color:var(--nm-sage);font-weight:600;border-bottom:1px dotted var(--nm-sage)}
.kit .draft .ph{background:rgba(195,94,94,.16);border-radius:4px;padding:0 4px;color:var(--nm-ruby);font-weight:600}
.kit .draft .acts{display:flex;gap:8px;margin-top:14px;justify-content:flex-end;flex-wrap:wrap}
.kit .checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 12px}
.kit .check{background:var(--nm-surface);border-radius:13px;padding:10px 12px;font-size:11.5px;box-shadow:var(--nm-shadow-card)}
.kit .check .k{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nm-sub);font-weight:700}
.kit .check .v{font-family:var(--nm-serif);font-size:18px;margin-top:2px;color:var(--nm-ink)}.kit .check .v.ok{color:var(--nm-sage)}
.kit .check .src{font-size:10.5px;color:var(--nm-sub);margin-top:2px}
.kit .timeline{font-size:12.5px;color:var(--nm-sub)}.kit .timeline div{padding:8px 0;border-top:1px solid var(--nm-line);display:flex;gap:12px}.kit .timeline div b{color:var(--nm-ink);font-weight:600;white-space:nowrap;min-width:64px}
.kit .mail{background:var(--nm-surface);border-radius:15px;padding:14px 16px;box-shadow:var(--nm-shadow-card);font-size:13.5px;line-height:1.55;margin-bottom:10px;color:var(--nm-text)}
.kit .mail.out{border-left:3px solid var(--nm-sage)}.kit .mail.in{border-left:3px solid var(--nm-gold)}
.kit .mail .mh{display:flex;justify-content:space-between;font-size:11.5px;color:var(--nm-sub);margin-bottom:8px;gap:10px}.kit .mail .mh b{color:var(--nm-ink);font-weight:600}
.kit .where{border-left:3px solid var(--nm-gold);background:var(--nm-surface);border-radius:12px;padding:14px 16px;font-size:13.5px;line-height:1.55;box-shadow:var(--nm-shadow-card);color:var(--nm-text);margin-bottom:12px}
.kit .where b{color:var(--nm-ink);font-weight:600}
/* private events: the operations rows, from the app's own style.css */
.kit .ag-h{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--nm-sub);margin:18px 4px 9px}
.kit .ag-blk{background:var(--nm-surface);border-radius:19px;box-shadow:var(--nm-shadow-card);overflow:hidden;margin-bottom:6px}
.kit .ag-item,.kit .ag-evt,.kit .ap-evt{display:flex;gap:14px;align-items:center;padding:14px 16px;border-top:1px solid var(--nm-line);cursor:pointer}
.kit .ag-item{display:block}
.kit .ag-blk>:first-child{border-top:0}
.kit .ag-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.kit .ag-top b{font-family:var(--nm-serif);font-weight:400;font-size:24px;color:var(--nm-ink);line-height:1.1}
.kit .ag-t{font-size:13px;font-weight:600;color:var(--nm-coral);white-space:nowrap}
.kit .ag-sub{font-style:italic;font-size:14px;color:var(--nm-text);margin-top:5px;line-height:1.45}
.kit .ag-ctx{font-size:12.5px;color:var(--nm-sub);margin-top:5px}
.kit .ag-date,.kit .ap-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:46px;border-radius:10px;flex:none;background:var(--nm-sage-soft);color:var(--nm-sage)}
.kit .ag-date[data-tone=amber],.kit .ap-date{background:var(--nm-amber-soft);color:var(--nm-amber)}
.kit .ag-date[data-tone=coral]{background:var(--nm-coral-soft);color:var(--nm-coral)}
.kit .ag-date[data-tone=slate]{background:var(--nm-slate-soft);color:var(--nm-slate)}
.kit .ag-date[data-tone=gold]{background:var(--nm-gold-soft);color:var(--nm-gold)}
.kit .ag-date-m,.kit .ap-date-m{font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.kit .ag-date-d,.kit .ap-date-d{font-family:var(--nm-serif);font-size:19px;line-height:1}
.kit .ag-info,.kit .ap-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.kit .ag-info b,.kit .ap-info b{font-family:var(--nm-serif);font-weight:400;font-size:19px;color:var(--nm-ink);line-height:1.15}
.kit .ag-info span,.kit .ap-info span{font-size:12.5px;color:var(--nm-sub)}
.kit .ap-step{color:var(--nm-text)!important;font-size:13px!important}
.kit .ap-due{color:var(--nm-gold);font-weight:600}.kit .ap-due-now{color:var(--nm-coral)}
.kit .ag-stage{font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--nm-sage-soft);color:var(--nm-sage);flex:none}
.kit .ag-st-plum{background:var(--nm-plum-soft);color:var(--nm-plum)}
.kit .ops-note{border-left:3px solid var(--nm-gold);background:var(--nm-gold-soft);padding:10px 14px;border-radius:0 12px 12px 0;font-size:13px;color:var(--nm-text);margin:0 0 14px}
.kit .kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kit.ph .kanban{grid-template-columns:1fr}
.kit .kcol{background:var(--nm-surface);border-radius:19px;box-shadow:var(--nm-shadow-card);overflow:hidden;min-height:120px}
.kit .kh{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--nm-ink);border-top:3px solid var(--kc,var(--nm-gold));background:var(--kbg,var(--nm-gold-soft))}
.kit .kh span{font-family:var(--nm-serif);font-size:16px;letter-spacing:0;font-weight:400;background:var(--nm-surface);width:28px;height:28px;border-radius:50%;display:grid;place-items:center}
.kit .kcard{margin:10px;padding:12px 14px;border-radius:14px;background:var(--st-inset,rgba(255,255,255,.04));border-left:3px solid var(--kc,var(--nm-gold));cursor:pointer}
.kit .kcard b{font-family:var(--nm-serif);font-weight:400;font-size:19px;color:var(--nm-ink);display:block;line-height:1.15}
.kit .kcard span{font-size:12.5px;color:var(--nm-sub);display:block;margin-top:3px}
.kit .kcard em{font-style:normal;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--nm-gold);display:block;margin-top:6px}
.kit .kcard.new{animation:rowin .6s ease both}
.kit .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center;margin:12px 0 18px}
.kit .cal-grid .dow{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--nm-sub);font-weight:700;padding:6px 0}
.kit .cal-grid .d{height:44px;border-radius:12px;display:grid;place-items:center;font-size:15px;color:var(--nm-text)}
.kit .cal-grid .d.dim{color:var(--nm-faint)}.kit .cal-grid .d.today{border:2px solid var(--nm-gold);color:var(--nm-gold);font-weight:700}
.kit .cal-grid .d.on{background:var(--nm-sage);color:#0F1F1B;font-weight:700}.kit .cal-grid .d.hold{background:var(--nm-amber);color:#1C1408;font-weight:700}.kit .cal-grid .d.music{background:var(--nm-slate-soft);color:var(--nm-slate);font-weight:700}
.kit .cal-row{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--nm-line)}
.kit .cal-row .dn{width:44px;text-align:center;flex:none}.kit .cal-row .dn b{font-family:var(--nm-serif);font-weight:400;font-size:26px;color:var(--nm-sub);display:block;line-height:1}.kit .cal-row .dn span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--nm-sub);font-weight:700}
.kit .cal-row .bar{width:4px;border-radius:4px;align-self:stretch;background:var(--nm-sage)}.kit .cal-row .bar.hold{background:var(--nm-amber)}.kit .cal-row .bar.done{background:var(--nm-faint)}.kit .cal-row .bar.music{background:var(--nm-slate)}
.kit .cal-row h4{font-family:var(--nm-serif);font-weight:400;font-size:21px;color:var(--nm-ink);line-height:1.1}.kit .cal-row p{font-size:13px;color:var(--nm-sub);margin-top:3px}.kit .cal-row p b{color:var(--nm-sage);font-weight:600}
.kit .mchips{display:flex;gap:8px;margin:6px 0 14px;flex-wrap:wrap}.kit .mchips span{padding:9px 14px;border-radius:14px;background:var(--st-inset,rgba(255,255,255,.05));font-size:13px;color:var(--nm-sub);font-weight:600}.kit .mchips span.on{background:var(--nm-surface);color:var(--nm-ink);box-shadow:var(--nm-shadow-card)}.kit .mchips span b{color:var(--nm-gold);margin-left:5px;font-weight:700}
.caps3.three{grid-template-columns:1fr 1fr 1fr;gap:34px}
.conc-foot{display:flex;align-items:center;gap:18px;margin-top:34px;padding-top:18px;border-top:1px solid var(--hair)}
@media (max-height:940px){.ch{padding-top:44px;padding-bottom:36px}.ch .head{margin-bottom:22px;padding-bottom:12px}.ch .head h1{font-size:50px}.ch .head .job{font-size:17px}.ch .parts{margin-bottom:16px}.capcol li{font-size:13px;line-height:1.4;padding:5px 0 5px 16px}.capcol li:before{top:12px}.capcol h4{margin-bottom:6px;padding-bottom:5px}.caps3{gap:26px;grid-template-columns:340px 1fr}.capcol ul.two{column-gap:26px}.day.compact{margin-top:10px}.day.compact .w{font-size:10.5px}#the-house .kicker[style]{margin-top:14px!important}}
@media (max-height:820px){.ch .head h1{font-size:40px}.capcol li{font-size:12px}}
.kit .notreal{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--nm-sub,#8F8778);text-align:center;padding:16px 0 12px;opacity:.85}
.kit .poster .pk,.kit .poster .pt,.kit .poster .pd{overflow:hidden;max-width:100%}
.kit .site .url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kit.desk .pkg{margin:0 -32px 0 -36px}
.kit.ph .igpost .im[style*="grid"]{aspect-ratio:auto!important}.kit.ph .igpost .im>.poster{width:100%!important;height:auto!important;aspect-ratio:1}
.ch .head .job::before{content:'';float:right;width:160px;height:24px}
.laptop .scr iframe.full{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#F8F7F4}
.phone .body iframe.full{width:100%;height:100%;border:0;display:block;background:#F8F7F4}
.cpages button:focus,.caps button:focus,.devsw button:focus,.parts button:focus,.tabs button:focus{outline:none}
.cpages button:focus-visible,.caps button:focus-visible,.devsw button:focus-visible,.parts button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pitch{list-style:none;margin:8px 0 0;max-width:1180px}
.pitch li{display:flex;gap:26px;align-items:baseline;padding:17px 0;border-bottom:1px solid var(--hair);font-family:var(--serif);font-size:31px;line-height:1.18;color:var(--ink)}
.pitch li:first-child{border-top:1px solid var(--gold-soft)}
.pitch .pn{flex:0 0 40px;font-family:var(--sans);font-size:12px;letter-spacing:.3em;color:var(--gold);font-weight:600;transform:translateY(-6px)}
.also{margin-top:20px;max-width:1180px;font-size:15px;line-height:1.5;color:var(--muted)}
.also b{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-right:12px}
#pathtag{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);background:var(--panel);border:1px solid var(--gold-soft);padding:7px 16px;border-radius:20px;display:none;z-index:30;font-weight:600}
body.path #pathtag{display:block}
@media (max-height:940px){.pitch li{font-size:25px;padding:12px 0}.also{margin-top:14px;font-size:14px}}
.kit.ph .st-decide-list{max-width:100%;overflow:hidden}.kit.ph .st-decide-list>*{min-width:0;overflow-wrap:anywhere}
.fullwrap{position:absolute;inset:0}
.fullback{position:absolute;top:10px;left:10px;z-index:3;display:flex;align-items:center;gap:6px;background:rgba(28,28,26,.86);color:#F0EAE0;border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:6px 12px 6px 9px;font-size:12px;font-family:var(--sans);cursor:pointer;backdrop-filter:blur(8px)}
.phone .fullback{top:8px;left:8px}
#rail nav a img.railcrest{width:22px!important;height:22px!important;border-radius:0;object-fit:contain;flex:none}
.db .db-segs{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}
.db .db-segs span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:5px 12px;border-radius:20px;background:rgba(255,255,255,.05);color:#8d8478;font-weight:600}
.db .db-segs span.on{background:rgba(214,187,136,.18);color:#D6BB88;border:1px solid rgba(214,187,136,.35)}
.db .db-segs .rng{background:none;text-transform:none;letter-spacing:0;font-size:12px;font-weight:400;padding:0 0 0 4px}
.db .db-acc{background:#221E1A;border:1px solid rgba(255,255,255,.06);border-left:3px solid var(--zc,#D6BB88);border-radius:12px;margin:10px 0}/* briefs only */
.db .db-acc summary{list-style:none;cursor:pointer;padding:12px 16px;display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:baseline}
.db .db-acc summary::-webkit-details-marker{display:none}
.db .db-acc .dot{width:8px;height:8px;border-radius:50%;background:var(--zc,#D6BB88);display:inline-block;transform:translateY(-1px)}
.db .db-acc .nm{font-family:'Cormorant Garamond',var(--serif);font-size:21px;color:#ECE7DD;line-height:1}
.db .db-acc .q{grid-column:2;font-size:12px;color:#8d8478}
.db .db-acc .v{grid-column:1/3;font-family:'Bodoni Moda',serif;font-size:15px;line-height:1.45;color:#ECE7DD;margin-top:4px}
.db .db-acc .hint{grid-column:1/3;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#8d8478;margin-top:6px}
.db .db-acc .body{padding:0 16px 10px}
.db .db-acc .body .db-row{grid-template-columns:1fr auto auto}
.db .db-acc .body .db-row em.dim{color:#8d8478;background:none;font-style:italic;letter-spacing:0;text-transform:none;font-size:11px}
.db .db-summary{background:linear-gradient(135deg,rgba(214,187,136,.12),rgba(255,255,255,.02));border:1px solid rgba(214,187,136,.25);border-radius:12px;padding:12px 16px;margin:10px 0 12px}
.db .db-summary .lbl{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#D6BB88;font-weight:600}
.db .db-summary p{font-family:'Bodoni Moda',serif;font-size:15.5px;line-height:1.55;color:#ECE7DD;margin:6px 0 0}
.db .db-pills span{cursor:pointer}
.db .db-mast.compact{padding-bottom:6px}.db .db-mast.compact .db-crest{width:44px}.db .db-mast.compact .db-pills{margin-top:12px}

/* the Data tab, the real stylesheet of the live page (09/13/26) mapped to the replica's dark palette */
.db .dz{--ink:#ECE7DD;--sub:#a8a092;--surf:rgba(22,18,16,.55);--low:#221E1A;font-family:'Archivo',var(--sans)}
.db .dz .ptoggle{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}
.db .dz .ptoggle .pills{display:flex;background:var(--low);border-radius:999px;padding:3px}
.db .dz .ptoggle .pills span{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;padding:6px 16px;border-radius:999px;color:var(--sub);cursor:pointer}
.db .dz .ptoggle .pills span.on{background:#d8b35a;color:#141210}
.db .dz .ptoggle .note{font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:rgba(168,160,146,.5)}
.db .dz .acc{border-radius:14px;overflow:hidden;margin-bottom:12px;background:var(--low);border-top:2px solid var(--zc)}
.db .dz .acc-head{padding:16px 22px;cursor:pointer;display:block;list-style:none}
.db .dz .acc-head::-webkit-details-marker{display:none}
.db .dz .acc-title{display:flex;align-items:center;gap:10px}
.db .dz .acc-dot{width:7px;height:7px;border-radius:99px;background:var(--zc)}
.db .dz .acc-name{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--zc);font-weight:700}
.db .dz .acc-q{font-family:'Bodoni Moda',serif;font-style:italic;font-size:19px;margin:5px 0 4px;color:var(--ink)}
.db .dz .acc-v{font-family:'Bodoni Moda',serif;font-size:13.5px;font-style:italic;line-height:1.55;color:var(--sub)}
.db .dz .acc-hint{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(168,160,146,.45);margin-top:8px}
.db .dz details[open] .acc-hint{display:none}
.db .dz .acc-body{padding:4px 22px 18px;color:var(--ink);font-size:12.5px}
.db .dz .ftab{width:100%;border-collapse:collapse;font-size:13px;margin:6px 0 10px}
.db .dz .ftab th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.12em;opacity:.6;padding:4px 6px;font-weight:600}
.db .dz .ftab td{padding:5px 6px;border-top:1px solid rgba(128,128,128,.18)}
.db .dz .ftab .num{text-align:right;white-space:nowrap}
.db .dz .zx-note{font-size:11px;opacity:.55;margin-top:6px}
.db .dz .panel{background:var(--surf);border-radius:12px;padding:14px 18px;min-width:0;margin-bottom:14px}
.db .dz .panel-title{font-size:9px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;margin-bottom:8px}
.db .dz .panel-sub{font-size:10px;color:rgba(168,160,146,.75);margin:-4px 0 10px}
.db .dz .panel-sub b{color:var(--ink)}
.db .dz .two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.db .dz .two .panel{margin-bottom:0}
.db .dz .chips{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 14px}
.db .dz .chip{background:rgba(22,18,16,.7);border-radius:10px;padding:10px 14px;min-width:110px}
.db .dz .c-v{font-family:'Bodoni Moda',serif;font-size:19px}
.db .dz .c-l{font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(168,160,146,.7);margin-top:2px}
.db .dz .tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.db .dz .tile{background:rgba(22,18,16,.6);border-radius:10px;padding:11px 14px;min-width:0}
.db .dz .t-v{font-family:'Bodoni Moda',serif;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .t-l{font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(168,160,146,.7);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .gtiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.db .dz .gtile{background:rgba(22,18,16,.55);border-radius:10px;padding:10px 14px;min-width:0}
.db .dz .gt-v{font-family:'Bodoni Moda',serif;font-size:20px;white-space:nowrap}
.db .dz .gt-v small{font-size:11px;color:rgba(168,160,146,.8)}
.db .dz .gt-l{font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(168,160,146,.7);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .up{color:#66BB6A;font-size:11px}.db .dz .down{color:#e57373;font-size:11px}
.db .dz .subhead{font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:rgba(168,160,146,.8);margin:14px 0 6px}
.db .dz .lag{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:rgba(168,160,146,.45);margin-top:10px}
.db .dz .wk{display:flex;align-items:flex-end;gap:8px;margin-top:8px}
.db .dz .wkc{display:flex;flex-direction:column;align-items:center;gap:5px;flex:1;min-width:0}
.db .dz .wv{font-family:'Bodoni Moda',serif;font-size:12px}
.db .dz .wb{width:70%;border-radius:6px}
.db .dz .wl{font-size:9px;color:rgba(160,150,130,.8)}
.db .dz .mv{display:grid;grid-template-columns:minmax(0,1fr) 58px 38px;align-items:center;column-gap:8px;padding:6px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .mv:first-of-type{border-top:none}
.db .dz .mv .n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.db .dz .mv .u{font-size:10.5px;color:rgba(168,160,146,.8);text-align:right;white-space:nowrap}
.db .dz .mv .d{font-weight:700;font-size:11px;text-align:right}
.db .dz .tp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,220px) 74px;align-items:center;column-gap:12px;padding:5px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .tp:first-of-type{border-top:none}
.db .dz .tp .n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.db .dz .tp .barwrap{min-width:0}
.db .dz .tp .bar{height:7px;border-radius:99px;background:#97a86b;opacity:.85}
.db .dz .tp .u{font-size:10.5px;color:rgba(168,160,146,.85);text-align:right;white-space:nowrap}
.db .dz .rn{display:grid;grid-template-columns:minmax(0,1fr) 70px 130px;align-items:center;column-gap:10px;padding:6px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .rn:first-of-type{border-top:none}
.db .dz .rn .n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
.db .dz .rn .n small{font-size:10px;color:rgba(160,150,130,.7)}
.db .dz .rn .u{font-size:10.5px;color:rgba(168,160,146,.85);text-align:right;white-space:nowrap}
.db .dz .ch{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr) 60px 52px;column-gap:12px;align-items:center;padding:6px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .ch:first-of-type{border-top:none}
.db .dz .ch .n{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .ch .barwrap{min-width:0}
.db .dz .ch .bar{height:8px;border-radius:99px}
.db .dz .ch .v{font-weight:600;text-align:right;white-space:nowrap}
.db .dz .ch .dl{font-weight:700;font-size:10.5px;text-align:right}
.db .dz .qr{display:grid;grid-template-columns:minmax(0,1fr) 56px 52px 72px 58px;column-gap:10px;align-items:center;padding:5px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .qr:first-of-type{border-top:none}
.db .dz .qr .n{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .qr .h,.db .dz .pr .h,.db .dz .pr3 .h{font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:rgba(168,160,146,.55)}
.db .dz .qr .v{font-size:11px;text-align:right;color:var(--sub);white-space:nowrap}
.db .dz .qr .v b{color:var(--ink);font-weight:600}
.db .dz .pos{display:inline-block;font-weight:700;font-size:10px;padding:1px 7px;border-radius:99px}
.db .dz .pr{display:grid;grid-template-columns:minmax(0,1fr) 74px;column-gap:10px;align-items:center;padding:5px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .pr:first-of-type{border-top:none}
.db .dz .pr .n{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .pr .v{font-weight:600;font-size:11px;text-align:right;white-space:nowrap}
.db .dz .pr3{display:grid;grid-template-columns:minmax(0,1fr) 70px 64px;column-gap:10px;align-items:center;padding:5px 0;border-top:1px solid rgba(255,255,255,.06);font-size:12.5px}
.db .dz .pr3:first-of-type{border-top:none}
.db .dz .pr3 .n{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db .dz .pr3 .v{font-weight:600;font-size:11px;text-align:right;white-space:nowrap}
.db .dz .gchip{display:inline-block;font-size:10px;padding:4px 11px;border-radius:99px;background:rgba(22,18,16,.7);color:var(--sub);margin:0 6px 6px 0}
.db .dz .gchip b{color:var(--ink)}
.db.ph .dz .tiles,.db.ph .dz .gtiles{grid-template-columns:repeat(2,minmax(0,1fr))}
.db.ph .dz .two{grid-template-columns:1fr}
.db.ph .dz .qr{grid-template-columns:minmax(0,1fr) 50px 46px}.db.ph .dz .qr .hideS{display:none}
.db.ph .dz .ch{grid-template-columns:minmax(0,1fr) 60px 52px}.db.ph .dz .ch .barwrap{display:none}
.db.ph .dz .tp{grid-template-columns:minmax(0,1fr) 74px}.db.ph .dz .tp .barwrap{display:none}
.db.ph .dz .rn{grid-template-columns:minmax(0,1fr) 60px}.db.ph .dz .rn .u:last-child{display:none}
.db.ph .dz .acc-head{padding:14px 16px}.db.ph .dz .acc-body{padding:4px 16px 16px}.db.ph .dz .ptoggle{flex-direction:column;align-items:flex-start;gap:8px}
.kit.ph .nm-topbar{display:none}
.kit.ph .nm-card>*{min-width:0;max-width:100%}
/* Campaign: the photo library from the website, the poster options */
.kit .plib{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:6px}
.kit .ptile{position:relative;border-radius:12px;overflow:hidden;background:#0f0d0c;aspect-ratio:4/3}
.kit .ptile img{width:100%;height:100%;object-fit:cover;display:block}
.kit .ptile.skip img{opacity:.35;filter:grayscale(.6)}
.kit .pbadge{position:absolute;top:8px;left:8px;z-index:2;font-size:9px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;background:var(--nm-gold);color:#141210;padding:3px 8px;border-radius:99px}
.kit .pscore{position:absolute;top:8px;right:8px;z-index:2;font-size:9.5px;background:rgba(0,0,0,.55);color:#EFE9DE;padding:3px 8px;border-radius:99px;backdrop-filter:blur(4px)}
.kit .pskip{position:absolute;left:8px;bottom:8px;z-index:2;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#e57373;background:rgba(0,0,0,.6);padding:3px 8px;border-radius:99px}
.kit .vopts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:6px}
.kit .vopt{border-radius:12px;padding:8px;background:rgba(255,255,255,.03);border:1px solid var(--nm-line);cursor:pointer}
.kit .vopt.on{border-color:var(--nm-gold);box-shadow:0 0 0 1px var(--nm-gold)}
.kit .vopt img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px;display:block}
.kit .vopt .vl,.kit .vrest .vl{font-size:11px;color:var(--nm-sub);margin-top:8px}
.kit .vopt .vb{margin-top:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--nm-gold)}
.kit .vopt.on .vb{background:var(--nm-gold);color:#141210;display:inline-block;padding:5px 10px;border-radius:99px}
.kit .vrest{display:flex;gap:18px;align-items:flex-end;flex-wrap:wrap;margin-top:6px}
.kit.ph .plib{grid-template-columns:1fr 1fr}.kit.ph .vopts{grid-template-columns:1fr 1fr}
.kit .ptile.add{display:grid;place-items:center;align-content:center;gap:6px;border:1px dashed var(--nm-line);background:none;color:var(--nm-sub);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.kit .ptile.add span:first-child{font-size:26px;line-height:1}
.kit img.poster.pimg{padding:0;object-fit:cover;display:block;border-radius:10px}
/* Media: the pillars */
.kit .pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:6px}
.kit .pillar{display:flex;gap:12px;align-items:center;background:var(--nm-surface-2,#221B16);border:1px solid var(--nm-line);border-radius:14px;padding:10px;min-width:0}
.kit .pillar img{width:56px;height:56px;border-radius:10px;object-fit:cover;flex:none}
.kit .pillar .pl{display:flex;flex-direction:column;gap:2px;min-width:0}
.kit .pillar .pl b{font-family:var(--nm-serif);font-weight:400;font-size:18px;color:var(--nm-ink)}
.kit .pillar .pl span{font-size:11.5px;color:var(--nm-sub)}
.kit .pillar .pl em{font-style:normal;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--nm-sub)}
.kit .pillar.due{border-color:var(--nm-gold)}.kit .pillar.due .pl em{color:var(--nm-gold)}
.kit .pillar.soon .pl em{color:#E0A458}
.kit.ph .pillars{grid-template-columns:1fr 1fr}.kit.ph .pillar{flex-direction:column;align-items:flex-start}
.kit.ph .qrwrap{grid-template-columns:1fr!important}.kit.ph .qrwrap .guest{max-width:100%}
.kit.ph .qrwrap>*{min-width:0;max-width:100%;width:100%;box-sizing:border-box;overflow:hidden}.kit.ph .qrwrap img{max-width:100%}
.kit .mapcard{display:block}.kit .mapcard svg{width:100%;height:auto;aspect-ratio:1000/440;display:block}
/* Standing: the nine areas, the pack table, the to-do kinds, the months */
.kit .areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:6px}
.kit .area{background:var(--nm-surface-2,#221B16);border:1px solid var(--nm-line);border-left:3px solid var(--nm-gold);border-radius:14px;padding:12px 14px;min-width:0}
.kit .area[data-t=coral]{border-left-color:var(--nm-coral,#E08C7C)}.kit .area[data-t=sage]{border-left-color:var(--nm-sage,#8FB08A)}
.kit .area .an{display:flex;align-items:baseline;gap:10px}.kit .area .an b{font-family:var(--nm-serif);font-weight:400;font-size:30px;line-height:1;color:var(--nm-ink)}.kit .area .an span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--nm-sub)}
.kit .area p{font-size:12.5px;line-height:1.5;color:var(--nm-text);margin:8px 0 0}
.kit .cmp{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:6px}
.kit .cmp th{text-align:left;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nm-sub);font-weight:700;padding:6px 8px;border-bottom:1px solid var(--nm-line)}
.kit .cmp td{padding:8px;border-top:1px solid var(--nm-line);color:var(--nm-text);white-space:nowrap}
.kit .cmp tr.us td{color:var(--nm-ink);font-weight:600;background:rgba(216,179,90,.06)}
.kit .cmp td.lose{color:var(--nm-coral,#E08C7C)}.kit .cmp td.win{color:var(--nm-sage,#8FB08A)}
.kit .kdot{width:10px;height:10px;border-radius:50%;flex:none;margin-top:6px}.kit .kdot[data-t=gold]{background:var(--nm-gold)}.kit .kdot[data-t=teal]{background:var(--nm-teal,#7FAFA0)}.kit .kdot[data-t=plum]{background:var(--nm-plum,#B07CC3)}
.kit .nm-pill--teal{background:rgba(127,175,160,.18);color:var(--nm-teal,#7FAFA0)}.kit .nm-pill--plum{background:rgba(176,124,195,.18);color:var(--nm-plum,#B07CC3)}
.kit .months{display:flex;gap:18px;align-items:flex-end;justify-content:space-between;padding:6px 6px 0}
.kit .mcol{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:0;text-align:center}
.kit .mcol i{display:block;width:60%;max-width:56px;border-radius:8px 8px 3px 3px;background:var(--nm-gold);opacity:.85}
.kit .mcol .mv{font-family:var(--nm-serif);font-size:26px;line-height:1;color:var(--nm-ink)}.kit .mcol .ml{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--nm-sub)}.kit .mcol .mw{font-size:11px;color:var(--nm-sub)}
.kit.ph .areas{grid-template-columns:1fr 1fr}.kit.ph .cmp{font-size:11px}.kit.ph .cmp td,.kit.ph .cmp th{padding:6px 5px}.kit.ph .months{gap:8px}.kit.ph .mcol .mv{font-size:20px}.kit.ph .mcol .mw{display:none}
.kit .cmp-wrap{overflow:hidden}.kit.ph .cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* the conclusion */
.pitch.cfour{max-width:1240px;margin-top:2px}
.pitch.cfour li{align-items:flex-start;padding:19px 0}
.pitch.cfour li>span:last-child{display:block;min-width:0}
.pitch.cfour b{display:block;font-weight:400}
.pitch.cfour em{display:block;font-style:normal;font-family:var(--sans);font-size:16.5px;line-height:1.5;color:var(--muted);margin-top:7px;max-width:960px}
.pitch.cfour .pn{transform:translateY(8px)}
.cclose{margin-top:34px;display:flex;align-items:baseline;justify-content:space-between;gap:30px;flex-wrap:wrap}
.cclose .big{font-family:var(--serif);font-size:54px;line-height:1;color:var(--ink)}.cclose .big i{color:var(--gold)}
.cclose p{font-size:16px;color:var(--muted);max-width:520px;line-height:1.5}
@media (max-height:940px){.pitch.cfour li{padding:13px 0}.pitch.cfour em{font-size:15.5px;margin-top:5px}.pitch.cfour .pn{transform:translateY(6px)}.cclose{margin-top:20px}.cclose .big{font-size:42px}.conc-foot{margin-top:22px;padding-top:14px}}

/* cover opening: the seal settles, one light passes over it, the title writes in, the phone arrives with the push */
.crestwrap{position:relative;display:inline-block;margin-bottom:26px}
.crestwrap .crest{margin:0}
.crestwrap .sheen{position:absolute;inset:0;-webkit-mask:url(../img/crest.png) center/contain no-repeat;mask:url(../img/crest.png) center/contain no-repeat;background:linear-gradient(115deg,transparent 35%,rgba(255,244,210,.95) 50%,transparent 65%) 0 0/300% 100% no-repeat;background-position:120% 0;opacity:0;pointer-events:none}
#cover.intro .crest{animation:nm-seal 1.3s cubic-bezier(.2,.7,.2,1) both}
#cover.intro .sheen{animation:nm-sheen 1.1s cubic-bezier(.4,0,.2,1) 1.05s both}
#cover.intro .kicker{animation:nm-track 1.1s cubic-bezier(.2,.7,.2,1) .45s both}
#cover.intro h1{animation:nm-up .9s cubic-bezier(.2,.7,.2,1) .6s both}
#cover.intro h1 i{display:inline-block;animation:nm-write 1.1s cubic-bezier(.6,0,.2,1) 1.05s both}
#cover.intro .sub{animation:nm-up .9s cubic-bezier(.2,.7,.2,1) 1.5s both}
#cover.intro .keys,#cover.intro .badge{animation:nm-fade .8s ease 1.9s both}
#cover.intro .phone{animation:nm-phone 1.2s cubic-bezier(.2,.8,.2,1) 1.2s both}
@keyframes nm-seal{0%{opacity:0;transform:scale(1.35) rotate(-14deg);filter:blur(10px)}60%{opacity:1;filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
@keyframes nm-sheen{0%{opacity:1;background-position:120% 0}100%{opacity:1;background-position:-20% 0}}
@keyframes nm-track{from{opacity:0;letter-spacing:.6em}to{opacity:1}}
@keyframes nm-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes nm-write{from{clip-path:inset(-10% 100% -20% 0)}to{clip-path:inset(-10% -5% -20% 0)}}
@keyframes nm-fade{from{opacity:0}to{opacity:1}}
@keyframes nm-phone{from{opacity:0;transform:translateY(60px) rotate(2deg)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#cover.intro *{animation:none!important}}

/* the house map as the way in (show.js hotspots): each room box is a link; the zoom runs on .info */
.info .hot{position:absolute;inset:0;z-index:2}
.info .hot a{position:absolute;border-radius:2px;outline:1.5px solid transparent;outline-offset:3px;transition:outline-color .2s ease,background .2s ease;cursor:zoom-in}
.info .hot a:hover{outline-color:var(--gold);background:rgba(214,187,136,.10)}
body.explore .info .hot{display:none}
#backhouse{position:fixed;left:calc(264px);top:18px;z-index:60;display:flex;align-items:center;gap:6px;font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;padding:9px 16px 9px 12px;border-radius:999px;border:1px solid var(--gold);background:var(--cream);color:var(--ink);cursor:pointer;box-shadow:var(--shadow)}
#backhouse .ms{font-size:16px}
#backhouse[hidden]{display:none}

.info .hot .hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--ink);background:rgba(248,247,244,.94);border:1px solid var(--gold-soft);border-radius:999px;padding:7px 14px 7px 10px;pointer-events:none;animation:nm-hint 2.4s ease-in-out 3s 3 both}
.info .hot .hint .ms{font-size:15px;color:var(--gold)}
@keyframes nm-hint{0%,100%{box-shadow:0 0 0 0 rgba(176,137,43,0)}50%{box-shadow:0 0 0 6px rgba(176,137,43,.18)}}

/* ---------- shared-link pass 09/30/26: the tour bar, the start button, the close, the phone layout ---------- */
#tools #b-menu{display:none}
.startrow{margin-top:34px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.startrow .btn{padding:15px 26px;font-size:12.5px}
.startnote{font-size:13px;color:var(--muted)}
.cover .keys{margin-top:18px}
@media (hover:none),(max-width:1100px){.cover .keys{display:none}}
.cta{margin-top:26px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cta .btn{text-decoration:none;padding:14px 24px}
.cta span:not(.ms){font-size:13px;color:var(--muted);letter-spacing:.04em}

#tour{position:fixed;left:calc(236px + (100vw - 236px)/2);transform:translateX(-50%);bottom:18px;z-index:35;display:flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--hair2);border-radius:999px;padding:6px;box-shadow:0 12px 34px rgba(95,48,13,.16);max-width:min(760px,calc(100vw - 236px - 40px))}
#tour .tb{height:40px;min-width:40px;border-radius:999px;border:1px solid var(--hair2);background:transparent;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;font-family:var(--sans);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;flex:none;transition:all .2s}
#tour .tb .ms{font-size:18px}
#tour .tb.fwd{background:var(--ink);color:var(--cream);border-color:var(--ink);padding:0 16px}
#tour.start .tb.fwd{background:var(--gold);border-color:var(--gold);color:#FFFEFC}
#tour .tb:hover:not(:disabled){filter:brightness(1.1)}
#tour .tb:disabled{opacity:.3;cursor:default}
#tour .tc{display:flex;align-items:baseline;gap:12px;padding:0 10px;min-width:0}
#tour .cap{font-family:var(--serif);font-size:17px;line-height:1.25;color:var(--ink)}
#tour .ct{font-size:10.5px;letter-spacing:.14em;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
body.explore #tour{display:none}
body.present .ch{padding-bottom:96px}
body.present .ch.live-on{padding-bottom:84px}
#tools #b-next{display:none}
#pathtag:empty{display:none}

/* the phone: one column, the menu as a drawer, the app in its phone view */
@media (max-width:820px){
  #tools #b-menu{display:grid}
  #tools #b-mode,#tools #b-notes{display:none}
  #tools{right:12px;top:10px;gap:6px}
  #tools button{width:36px;height:36px}
  #rail{transform:translateX(-100%);box-shadow:none;width:272px;z-index:45}
  body.menu-open #rail{transform:none;box-shadow:0 0 0 100vmax rgba(28,28,26,.38)}
  #rail nav{overflow:auto}
  .ch,body.present .ch{padding:62px 16px 118px}
  body.present .ch.live-on{padding:62px 16px 118px}
  .ch .head{flex-wrap:wrap;align-items:flex-start;gap:12px 14px;margin-bottom:16px;padding-bottom:12px}
  .ch .head>img{width:44px!important}
  .ch .head h1,.ch .head h1{font-size:40px}
  .ch .head .kicker{font-size:9.5px;letter-spacing:.22em}
  .ch .head .job{margin-left:0;max-width:none;text-align:left;font-size:17px;flex-basis:100%}
  .ch .parts{overflow-x:auto;flex-wrap:nowrap;margin:0 -16px 16px;padding:0 16px;scrollbar-width:none}
  .ch .parts::-webkit-scrollbar{display:none}
  .ch .parts button{flex:none;padding:9px 13px;font-size:10px;letter-spacing:.14em;white-space:nowrap}
  .cover{grid-template-columns:1fr;gap:34px;min-height:0}
  .cover .crest{width:68px;margin-bottom:18px}
  .cover h1{font-size:64px}
  .cover .sub{font-size:21px}
  .cover .phone{margin:0 auto}
  .pitch li{font-size:21px!important;padding:11px 0!important;gap:12px}
  .pitch.cfour em{font-size:14px!important}
  .also{font-size:13.5px}
  .cclose .big{font-size:36px!important}
  .conc-foot{flex-wrap:wrap;gap:10px}
  .appview .apptop{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}
  .appview .apptop .devsw{align-self:flex-start}
  .appview .moment .steps{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:2px 16px 4px;scrollbar-width:none}
  .appview .moment .steps::-webkit-scrollbar{display:none}
  .appview .moment .lbl{flex-basis:100%}
  .appview .devices{justify-content:center}
  #tour{left:10px;right:10px;transform:none;bottom:max(10px,env(safe-area-inset-bottom));max-width:none;border-radius:18px;padding:6px}
  #tour .tc{flex:1;flex-direction:column;align-items:flex-start;gap:2px;padding:0 4px}
  #tour .cap{font-size:14.5px}
  #tour .ct{font-size:9.5px}
  #tour .tb.fwd .lb{display:none}
  #tour .tb.fwd{padding:0 12px}
  #tour.start .tb.fwd .lb{display:inline}
  #backhouse{top:auto;bottom:86px}
}

.info-rotate{display:none;align-items:center;gap:8px;margin-top:10px;font-size:12.5px;color:var(--muted)}
.info-rotate .ms{font-size:18px;color:var(--gold)}
@media (max-width:820px) and (orientation:portrait){.info-rotate{display:flex}}
@media (max-width:950px) and (orientation:landscape) and (max-height:500px){
  .ch,body.present .ch{padding:52px 16px 84px}
  #tour{bottom:8px}
}
@media (max-width:820px){
  .ch .head .job{text-wrap:pretty}
  .info .hot .hint{font-size:9px!important;padding:5px 10px!important;gap:4px!important;letter-spacing:.12em!important}
  .info .hot .hint .ms{font-size:13px!important}
}
