:root{--smokey:#11120d;--olive:#565449;--bone:#d8cfbc;--floral:#fffbf4;--white:#ffffff;--black:#000000;--bg:var(--floral);--surface:var(--white);--text:var(--smokey);--muted:var(--olive);--line:rgba(86,84,73,0.22);--max-width:1120px;--radius:4px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--text);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.display{font-weight:700;text-transform:uppercase;letter-spacing:.015em;line-height:.98}.display,.serif{font-family:Times New Roman,Times,serif}.site-header{background:var(--smokey);color:var(--floral);position:-webkit-sticky;position:sticky;top:0;z-index:20}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:76px;gap:1rem}.site-header .logo{display:flex;align-items:center;gap:.85rem}.site-header .logo img{height:34px;width:auto}.site-header .logo .wordmark{font-weight:700;text-transform:uppercase;letter-spacing:.26em;font-size:.95rem}.header-nav{display:flex;gap:1.5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,251,244,.75)}.header-nav a:hover{color:var(--floral)}.header-nav .nav-login{border:1px solid rgba(255,251,244,.45);border-radius:999px;padding:.25rem .85rem;color:var(--floral)}.header-nav .nav-login:hover{background:rgba(255,251,244,.12)}@media (max-width:640px){.header-nav{display:none}}.home-hero{background:var(--smokey);color:var(--floral);text-align:center;padding:3.5rem 1.5rem 3rem}.home-hero img{height:clamp(92px,13vw,150px);width:auto}.home-hero .eyebrow{margin-top:1.5rem;text-transform:uppercase;letter-spacing:.42em;font-size:.72rem;color:var(--bone)}.home-hero .rule{width:54px;height:2px;background:var(--olive);margin:1.1rem auto}.home-hero p{max-width:54ch;margin:0 auto;color:rgba(255,251,244,.82);font-size:1.02rem}.index-split{display:grid;grid-template-columns:1.05fr 1fr;align-items:start}@media (max-width:860px){.index-split{grid-template-columns:1fr}.index-preview{display:none}}.index-preview{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden;background:var(--olive)}.index-preview .frame{position:absolute;inset:0;background-size:cover;background-position:50%}.index-preview .scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,18,13,.82) 0,rgba(17,18,13,.15) 55%,transparent)}.index-preview .overlay{position:absolute;left:0;right:0;bottom:0;padding:2.5rem;color:var(--floral)}.index-preview .overlay .count{letter-spacing:.3em;font-size:.72rem;color:var(--bone)}.index-preview .overlay h2{font-size:clamp(2rem,4vw,3rem);margin:.4rem 0}.index-preview .overlay p{color:rgba(255,251,244,.85);max-width:40ch}.preview-block{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Times New Roman,Times,serif;font-size:8rem;color:rgba(255,251,244,.16);background:var(--smokey)}.index-list{border-left:1px solid var(--line)}.index-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:1.1rem;gap:1.1rem;padding:1.5rem 1.75rem;border-bottom:1px solid var(--line);transition:background .18s ease}.index-row.active,.index-row:hover{background:rgba(216,207,188,.34)}.index-row .rownum{font-size:.8rem;letter-spacing:.14em;color:var(--olive);font-weight:700}.index-row .rowtitle{font-size:1.55rem}.index-row .rowdesc{display:block;font-family:DM Sans,sans-serif;text-transform:none;letter-spacing:0;font-weight:400;font-size:.9rem;color:var(--muted);margin-top:.15rem}.index-row .arrow{font-size:1.3rem;color:var(--olive);transition:transform .18s ease}.index-row.active .arrow,.index-row:hover .arrow{transform:translateX(6px)}.team-mosaic{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:3px;gap:3px;width:100%}.team-mosaic.fill{position:absolute;inset:0;grid-auto-rows:1fr;gap:2px;background:var(--smokey)}.team-mosaic .cell{aspect-ratio:1;background-size:cover;background-position:50%;display:flex;align-items:center;justify-content:center;color:var(--floral);font-size:.72rem;font-weight:700;letter-spacing:.04em}.team-mosaic.fill .cell{aspect-ratio:auto}.page{padding:3rem 0 4.5rem}.breadcrumb{font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--olive);margin-bottom:1.25rem}.breadcrumb a:hover{color:var(--smokey)}.page h1{font-size:clamp(2rem,5vw,2.8rem);text-transform:uppercase;letter-spacing:.04em;font-weight:800}.page .lead{margin-top:.6rem;color:var(--muted);font-size:1.1rem;max-width:60ch}.section{margin-top:2.5rem}.section h2{font-size:1.4rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);padding-bottom:.5rem;margin-bottom:1.1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.6rem}.card+.card{margin-top:1rem}.card h3{text-transform:uppercase;letter-spacing:.03em;font-size:1.05rem;margin-bottom:.5rem}.steps{grid-gap:1rem}.step,.steps{display:grid;gap:1rem}.step{grid-template-columns:56px 1fr;grid-gap:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.step .badge{width:44px;height:44px;border-radius:50%;background:var(--smokey);color:var(--floral);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.step h3{text-transform:uppercase;letter-spacing:.03em;font-size:1.05rem;margin-bottom:.5rem}.card ul,.step ul{margin:.5rem 0 0 1.1rem;color:var(--muted)}.card li,.step li{margin-bottom:.4rem}a.inline{color:var(--olive);text-decoration:underline;text-underline-offset:2px;word-break:break-word}a.inline:hover{color:var(--smokey)}.btn{display:inline-block;margin-top:1rem;padding:.7rem 1.4rem;background:var(--smokey);color:var(--floral);border-radius:2px;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;transition:background .15s ease}.btn:hover{background:var(--olive)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1rem;gap:1rem}.kv{font-size:.97rem}.kv dt{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;color:var(--olive);margin-top:.7rem}.kv dd{font-weight:500}.callout{background:var(--bone);border-radius:var(--radius);padding:1.1rem 1.3rem;margin-top:1rem;font-size:.95rem}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:1rem;gap:1rem}.swatch{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.swatch .chip{height:92px}.swatch .meta{padding:.7rem .85rem;background:var(--surface)}.swatch .meta strong{display:block;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem}.swatch .meta span{color:var(--muted);font-size:.8rem}.logo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.logo-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.logo-card .frame{height:160px;display:flex;align-items:center;justify-content:center;padding:1.5rem}.logo-card .frame.dark{background:var(--smokey)}.logo-card .frame.light{background:var(--floral)}.logo-card .frame img{max-width:100%;max-height:100%;object-fit:contain}.logo-card .cap{padding:.7rem .9rem;font-size:.82rem;color:var(--muted);border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:.5rem}.logo-card .cap a{color:var(--olive);font-weight:600}.roster{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:1.25rem;gap:1.25rem}.member-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface);display:flex;flex-direction:column}.member-card .mc-photo{aspect-ratio:4/5;background-size:cover;background-position:top;display:flex;align-items:center;justify-content:center}.member-card .mc-photo span{font-family:Times New Roman,Times,serif;font-size:2.4rem;font-weight:700;color:rgba(255,251,244,.9);letter-spacing:.04em}.member-card .mc-body{padding:1rem 1.1rem 1.2rem;text-align:center}.member-card .mc-name{font-size:1.15rem;margin-bottom:.35rem}.member-card .mc-role{font-weight:600;font-size:.86rem;text-transform:uppercase;letter-spacing:.03em}.member-card .mc-company{color:var(--muted);font-size:.82rem;margin-bottom:.7rem}.member-card .mc-contact{display:flex;flex-direction:column;gap:.15rem;font-size:.85rem;padding-top:.7rem;border-top:1px solid var(--line)}.member-card .mc-contact a:hover{color:var(--olive);text-decoration:underline}.member-card .mc-lic{display:flex;flex-wrap:wrap;justify-content:center;gap:.15rem .75rem;margin-top:.7rem;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.03em}.rows{display:grid;grid-gap:.75rem;gap:.75rem}.row{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.3rem;transition:border-color .15s ease}.row:hover{border-color:var(--olive)}.row .label{font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.95rem}.row .desc{color:var(--muted);font-size:.88rem;font-weight:400;text-transform:none;letter-spacing:0}.row .arrow{color:var(--olive);font-weight:700}.embed-wrap{position:relative;width:100%;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.embed-wrap iframe{width:100%;height:640px;border:0;display:block}.site-footer{background:var(--smokey);color:rgba(255,251,244,.7);padding:2.5rem 0;font-size:.85rem}.site-footer .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;align-items:center}.site-footer .brand-line{text-transform:uppercase;letter-spacing:.1em;color:var(--floral);font-weight:700}.site-footer a{color:var(--bone)}a.card{display:block;text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}a.card:hover{border-color:var(--olive);transform:translateY(-2px)}a.card .go{display:inline-block;margin-top:.6rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--olive)}.join-card{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;background:var(--bone)}.join-card h3{margin-top:0}.join-card .btn{margin-bottom:0}.form{gap:1rem}.field,.form{display:flex;flex-direction:column}.field{gap:.35rem}.field span{font-size:.85rem;font-weight:600;color:var(--olive)}.field input,.field select,.field textarea{padding:.65rem .8rem;border:1px solid var(--line);border-radius:8px;background:var(--floral);color:var(--text);font:inherit}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--olive)}.board-admin{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;padding:.8rem 1rem;background:var(--bone);border-radius:var(--radius)}.board-admin .tag{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:700;color:var(--smokey)}.board-admin input{padding:.45rem .6rem;border:1px solid var(--line);border-radius:2px;background:var(--floral);font:inherit;max-width:140px}.board-admin .btn{margin:0;padding:.5rem 1rem}.board-admin .hint{font-size:.78rem;color:var(--olive);flex-basis:100%}.board{position:relative;height:760px;border:1px solid var(--line);border-radius:var(--radius);background-color:var(--floral);background-image:radial-gradient(rgba(86,84,73,.22) 1px,transparent 0);background-size:22px 22px;overflow:hidden;touch-action:none}.polaroid{position:absolute;width:188px;background:var(--white);padding:10px 10px 0;box-shadow:0 16px 34px -16px rgba(17,18,13,.42);transform-origin:center center}.polaroid .grip{height:14px;margin:-4px -4px 6px;border-radius:2px;background:repeating-linear-gradient(90deg,rgba(86,84,73,.28) 0 6px,transparent 6px 12px)}.polaroid .grip.live{cursor:-webkit-grab;cursor:grab}.pol-photo{display:flex;align-items:center;justify-content:center;height:168px;background-size:cover;background-position:50%;color:var(--floral);font-family:Times New Roman,Times,serif;font-size:2.4rem;font-weight:700}.pol-cap{padding:.6rem .2rem .9rem;text-align:center}.pol-cap .nm{font-family:Times New Roman,Times,serif;text-transform:uppercase;letter-spacing:.02em;font-size:1rem;font-weight:700}.pol-cap .rl{font-size:.74rem;color:var(--olive);margin-top:.1rem}.pol-x{top:-10px;left:-10px;background:var(--smokey);font-size:.95rem;line-height:1;cursor:pointer}.dial,.pol-x{position:absolute;width:22px;height:22px;border:none;border-radius:50%;color:var(--floral)}.dial{bottom:-10px;font-size:.8rem;cursor:-webkit-grab;cursor:grab;touch-action:none}.dial,.pol-edit{right:-10px;background:var(--olive)}.pol-edit{position:absolute;top:-10px;height:22px;padding:0 8px;border:none;border-radius:11px;color:var(--floral);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.connect-steps{list-style:none;display:grid;grid-gap:.75rem;gap:.75rem;margin-top:.9rem}.connect-steps li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.connect-steps .btn{margin:0}.connect-hint{color:var(--muted);font-size:.82rem}.gated-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem}.gated-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1.1rem 1.2rem}.gated-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.9rem}.gated-label{font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.92rem}.gated-desc{color:var(--muted);font-size:.82rem;margin-top:.15rem}.gated-blur{font-size:1.3rem;font-weight:700;letter-spacing:.12em;color:var(--smokey);filter:blur(5px);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.gated-form{display:flex;gap:.5rem;flex-wrap:wrap}.gated-form input[type=email]{flex:1 1;min-width:160px;padding:.6rem .75rem;border:1px solid var(--line);border-radius:8px;background:var(--floral);color:var(--text);font:inherit}.gated-card>.btn,.gated-form .btn{margin:0}.gated-hint{color:var(--muted);font-size:.78rem;margin-top:.5rem}.gated-note{font-size:.85rem;margin-top:.5rem}.gated-note.ok{color:#2e7d32}.gated-note.err{color:#b3261e;width:100%}.admin-acc{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:none;padding:0;cursor:pointer;font:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:.95rem;color:var(--text)}.admin-row{border-top:1px solid var(--line);padding:.9rem 0}.admin-row:first-of-type{border-top:none}.kanban{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.75rem;align-items:flex-start}.kanban-col{flex:0 0 240px;background:rgba(86,84,73,.06);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;min-height:120px}.kanban-col.over{border-color:var(--olive);background:rgba(86,84,73,.14)}.kanban-col h4{display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;margin-bottom:.6rem}.kanban-col h4 span{color:var(--muted);font-weight:400;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:0 .45rem;font-size:.72rem}.pcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.6rem .7rem;margin-bottom:.55rem;cursor:-webkit-grab;cursor:grab}.pcard:active{cursor:-webkit-grabbing;cursor:grabbing}.pcard:hover{border-color:var(--olive)}.pcard-addr{font-weight:600;font-size:.9rem}.pcard-meta{color:var(--muted);font-size:.78rem}.edit-overlay{position:fixed;inset:0;background:rgba(17,18,13,.55);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100}.edit-modal{background:var(--surface);border-radius:var(--radius);padding:1.5rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(17,18,13,.35)}.edit-modal h3{margin-bottom:1rem}.edit-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.edit-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}.btn.ghost{background:transparent;color:var(--olive);border:1px solid var(--line)}@media (max-width:520px){.edit-grid{grid-template-columns:1fr}}.team-strip{margin-top:1.25rem}.link{color:var(--olive);text-decoration:underline;text-underline-offset:2px}.rsvp-people{display:flex;flex-wrap:wrap;gap:.6rem 1rem;margin-top:.75rem}.rsvp-person{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.rsvp-avatar{width:34px;height:34px;border-radius:999px;background:var(--olive);background-size:cover;background-position:50%;color:var(--floral);display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex:0 0 auto}.admin-nav{position:relative;display:inline-block}.admin-nav-btn{background:var(--olive);color:var(--floral);border:none;border-radius:2px;padding:.4rem .7rem;font:inherit;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.admin-nav-menu{position:absolute;right:0;top:calc(100% + .4rem);background:var(--smokey);border:1px solid rgba(255,251,244,.15);border-radius:4px;min-width:190px;display:flex;flex-direction:column;padding:.35rem;z-index:40;box-shadow:0 12px 30px -12px rgba(0,0,0,.6)}.admin-nav-menu a,.admin-nav-signout{color:var(--floral);background:none;border:none;text-align:left;font:inherit;font-size:.85rem;text-transform:none;letter-spacing:0;padding:.5rem .6rem;border-radius:3px;cursor:pointer}.admin-nav-menu a{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.admin-nav-menu a:hover,.admin-nav-signout:hover{background:var(--olive)}.admin-nav-signout{margin-top:.25rem;border-top:1px solid rgba(255,251,244,.12);color:var(--bone)}.admin-nav-badge{justify-content:center;min-width:1.15rem;height:1.15rem;padding:0 .3rem;margin-left:.4rem;border-radius:999px;background:#d9534f;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:0}.account-nav,.admin-nav-badge{display:inline-flex;align-items:center;line-height:1}.account-nav{flex-direction:column;gap:2px}.account-avatar{width:30px;height:30px;border-radius:999px;background:var(--olive);background-size:cover;background-position:50%;color:var(--floral);display:inline-flex;align-items:center;justify-content:center;font-size:.66rem;font-weight:700;border:1px solid rgba(255,251,244,.4)}.account-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,251,244,.75)}.account-nav:hover .account-label{color:var(--floral)}.crop-box{position:relative;overflow:hidden;border-radius:var(--radius);border:2px solid var(--olive);background:var(--smokey);touch-action:none;cursor:-webkit-grab;cursor:grab;margin:0 auto}.crop-box:active{cursor:-webkit-grabbing;cursor:grabbing}.member-card.dragging{opacity:.5;outline:2px dashed var(--olive)}.mc-admin{display:flex;align-items:center;gap:.35rem;margin-top:.6rem;padding-top:.5rem;border-top:1px solid var(--line)}.mc-admin button{background:var(--bone);color:var(--smokey);border:none;border-radius:3px;padding:.25rem .5rem;font-size:.8rem;cursor:pointer}.mc-admin button:disabled{opacity:.4;cursor:default}.mc-admin .mc-drag{margin-left:auto;color:var(--muted);cursor:-webkit-grab;cursor:grab;font-size:1rem}.role-select{display:flex;flex-direction:column;gap:.5rem}.role-chips{display:flex;flex-wrap:wrap;gap:.4rem}.role-chip{background:var(--surface);color:var(--smokey);border:1px solid var(--line);border-radius:999px;padding:.3rem .7rem;font-size:.82rem;cursor:pointer}.role-chip.on{background:var(--smokey);color:var(--floral);border-color:var(--smokey)}.role-add{display:flex;gap:.4rem}.role-add input{flex:1 1}.photo-field .photo-preview{display:flex;gap:.75rem;align-items:flex-start}.photo-thumb{width:108px;aspect-ratio:4/5;flex:0 0 auto;background-size:cover;background-position:top;border-radius:var(--radius);border:1px solid var(--line)}.photo-actions{display:flex;flex-direction:column;gap:.4rem}.photo-file{display:inline-block;text-align:center;cursor:pointer}.add-contact-btn{margin-top:.6rem;background:var(--bone);color:var(--smokey);border:1px solid var(--line);border-radius:3px;padding:.4rem .7rem;font-size:.82rem;cursor:pointer;width:100%}.add-contact-btn:hover{background:var(--olive);color:var(--floral)}.member-card .mc-langs{margin-top:.5rem;font-size:.85rem;letter-spacing:.02em;color:var(--smokey)}.mobile-tabbar{display:none}.mt-tab{flex:1 1;flex-direction:column;gap:.4rem;padding:.15rem 0}.mt-ico,.mt-tab{display:flex;align-items:center}.mt-ico{height:17px;justify-content:center}.mt-label{font-size:.62rem;letter-spacing:.05em;font-weight:600}@media (max-width:640px){.mobile-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;background:var(--smokey);padding:.7rem .4rem calc(.7rem + env(safe-area-inset-bottom));border-top:1px solid rgba(216,207,188,.14)}body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}.site-footer{display:none}}.pl-summary{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.pl-stat,.pl-summary{display:flex;align-items:center}.pl-stat{flex-direction:column;min-width:84px;padding:.7rem 1rem;background:var(--bone);border-radius:var(--radius)}.pl-stat-n{font-size:1.5rem;font-weight:700;line-height:1}.pl-stat-l{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:.25rem}.pl-dot{display:inline-block;width:10px;height:10px;border-radius:999px;margin-right:.5rem;vertical-align:middle}.pl-count{color:var(--muted);font-weight:400;font-size:.8rem;border:1px solid var(--line);border-radius:10px;padding:0 .5rem;margin-left:.35rem}.pl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1rem;gap:1rem}.pl-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem;transition:border-color .15s ease}.pl-card:hover{border-color:var(--olive)}.pl-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.pl-addr{font-weight:700;font-size:1.02rem;line-height:1.2}.pl-city{color:var(--muted);font-size:.85rem;margin-top:.15rem}.pl-price{font-weight:700;white-space:nowrap;font-size:.98rem}.pl-specs{margin-top:.6rem;font-size:.86rem;color:var(--text)}.pl-mls{margin-top:.25rem;font-size:.76rem;color:var(--muted);letter-spacing:.02em}.pl-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--line)}.pl-link{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:var(--olive);font-size:.82rem;font-weight:600;text-decoration:none}.pl-link:hover{text-decoration:underline}.pl-link.primary,.pl-link:hover{color:var(--smokey)}.pl-stage{padding:.3rem .4rem;border:1px solid var(--line);border-radius:6px;background:var(--floral);color:var(--text);font-size:.78rem;margin-left:auto}.oh-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;border-radius:999px;white-space:nowrap;border:1px solid var(--line);color:var(--muted);background:var(--bone)}.oh-badge.oh-confirmed{background:#e4efe0;color:#2f5d2a;border-color:#bcd9b3}.oh-badge.oh-requested{background:#f6eccf;color:#7a5c11;border-color:#e6d19a}.oh-badge.oh-available{background:var(--bone);color:var(--muted)}.oh-request-toggle{display:flex;align-items:flex-start;gap:.55rem;margin-top:1rem;font-size:.85rem;color:var(--muted);cursor:pointer}.oh-request-toggle input{margin-top:.15rem;width:16px;height:16px;flex:0 0 auto}.cal-toolbar{flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.cal-nav,.cal-toolbar{display:flex;align-items:center}.cal-nav{gap:.5rem}.cal-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:1.2rem;line-height:1;cursor:pointer}.cal-btn:hover{border-color:var(--olive)}.cal-month{font-weight:700;font-size:1.1rem;min-width:9.5rem;text-align:center}.cal-today,.cal-view{padding:.4rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:.8rem;cursor:pointer}.cal-views{display:flex;gap:.4rem}.cal-view.on{background:var(--smokey);color:var(--floral);border-color:var(--smokey)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.cal-head{margin-bottom:4px}.cal-weekday{text-align:center;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.25rem 0}.cal-cell{aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding:.3rem .2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;font:inherit}.cal-cell.muted{color:var(--muted);background:rgba(86,84,73,.04)}.cal-cell.today{border-color:var(--olive)}.cal-cell.sel{outline:2px solid var(--smokey);outline-offset:-2px}.cal-date{font-size:.82rem;font-weight:600}.cal-dots{display:flex;gap:3px;min-height:6px}.cal-dot{width:6px;height:6px;border-radius:999px}.cal-dot.oh{background:#c79a1e}.cal-dot.ev{background:var(--olive)}.cal-day{margin-top:1.25rem}.cal-day h3{font-size:1rem;margin-bottom:.6rem}.cal-events{display:flex;flex-direction:column;gap:.6rem}.cal-list{margin-top:.5rem}.cal-event{display:flex;gap:.9rem;padding:.7rem .9rem;border:1px solid var(--line);border-left:3px solid var(--olive);border-radius:var(--radius);background:var(--surface)}.cal-event.oh{border-left-color:#c79a1e}.cal-event-when{display:flex;flex-direction:column;align-items:flex-start;min-width:5.2rem;font-size:.8rem;color:var(--muted)}.cal-event-date{font-weight:700;color:var(--text)}.cal-event-title{font-weight:600;font-size:.95rem}.cal-event-title a{color:var(--olive);text-decoration:underline;text-underline-offset:2px}.cal-event-meta{color:var(--muted);font-size:.82rem;margin-top:.15rem}@media (max-width:520px){.cal-cell{padding:.2rem .1rem}.cal-date{font-size:.72rem}.cal-event-when{min-width:4.2rem}}.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.25rem}.gal-album{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface);cursor:pointer;text-align:left;padding:0;transition:border-color .15s ease}.gal-album:hover{border-color:var(--olive)}.gal-album-cover{position:relative;aspect-ratio:4/3;background-size:cover;background-position:50%;background-color:var(--bone);display:flex;align-items:center;justify-content:center}.gal-album-empty{font-size:2rem;opacity:.5}.gal-album-count{position:absolute;right:.5rem;bottom:.5rem;background:rgba(17,18,13,.72);color:var(--floral);font-size:.72rem;font-weight:600;padding:.1rem .5rem;border-radius:999px}.gal-album-body{padding:.7rem .85rem;display:flex;flex-direction:column;gap:.15rem}.gal-album-title{font-weight:700;font-size:.95rem}.gal-album-date{color:var(--muted);font-size:.8rem}.gal-back{background:none;border:none;color:var(--olive);font:inherit;font-weight:600;cursor:pointer;padding:0;margin-bottom:1rem}.gal-back:hover{color:var(--smokey)}.gal-album-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.gal-album-meta{color:var(--muted);font-size:.85rem;margin-top:.2rem}.gal-album-actions{display:flex;gap:.5rem;flex-shrink:0}.gal-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:6px;gap:6px}.gal-photo{aspect-ratio:1/1;background-size:cover;background-position:50%;border:none;border-radius:var(--radius);cursor:pointer;padding:0;background-color:var(--bone)}.gal-lightbox{position:fixed;inset:0;z-index:200;background:rgba(17,18,13,.92);display:flex;align-items:center;justify-content:center;padding:1.5rem}.gal-lightbox img{max-width:100%;max-height:88vh;border-radius:var(--radius);object-fit:contain}.gal-lb-close{top:1rem;right:1rem;width:40px;height:40px;font-size:1.1rem}.gal-lb-close,.gal-lb-nav{position:absolute;border-radius:999px;border:none;background:rgba(255,255,255,.14);color:#fff;cursor:pointer}.gal-lb-nav{top:50%;transform:translateY(-50%);width:46px;height:46px;font-size:1.8rem;line-height:1}.gal-lb-nav.prev{left:1rem}.gal-lb-nav.next{right:1rem}.gal-lb-del{position:absolute;bottom:1.25rem;left:50%;transform:translateX(-50%);border:1px solid rgba(255,255,255,.3);background:rgba(17,18,13,.6);color:#fff;padding:.45rem 1rem;border-radius:var(--radius);font-size:.8rem;cursor:pointer}@media (max-width:520px){.gal-photos{grid-template-columns:repeat(3,1fr)}}.pp{position:relative}.pp-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;margin:0;padding:.25rem;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 30px rgba(17,18,13,.18);max-height:240px;overflow-y:auto}.pp-head{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:.35rem .55rem .2rem}.pp-item{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .55rem;border-radius:6px;cursor:pointer}.pp-item.active{background:var(--bone)}.pp-addr{font-weight:600;font-size:.9rem}.pp-meta{color:var(--muted);font-size:.78rem}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:1.1rem;gap:1.1rem}.content-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.content-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px -16px rgba(0,0,0,.45);border-color:var(--olive)}.content-thumb{position:relative;aspect-ratio:3/2;background-color:var(--smokey);background-size:cover;background-position:50%;display:flex;align-items:center;justify-content:center}.content-thumb-fallback{color:var(--bone);font-size:2.2rem;font-weight:800;letter-spacing:.06em;opacity:.85}.content-badge{position:absolute;top:.6rem;left:.6rem;background:rgba(17,18,13,.82);color:var(--floral);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;padding:.22rem .5rem;border-radius:999px}.content-body{padding:.85rem .95rem 1rem;display:flex;flex-direction:column;gap:.3rem;flex:1 1}.content-body h3{margin:0;font-size:1.02rem;line-height:1.25}.content-body p{margin:0;color:var(--muted);font-size:.86rem}.content-open{margin-top:auto;padding-top:.5rem;color:var(--olive);font-weight:700;font-size:.85rem}.content-card:hover .content-open{color:var(--smokey)}