/* Public collections and the staff editor share the established site palette. */
[hidden]{display:none!important}
.managed-hero{padding:64px clamp(24px,6vw,88px);color:white;background:linear-gradient(90deg,#142735e8,#20384b99),url('assets/survey-hero.webp') center/cover}
.managed-hero h1{font:400 clamp(2.5rem,5vw,4.4rem)/1.1 var(--display-font);margin:12px 0}
.managed-hero p{max-width:740px;line-height:1.6}.managed-hero .eyebrow{color:var(--accent)}
.managed-content{max-width:1400px;margin:auto;padding:48px clamp(20px,5vw,64px)}
.managed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.managed-card{border:1px solid var(--line);background:var(--white);border-radius:4px;overflow:hidden;min-width:0}
.managed-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.card-body{padding:24px}.card-body h3{font:400 1.7rem/1.2 var(--display-font);color:var(--navy);margin:4px 0 14px}
.card-body p{line-height:1.65}.content-copy,.company-contact p,.footer-notes{white-space:pre-line;overflow-wrap:anywhere}
.card-body .eyebrow{font-size:.7rem;line-height:1.5}.card-body a{color:var(--navy)}.card-body a.button{color:var(--theme-button-text,#fff)}
.project-card details summary{cursor:pointer;color:var(--navy);font-weight:700;padding:14px 0}
.project-photos{display:grid;gap:18px}.project-photos figure{margin:0}.project-photos img{width:100%;height:auto;display:block}.project-photos figcaption{font-size:.85rem;line-height:1.5;margin-top:8px}
.team-card>img{aspect-ratio:4/5;object-position:50% 20%}.portrait-placeholder{aspect-ratio:4/3;display:grid;place-items:center;font:400 4rem var(--display-font);background:var(--navy);color:var(--accent)}
.team-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;border-top:2px solid var(--accent);padding-top:18px;font-size:.86rem}
.team-card dt{font-weight:700;color:var(--navy)}.team-card dd{margin:0;overflow-wrap:anywhere}.team-role{font-size:.88rem;color:var(--muted)}
.site-announcement{padding:16px 24px;background:var(--navy);color:white;text-align:center;white-space:pre-line;line-height:1.5}
.standard-footer{flex-wrap:wrap}.standard-footer .company-contact p{color:#c4c9c6;font-size:.8rem;margin:10px 0 0}.standard-footer .footer-notes{flex-basis:100%;margin:0;color:#c4c9c6;line-height:1.6}.social-links{display:flex;gap:16px;flex-wrap:wrap}
.dashboard-heading{clear:both}.dashboard-heading h2{font:400 2.3rem var(--display-font);color:var(--navy);margin:0}.dashboard-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.dashboard-tabs a{padding:12px 16px;border:1px solid var(--navy);border-radius:3px;text-decoration:none;color:var(--navy);background:var(--white);font-size:.9rem}
.dashboard-tabs a[aria-current=page]{background:var(--navy);color:white}
.portal-main textarea,.portal-main select{display:block;width:100%;font:inherit;border:1px solid #8c979b;border-radius:2px;background:white;color:var(--ink);padding:12px;margin-top:8px;min-height:48px}
.portal-main textarea{resize:vertical;line-height:1.5}.portal-main input[type=color]{height:52px;padding:5px}
.editor-group{border:1px solid var(--line);padding:18px;margin:20px 0}.editor-group summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:1.05rem}
.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.editor-grid>*{min-width:0}.editor-actions,.restore-form{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.editor-thumb{display:block;max-width:100%;width:220px;height:160px;object-fit:contain;background:#eeece6;margin-top:12px;border:1px solid var(--line)}
.photo-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.photo-editor>div{padding:16px;border:1px solid var(--line)}.entry-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:16px 0;overflow-wrap:anywhere}.entry-row span{font-size:.8rem;color:var(--muted)}
.site-preview{display:block;width:100%;max-width:100%;height:780px;background:white;border:1px solid var(--line);margin:20px auto 0}.project-filter{display:block;margin-bottom:24px}.project-filter select{font:inherit;padding:12px;max-width:100%}
.main-nav{flex-wrap:wrap}.hero-copy strong{display:block;margin-bottom:14px}.hero-copy p{margin:0}.portal-main .transfer-settings{margin:20px 0}.portal-main .transfer-settings summary{cursor:pointer}
@media(max-width:1050px){.managed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.managed-grid,.editor-grid,.photo-editor{grid-template-columns:1fr}.managed-content{padding:32px 20px}.managed-hero{padding:38px 24px}.card-body{padding:22px}.dashboard-tabs a{flex:1 1 130px;text-align:center}.entry-row{flex-direction:column;gap:6px}.editor-group{padding:12px}.editor-actions button{flex:1 1 140px}.portal-main section{min-width:0}.hero{min-height:0}.hero h1{font-size:clamp(2.5rem,10vw,4rem)}.hero-content{min-width:0}.site-header{gap:16px}.main-nav{width:100%;gap:12px;justify-content:flex-start}.main-nav a{font-size:.85rem;padding:4px 0}.header-actions{flex-wrap:wrap}.site-footer.standard-footer{flex-direction:column;align-items:flex-start}.team-card dl{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.process{grid-template-columns:repeat(4,minmax(0,1fr))}.public-cta{display:flex;flex-wrap:wrap;gap:14px}.brand-text{overflow-wrap:anywhere}.site-editor .editor-actions{position:sticky;bottom:0;padding:14px;background:var(--white);border-top:1px solid var(--line);z-index:2}
@media(max-width:1050px){.process{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.process{grid-template-columns:1fr}.site-editor .editor-actions{position:static}}

.site-menu{order:3;width:100%;min-width:0}.site-menu>summary{display:none}.site-menu .main-nav{justify-content:center;overflow:visible}
@media(max-width:760px){.site-menu>summary{display:block;cursor:pointer;border:1px solid var(--navy);border-radius:3px;padding:12px 16px;color:var(--navy);font-weight:700}.site-menu .main-nav{display:grid;grid-template-columns:1fr 1fr;padding:14px 0;gap:10px}.site-menu:not([open]) .main-nav{display:none}.site-menu .main-nav a{padding:10px}.site-menu .main-nav a[aria-current=page]{font-weight:700;text-decoration:underline}}
