*{box-sizing:border-box}[hidden]{display:none!important}:root{color-scheme:dark;--ink:#f4efe6;--muted:#bdbab2;--gold:#e8c98b;--edge:#404947;--panel:#192322}body{margin:0;background:#101716;color:var(--ink);font:16px/1.5 system-ui,sans-serif}header,main{max-width:1250px;margin:auto;padding:0 clamp(15px,4vw,60px)}header{height:83px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--edge)}header>span,.eyebrow,footer,.stage small{font:650 10px/1.5 system-ui;letter-spacing:.19em;color:var(--gold)}.brand{line-height:1;text-decoration:none;color:var(--ink);letter-spacing:.18em;font-weight:800;font-size:21px}.brand small{display:block;font-size:8px;letter-spacing:.32em;margin-top:6px}.intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:33px 0 21px}h1,h2,p{margin:0}h1,.stage strong{font:normal clamp(38px,5vw,65px)/1.08 Georgia,serif}h2{font:normal 25px/1.25 Georgia,serif}p,.lede,.chatHint{color:var(--muted)}.lede{margin-top:9px}.eyebrow{margin:0 0 7px}.badge{border:1px solid #53675e;border-radius:30px;padding:6px 13px;font-size:13px;white-space:nowrap}.lobby,aside,#hostTools{border:1px solid var(--edge);background:var(--panel);border-radius:13px;padding:22px}.lobby{display:grid;grid-template-columns:1fr 1.8fr;gap:12px 28px;margin-bottom:18px}.lobby p,.slides p{font-size:14px;margin-top:5px}.lobby form,.tools{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.lobby label{flex:1;min-width:110px}label{display:grid;gap:5px;color:var(--muted);font-size:13px}input,textarea,button{font:inherit;color:var(--ink);border:1px solid #53605b;border-radius:7px;padding:9px 12px;background:#101918;max-width:100%}input,textarea{width:100%}button{cursor:pointer;min-height:42px;font-size:14px;font-weight:600}button:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}#join,#chat button{background:var(--gold);color:#1e211e;border-color:var(--gold)}a{color:var(--gold)}#hostLine{grid-column:1/-1}.suite{display:grid;grid-template-columns:minmax(0,1fr)}body.joined .suite{grid-template-columns:minmax(0,1fr) minmax(235px,27%);gap:14px}.board{overflow:hidden;position:relative;isolation:isolate;border:1px solid #4a5147;border-radius:14px;background:radial-gradient(ellipse at 50% 8%,#73695444,transparent 60%),linear-gradient(180deg,#2c3935,#26312e 35%,#202925 35%,#172320);padding:16px}.roomlabel{margin-bottom:6px}.stage{position:relative;display:grid;place-items:center;overflow:hidden;aspect-ratio:16/7;max-width:480px;margin:0 auto 6px;background:radial-gradient(at 50% 100%,#2d4440,#101b1c 80%);border:5px solid #252c29;outline:1px solid #7c7968;border-radius:6px;box-shadow:0 10px 24px #090d0b80;color:var(--ink);text-align:center}.stage strong{display:block;font-size:clamp(24px,3.4vw,39px);margin:8px 0}.stage span{font-size:13px;color:#bfcdc4}.stage img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;background:#0d1211}.stage:has(img:not([hidden])){aspect-ratio:16/9;max-width:650px}.stage button{position:absolute;bottom:5px;right:5px;padding:3px 7px;font-size:11px;min-height:28px;background:#111c}.stage:fullscreen{width:100vw;height:100vh;max-width:none;margin:0}.floor{position:relative;max-width:840px;margin:auto;min-height:300px}.table{position:absolute;left:14%;right:14%;top:29%;bottom:1%;border-radius:45% 45% 30% 30% / 29% 29% 38% 38%;border:2px solid #a7784d;box-shadow:inset 0 0 0 6px #68452f,0 9px #3d3028,0 18px 20px #080e0db3;background:repeating-linear-gradient(2deg,#ffffff05 0 1px,transparent 2px 7px),linear-gradient(110deg,#594431,#916743 46%,#654c36 95%);display:grid;place-items:center}.table span{font:600 10px system-ui;letter-spacing:.32em;color:#e4d1b988}.seat{position:absolute;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;width:clamp(78px,21%,155px);height:58px;border:1px solid #687168;border-radius:12px;background:linear-gradient(#36423e,#27332f);box-shadow:0 5px 0 #17201e,0 8px 12px #0b110e66;overflow:hidden;color:#e3e6de}.seat.empty{color:#9ca79e;border-style:dashed}.seat.head{width:clamp(108px,25%,178px);height:71px;left:50%;transform:translateX(-50%);top:5px;border:1px solid #c6ab70}.seat small{font-size:9px;text-transform:uppercase;letter-spacing:.14em}.seat b{max-width:95%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:14px}.seat .tag{position:relative;z-index:1;display:grid;text-align:center;max-width:100%;padding:2px 5px}.seat.live .tag{align-self:stretch;background:linear-gradient(transparent,#000b);margin-top:auto}.seat video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.seat audio{display:none}.seat.left{left:2%}.seat.right{right:2%}.seat.row0{top:27%}.seat.row1{top:53%}.seat.row2{top:79%}.seat.foot{bottom:0;left:50%;transform:translateX(-50%)}aside{display:flex;flex-direction:column;min-height:350px}.chatHint{font-size:13px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#log{flex:1 1 150px;overflow-y:auto;min-height:150px;margin:10px 0;max-height:40vh}.line{font-size:14px;padding:7px 0;border-top:1px solid #3c4640;overflow-wrap:anywhere;white-space:pre-wrap}.line b{color:var(--gold);font-size:12px;display:block}#chat button{width:100%;margin-top:4px}#controls{margin:15px 0}#hostTools{margin-top:14px;display:grid;gap:12px}.slides{border-top:1px solid var(--edge);padding-top:13px}.slides input{width:auto}.slides .tools{margin-top:10px;align-items:center}button[aria-pressed=true]{background:#34584a}#notice:not(:empty){position:sticky;bottom:12px;margin:12px auto;padding:10px 15px;background:#263d34;border:1px solid #708e77;border-radius:9px;z-index:5;color:white}footer{margin:26px 0;color:#939f95}.tools input{max-width:370px}@media(max-width:850px){.lobby{display:block}.lobby form{margin:12px 0}body.joined .suite{grid-template-columns:1fr}aside{min-height:240px}.stage{max-width:440px}.floor{min-height:285px}}@media(max-width:480px){header{height:66px}header>span{font-size:8px}.intro{margin:20px 0}.badge{padding:4px 8px;font-size:11px}.lobby{padding:15px}.lobby form button{width:100%}.board{padding:11px 7px}.seat{height:52px}.table{left:13%;right:13%}.table span{font-size:8px;letter-spacing:.14em}.roomlabel{font-size:9px}.floor{min-height:265px}.stage{aspect-ratio:16/8}.stage span{font-size:11px}.lede{font-size:14px}.tools{gap:7px}.seat.head{height:60px}}
/* The live seats sit over the same chairs in the studio photograph at every viewport. */
.board{aspect-ratio:3/2;align-self:start;background:linear-gradient(0deg,#11171315,#13181114),url('./boardroom-howell.webp') center/100% 100% no-repeat;min-height:0;padding:0}
.roomlabel{position:absolute;z-index:2;left:2%;top:2%;padding:4px 8px;border-radius:4px;background:#16211dde;color:#f2dba7;font-size:9px}
.board .stage,.board .stage:has(img:not([hidden])){position:absolute;left:28%;top:5%;width:44%;height:32%;aspect-ratio:auto;max-width:none;margin:0;border-width:3px}
.board .stage:fullscreen{position:fixed;inset:0;width:100vw;height:100vh}
.floor{position:absolute;inset:0;max-width:none;min-height:0;pointer-events:none}.seat{pointer-events:auto;width:18%;height:12%;border:1px solid #b29a74;background:linear-gradient(145deg,#1b2d27ed,#18201deb);border-radius:8px;box-shadow:0 3px 8px #100c0980;z-index:1}.table{display:none}.seat.empty{background:#13211cd4;border:1px solid #a9997890;color:#eee7d8}.seat .tag{width:100%;max-width:100%;padding:1px 4px;justify-items:center}.seat b{width:100%;max-width:100%;text-align:center}.seat.head{left:50%;top:39%;width:19%;height:14%;border:2px solid #d8ba80}.seat.row0{top:48%}.seat.row0.left{left:16%}.seat.row0.right{right:16%}.seat.row1{top:62%}.seat.row1.left{left:8%}.seat.row1.right{right:8%}.seat.row2{top:76%}.seat.row2.left{left:2%}.seat.row2.right{right:2%}.seat.foot{bottom:2%;height:10%}.seat.empty:not(.head){height:auto;min-height:7%;border-radius:5px}.stage~.floor{z-index:1}.stage button{z-index:2}.stage strong{font-size:clamp(20px,2.6vw,37px);margin:4px 0}.stage small{font-size:8px}.stage span{font-size:12px}select{padding:8px 10px;border-radius:7px;background:#101918;color:var(--ink);border:1px solid #53605b;font:inherit;min-height:41px}
@media(max-width:600px){.roomlabel{font-size:7px;left:1%;top:1%;letter-spacing:.08em}.board{aspect-ratio:1.15}.board .stage,.board .stage:has(img:not([hidden])){left:17%;width:66%;top:6%;height:30%}.stage small{font-size:7px}.stage strong{font-size:22px}.stage span{font-size:10px}.seat,.seat.head{width:25%;border-radius:6px}.seat b{font-size:11px}.seat small{font-size:7px}.seat.row0.left{left:9%}.seat.row0.right{right:9%}.seat.row1.left{left:4%}.seat.row1.right{right:4%}.seat.row2.left{left:1%}.seat.row2.right{right:1%}.stage button{font-size:9px;min-height:22px}}
/* Homepage studio identity and navigation. */
:root{--ink:#f8f8f4;--muted:#bac6d1;--gold:#a8d9ff;--edge:#35434e;--panel:#101a22}
body{background:#090c11;color:#f5f7fa;font-family:Arial,Helvetica,sans-serif}.studio{background:linear-gradient(90deg,rgba(7,15,26,.94),rgba(7,17,30,.83) 42%,rgba(7,17,30,.14)),url('/wp-content/uploads/2026/09/cale-howell-photographic-studio-20260912-1536x864-speed.webp') center 46%/cover no-repeat;border-bottom:1px solid #35434e}
header{border:0;max-width:1440px;height:auto;padding:24px clamp(18px,7.8vw,112px);gap:20px}header .brand{display:block;font-size:30px;font-weight:400;color:#f8f8f4;letter-spacing:.18em;background:#07111dde;padding:10px 12px;border-radius:6px}header .brand small{text-align:center;font-size:8px;letter-spacing:.45em;margin-top:10px}header nav{display:flex;gap:26px;align-items:center}header nav a{color:#f8f8f4;text-decoration:none;font-size:16px;display:inline-flex;align-items:center;min-height:44px;text-shadow:0 1px 4px #07111d}header nav a:hover{text-decoration:underline}header .contact{border:1px solid #eee;border-radius:28px;padding:8px 21px;background:#080b1040}
.intro{max-width:1250px;margin:0 auto;padding:10px clamp(15px,4vw,60px) 32px}.intro h1{font:400 clamp(40px,5vw,66px)/1.06 Georgia,'Times New Roman',serif}.lede{color:#f5f7fa;text-shadow:0 1px 5px #07111d}.badge{border-color:#7d99af;background:#0b1723ed;color:#eaf6ff}.badge::before{content:'';display:inline-block;border-radius:50%;background:#55bdf9;width:8px;height:8px;margin-right:7px}
main>.lobby,body.joined main>.suite{margin-top:18px}.eyebrow,footer,.stage small{color:#a8d9ff}input,textarea,select,button{background:#0b1723;color:#f8f8f4;border-color:#415567}button{border-radius:999px}#join,#chat button{background:#086da6;color:#fff;border-color:#086da6}button:hover:not(:disabled){border-color:#64bcff;color:#fff}button[aria-pressed=true]{background:#095884}.chatHint,.lobby p{color:#c5d0da}
.board{border-color:#35434e;background-image:linear-gradient(0deg,#071b3240,#0a1e351c),url('./boardroom-howell.webp')}.board .stage{border-color:#18364d;outline-color:#4d99ce;box-shadow:0 0 15px #0575e288;background:radial-gradient(at 50% 100%,#123352,#07111d 85%)}.stage span{color:#c3d9ed}.roomlabel{background:#07111dde}.seat,.seat.empty,.seat.head{background:#0b1723ed;border-color:#648096;color:#f8f8f4}.seat.head{border-color:#56bafa}.seat.empty:not(.head){border-radius:999px}.seat:not(.empty) .tag small{color:#abd9ff}.seat.empty:not(.head) small{display:none}.seat.empty:not(.head) b:before{content:'+';display:inline-grid;place-items:center;border-radius:50%;width:15px;height:15px;font-size:12px;margin-right:5px;background:#086da6}.seat.live .tag{background:linear-gradient(transparent,#05101ee8)}
#cameraSetup{grid-column:1/-1;border-top:1px solid #35434e;padding-top:10px}#cameraSetup summary{cursor:pointer;color:#a8d9ff}#cameraSetup label,.deviceLabel{max-width:320px}#cameraSetup button{margin:8px 7px 0 0}#previewVideo{display:block;background:#07111d;width:min(320px,100%);aspect-ratio:16/9;object-fit:contain;margin:10px 0}#previewHint{color:#e0effa}#notice:not(:empty){background:#132839;border-color:#5a85a3}
@media(max-width:650px){header{padding:16px;gap:10px;flex-wrap:wrap}header .brand{font-size:20px}header .brand small{font-size:6px}header nav{gap:12px}header nav a{font-size:13px}header nav a:first-child{display:none}header .contact{padding:4px 11px}.intro{padding:5px 16px 20px}.intro .lede{max-width:290px}.studio{background-position:center}.badge{white-space:normal;text-align:center}.seat.empty:not(.head) b:before{width:12px;height:12px;margin-right:3px}}
/* Seat setup and chat bubbles. */
.roomWelcome { display:flex; align-items:center; gap:18px; margin:22px 0; }
.roomWelcome > div { flex:1; }
.roomWelcome p { font-size:14px; margin-top:5px; }
#seatDialog {
  position: fixed;
  width: min(640px, calc(100vw - 28px));
  max-height: calc(100dvh - 32px);
  padding: 30px 20px 18px;
  border: 1px solid #648096;
  border-radius: 16px;
  background: #101a22;
  color: #f8f8f4;
  overflow-y: auto;
}
#seatDialog::backdrop { background: #030a12c9; backdrop-filter: blur(5px); }
#seatDialog .lobby { display:block; margin:0; padding:0; border:0; }
#seatDialog form { margin:16px 0; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
#seatDialog form #join, #seatDialog .joinCamera { grid-column:1/-1; }
#seatDialog .joinCamera { display:flex; align-items:center; gap:8px; font-size:14px; }
#seatDialog .joinCamera input { width:18px; height:18px; margin:0; }
#closeJoin { position:absolute; right:8px; top:4px; border:0; background:none; font-size:24px; min-height:32px; padding:0 8px; }
#cameraSetup { margin:12px 0; }
#joinError { color:#ffd2c8; }
.seat { overflow:visible; }
button.seat { cursor:pointer; padding:0; font-family:inherit; }
button.seat:hover { border-color:#8bceff; box-shadow:0 0 0 3px #218bd948; }
.seat video { border-radius:inherit; }
.seat.speaking { z-index:30; }
.speechBubble {
  position:absolute;
  bottom:calc(100% + 12px);
  left:50%;
  transform:translateX(-50%);
  width:clamp(130px, 18vw, 220px);
  max-height:180px;
  overflow-y:auto;
  padding:10px 13px;
  border:1px solid #b8d5e7;
  border-radius:14px 14px 14px 3px;
  background:#f1f7fc;
  box-shadow:0 6px 24px #0007;
  color:#0d2436;
  font:400 14px/1.4 Arial,Helvetica,sans-serif;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  text-align:left;
  pointer-events:auto;
}
@media(max-width:600px) {
  .roomWelcome { flex-wrap:wrap; gap:10px; }
  .roomWelcome > div { flex-basis:100%; }
  #seatDialog form { grid-template-columns:1fr; }
  .speechBubble { width:145px; font-size:12px; }
  .seat.left .speechBubble { left:0; transform:none; }
  .seat.right .speechBubble { left:auto; right:0; transform:none; }
}
.board:has(.speaking) { overflow: visible; }

/* Alternate decoded fallback clips without clearing the visible frame. */
.seat video.relay { opacity:0; }
.seat video.relay.relay-active { opacity:1; }

#recordMeeting[aria-pressed=true]{background:#7d2734;border-color:#e78998} #meetingRecordStatus{font-size:13px;color:#bcd3e4} #meetingRecordSave{padding:9px 12px;border:1px solid #63839b;border-radius:999px} .seat .tag small{white-space:nowrap}

.stage.screen-sharing{z-index:2}.stage video.screen-feed{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#07111d;opacity:0}.stage video.screen-feed.screen-visible{opacity:1}.stage.screen-sharing #slide,.stage.screen-sharing #standby{visibility:hidden}#screenStatus{font-size:13px;color:#c5d0da}

.seat.ai-seat .cale-ai-avatar{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.seat.ai-seat .tag{margin-top:auto;background:#05101ecf}.seat.ai-seat .tag small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#botStatus{font-size:13px;color:#c5d0da}


.cale-ai-controls{display:grid;gap:12px;border-top:1px solid #415567;padding-top:12px}.cale-ai-controls .tools{align-items:center}.cale-ai-controls .tools>span{font-size:12px;color:#c5d0da}.cale-ai-controls strong{min-width:90px}.cale-ai-controls label{flex:1;min-width:190px}#caleDiscussionTopic{width:100%;max-width:none}
