.admin-page{background:#eef0ec;min-height:100vh}
.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}
.admin-sidebar{background:var(--forest-950);color:var(--ivory-50);padding:22px 16px;position:sticky;top:0;height:100vh}
.admin-brand{padding:4px 8px 24px}
.admin-brand .brand-word{font-size:15px}
.admin-nav{display:grid;gap:5px}
.admin-nav button{
  text-align:left;border:0;background:transparent;color:rgba(250,248,242,.66);padding:12px 13px;border-radius:11px;font-weight:700;font-size:13px
}
.admin-nav button:hover,.admin-nav button.active{background:rgba(250,248,242,.09);color:var(--ivory-50)}
.admin-main{padding:28px clamp(18px,4vw,44px) 70px;min-width:0}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:26px}
.admin-topbar h1{font-family:var(--display);font-size:38px;font-weight:500;margin:0}
.admin-badge{padding:8px 11px;border-radius:999px;background:#fff2cf;color:#6a5117;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.metric-card{background:white;border-radius:17px;padding:21px;border:1px solid rgba(6,28,22,.08)}
.metric-label{font-size:11px;color:var(--ink-500);font-weight:800}
.metric-value{font-family:var(--display);font-size:38px;margin-top:8px}
.admin-grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-top:14px}
.admin-panel{background:white;border-radius:18px;border:1px solid rgba(6,28,22,.08);padding:20px;min-width:0}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.panel-head h2{font-size:14px;margin:0}
.admin-table-wrap{overflow:auto}
.admin-table{width:100%;border-collapse:collapse;font-size:12px}
.admin-table th{text-align:left;color:var(--ink-500);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:10px;border-bottom:1px solid rgba(6,28,22,.08)}
.admin-table td{padding:12px 10px;border-bottom:1px solid rgba(6,28,22,.07);vertical-align:middle}
.admin-table tr:last-child td{border-bottom:0}
.status-pill{display:inline-flex;padding:6px 8px;border-radius:999px;background:var(--ivory-100);font-size:10px;font-weight:800}
.status-pill.private{background:#e8eee9;color:#274c3d}
.status-pill.new{background:#e7f1ec;color:#1d5f42}
.admin-view{display:none}
.admin-view.active{display:block}
.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.admin-form-grid .full{grid-column:1/-1}
.media-drop{
  border:1.5px dashed rgba(6,28,22,.22);border-radius:16px;padding:22px;text-align:center;background:#f9faf7
}
.media-previews{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}
.media-preview{aspect-ratio:1.3/1;border-radius:12px;overflow:hidden;background:var(--stone-200);position:relative}
.media-preview img{width:100%;height:100%;object-fit:cover}
.media-preview button{position:absolute;right:6px;top:6px;width:28px;height:28px;border-radius:50%;border:0;background:rgba(6,28,22,.8);color:white}
.admin-mobile-bar{display:none}
.toast{
  position:fixed;right:18px;bottom:18px;z-index:220;max-width:360px;
  background:var(--forest-950);color:var(--ivory-50);padding:14px 16px;border-radius:13px;box-shadow:var(--shadow-deep);
  transform:translateY(30px);opacity:0;visibility:hidden;transition:.2s var(--ease);font-size:12px
}
.toast.show{transform:none;opacity:1;visibility:visible}
@media(max-width:1100px){
  .desktop-nav{gap:15px}
  .desktop-nav a{font-size:12px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .properties-grid{grid-template-columns:repeat(2,1fr)}
  .principles{grid-template-columns:repeat(2,1fr)}
  .admin-shell{grid-template-columns:210px 1fr}
  .metric-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:860px){
  .desktop-nav,.nav-actions .btn{display:none}
  .menu-btn{display:grid}
  .nav-wrap{grid-template-columns:auto 1fr auto;min-height:70px}
  .nav-actions{grid-column:3}
  .hero{min-height:88svh}
  .hero-content{padding-bottom:50px}
  .hero-foot{margin-top:44px}
  .search-panel{display:none}
  .mobile-search-trigger{display:flex}
  .search-ribbon{margin-top:-28px}
  .editorial-grid,.private-panel,.concierge-cta,.story-grid,.detail-layout{grid-template-columns:1fr}
  .editorial-side{grid-template-columns:1fr 1fr}
  .private-art{order:-1;min-height:340px}
  .principles{grid-template-columns:1fr 1fr}
  .journal-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .detail-layout{gap:35px}
  .inquiry-card{position:static}
  .story-sticky{position:static}
  .admin-shell{display:block}
  .admin-sidebar{height:auto;position:static;padding:14px}
  .admin-sidebar .admin-nav{display:none}
  .admin-brand{padding:0}
  .admin-main{padding-top:18px}
  .admin-mobile-bar{display:flex;position:sticky;bottom:12px;z-index:80;margin:20px 10px 0;padding:7px;background:rgba(6,28,22,.94);border-radius:16px;box-shadow:var(--shadow-deep);overflow:auto}
  .admin-mobile-bar button{flex:1 1 0;min-width:0;border:0;background:transparent;color:rgba(250,248,242,.62);padding:10px 8px;border-radius:10px;font-size:10px;font-weight:800}
  .admin-mobile-bar button.active{background:rgba(250,248,242,.12);color:white}
  .admin-grid-2{grid-template-columns:1fr}
}
@media(max-width:640px){
  .preview-strip{font-size:9px;min-height:26px}
  .site-header.header-over-hero{top:26px}
  .hero h1{font-size:clamp(43px,13vw,62px)}
  .hero-copy{font-size:16px}
  .hero-actions .btn{width:100%}
  .hero-foot{align-items:flex-end}
  .section{padding:70px 0}
  .section-title-row{align-items:flex-start;flex-direction:column}
  .editorial-grid{display:block}
  .editorial-side{display:grid;grid-template-columns:1fr;margin-top:14px}
  .property-card.large .property-image,.property-card:not(.large) .property-image{aspect-ratio:1.26/1}
  .principles,.service-grid,.properties-grid{grid-template-columns:1fr}
  .principle{min-height:190px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .results-head{align-items:flex-start;flex-direction:column}
  .sort-select{width:100%}
  .detail-media{height:63svh}
  .fact-row{grid-template-columns:1fr 1fr}
  .highlight-list{grid-template-columns:1fr}
  .mobile-inquiry-bar{
    display:grid;grid-template-columns:1fr auto;gap:9px;
    position:fixed;left:12px;right:12px;bottom:12px;z-index:90;
    padding:9px;background:rgba(250,248,242,.96);backdrop-filter:blur(12px);
    border:1px solid rgba(6,28,22,.11);border-radius:16px;box-shadow:var(--shadow-deep)
  }
  .mobile-inquiry-bar small{display:block;color:var(--ink-500);font-size:9px}
  .mobile-inquiry-bar strong{font-size:12px}
  .flow-grid,.admin-form-grid{grid-template-columns:1fr}
  .flow-grid .full,.admin-form-grid .full{grid-column:auto}
  .metric-grid{grid-template-columns:1fr 1fr}
  .media-previews{grid-template-columns:repeat(2,1fr)}
  .admin-topbar{align-items:flex-start;flex-direction:column}
}
@media(max-width:380px){
  .brand-word{font-size:14px;letter-spacing:.12em}
  .brand-mark{width:36px;height:36px}
  .nav-wrap{padding-left:14px;padding-right:14px}
  .hero-content,.container,.detail-top-inner{padding-left:16px;padding-right:16px}
  .hero h1{font-size:42px}
  .metric-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* Secure admin gate */
.admin-auth-gate{
  min-height:100svh;display:grid;place-items:center;padding:24px;
  background:
    radial-gradient(circle at 15% 0%,rgba(185,145,85,.14),transparent 36%),
    var(--forest-950);color:var(--ivory-50)
}
.admin-auth-gate[hidden]{display:none}
.admin-auth-card{
  width:min(460px,100%);padding:clamp(26px,5vw,44px);border-radius:24px;
  background:var(--ivory-50);color:var(--ink-950);box-shadow:var(--shadow-deep)
}
.admin-auth-card .brand{color:var(--forest-950);margin-bottom:38px}
.admin-auth-card h1{font-family:var(--display);font-size:clamp(38px,7vw,54px);font-weight:500;line-height:1;margin:10px 0 12px}
.admin-auth-card>p{color:var(--ink-500);line-height:1.6;margin:0 0 24px}
.admin-auth-card .btn-link{display:inline-flex;margin-top:20px}
.admin-sidebar-status{position:absolute;left:16px;right:16px;bottom:18px;font-size:10px;color:rgba(250,248,242,.45);line-height:1.5}
@media(max-width:860px){.admin-sidebar-status{display:none}}
.dynamic-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(28px,6vw,72px);align-items:start;padding-top:50px}
.dynamic-detail-media{border-radius:26px;overflow:hidden;background:var(--stone-200);aspect-ratio:1.18/1;position:sticky;top:96px}
.dynamic-detail-media img{width:100%;height:100%;object-fit:cover}
.dynamic-detail-copy h1{font-family:var(--display);font-size:clamp(48px,6vw,82px);font-weight:500;line-height:.98;letter-spacing:-.035em;margin:10px 0 12px}
.dynamic-detail-copy .detail-location{color:var(--ink-500);margin-bottom:22px}
.dynamic-detail-copy .property-meta{margin:18px 0 30px}
@media(max-width:860px){.dynamic-detail{grid-template-columns:1fr;padding-top:16px}.dynamic-detail-media{position:static;aspect-ratio:1.05/1}.dynamic-detail-copy h1{font-size:clamp(42px,12vw,64px)}}
