/* Navigation: the panel is portalled outside the filtered header by experience.js.
   Its fixed positioning must always be relative to the viewport. */
[hidden]{display:none!important}
button,input,select{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #b9987f;outline-offset:5px}
.site-header{background:#171310;transition:background .2s;z-index:50}
.site-header.scrolled{background:#171310;backdrop-filter:none;-webkit-backdrop-filter:none}
.site-header .menu-toggle{display:grid;place-content:center;gap:5px;width:48px;height:48px;cursor:pointer;z-index:52;position:relative}
.menu-toggle span{display:block;width:25px;height:1px;background:#fff;transition:transform .2s}
.menu-toggle.open span:first-child{transform:translateY(3px) rotate(45deg)}
.menu-toggle.open span:last-child{transform:translateY(-3px) rotate(-45deg)}
body>.nav{position:fixed;inset:0 0 0 auto;display:flex!important;flex-direction:column;align-items:stretch;gap:0;width:min(88vw,420px);height:100vh;height:100dvh;min-height:0;max-height:100dvh;padding:94px 28px 32px;background:#211a16!important;color:#fff;z-index:49;overflow-y:auto;overscroll-behavior:contain;opacity:1!important;visibility:hidden!important;pointer-events:none;transform:translateX(102%);clip-path:none;box-shadow:none;transition:transform .25s ease,visibility 0s .25s}
body>.nav.open{visibility:visible!important;pointer-events:auto;transform:none;transition:transform .25s ease,visibility 0s}
body>.nav a{display:block;flex:none;width:100%;padding:14px 4px;font-size:17px;line-height:1.4;border-bottom:1px solid #ffffff20;opacity:1!important}
body>.nav a:hover{color:#dbb89b}
body>.nav .nav-cta{width:auto;margin-top:22px;text-align:center;border:1px solid #b9987f;border-radius:30px;font-size:13px;padding:16px}
.menu-backdrop{position:fixed;inset:0;border:0;background:#0007;z-index:48;cursor:pointer}
body.menu-open{overflow:visible}
.portfolio-intro{font-size:16px;line-height:1.7;color:#695d54;max-width:590px;margin:28px 0 60px}
#portfolio-title{font-size:clamp(36px,5.4vw,78px);line-height:1.06;letter-spacing:-.065em}
.portfolio-gallery{position:relative;perspective:1200px;min-height:420px;margin:20px 0 54px}
.portfolio-empty{min-height:420px;border:1px solid #cdbdaf;background:#ece5dc;color:#49382f;display:grid;place-content:center;text-align:center;padding:48px;box-shadow:24px 24px 0 #e1d7cb,-16px -16px 0 #f0e9df}
.portfolio-empty span{font:11px var(--mono);letter-spacing:.2em}
.portfolio-empty h3{font-size:clamp(28px,4vw,50px);letter-spacing:-.06em;max-width:580px;margin:22px auto}
.portfolio-empty p{font-size:14px;line-height:1.7;max-width:450px;margin:auto}
.portfolio-actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px}
.portfolio-photo{width:78%;margin:70px 0 100px;opacity:1}
.portfolio-photo:nth-child(even){width:64%;margin-left:auto}
.portfolio-photo.is-featured .photo-button{opacity:1}
.portfolio-photo button{transform:translateY(var(--drift,0px));transition:opacity .4s;opacity:.8;display:block;width:100%;padding:0;border:0;background:#211a16;cursor:zoom-in;box-shadow:0 30px 60px #49382f33}
.portfolio-photo img{width:100%;height:auto;max-height:75vh;object-fit:contain;display:block}
.portfolio-photo figcaption{padding:18px 0;font-size:13px;line-height:1.7;color:#49382f}
.portfolio-photo figcaption strong{display:block;font-size:22px}
#photo-viewer{border:0;background:#171310;color:#fff;max-width:94vw;max-height:94dvh;padding:52px 20px 22px}
#photo-viewer::backdrop{background:#000e}
#photo-large{display:block;max-width:85vw;max-height:72dvh;object-fit:contain;margin:auto}
.photo-close{position:absolute;right:10px;top:4px;color:white;background:none;border:0;font-size:36px;cursor:pointer;width:44px;height:44px}
#photo-caption{font-size:14px}#photo-original{font-size:12px;text-decoration:underline}
.radar-filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:16px;margin-bottom:24px}
.radar-filters label{font-size:12px;display:flex;flex-direction:column;gap:10px;color:#d2c2b4}
.radar-filters input,.radar-filters select{min-width:0;width:100%;padding:14px 12px;border:1px solid #746155;background:#211a16;color:white;border-radius:4px;font-size:14px}
.radar-meta{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#c5b5a8;line-height:1.6}
#radar-grid{border:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:20px}
#radar-grid .radar-card{display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:28px;border:1px solid #6c5749;background:#211a16;transition:border-color .2s}
#radar-grid .radar-card:hover{padding:28px;border-color:#cfb399}
#radar-grid h3{font-size:26px;line-height:1.2}
#radar-grid p{display:block;line-height:1.7;margin:0;color:#d2c2b4;font-size:13px}
.radar-badges{display:flex;flex-wrap:wrap;gap:8px;font:10px var(--mono)}
.radar-badges span{border:1px solid #746155;padding:7px 9px;border-radius:3px}
.radar-badges .open{background:#e9dbc8;color:#211a16;border-color:#e9dbc8}
.radar-badges .soon{background:#eab47a;color:#211a16}
.radar-badge{align-self:flex-start;border:1px solid #746155;padding:7px 9px;border-radius:3px;font-size:11px}
.radar-badge.open{background:#e9dbc8;color:#211a16}.radar-badge.soon{background:#eab47a;color:#211a16}
.radar-details{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:12px;margin:0}
.radar-details dt{color:#bda48f;font-size:10px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}
.radar-details dd{margin:0;line-height:1.6;overflow-wrap:anywhere}
.radar-details .wide{grid-column:1/-1}
.radar-source{margin-top:auto;align-self:flex-start;line-height:1.6}
.radar-verified{font:10px var(--mono);color:#bda48f}
.radar-empty{grid-column:1/-1;border:1px solid #6c5749;padding:35px;text-align:center;color:#d2c2b4}
.radar-sources{margin-top:40px;padding-top:20px;border-top:1px solid #746155;font-size:13px;line-height:1.7}
.radar-sources summary{cursor:pointer}.radar-sources a{display:block;text-decoration:underline;margin:12px 0;color:#d2c2b4}
@media(max-width:760px){.portfolio-gallery{min-height:300px}.portfolio-empty{min-height:300px;padding:32px 20px;box-shadow:10px 10px 0 #e1d7cb,-8px -8px 0 #f0e9df}.portfolio-photo,.portfolio-photo:nth-child(even){width:100%;margin:42px 0}.radar-filters{grid-template-columns:1fr 1fr}.radar-search{grid-column:1/-1}.radar-meta{display:block}#radar-grid{grid-template-columns:1fr}.portfolio-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.portfolio-photo .photo-button{transform:none!important;opacity:1}}
