:root{
  --s-bg:#f5eee4;
  --s-ink:#20242b;
  --s-muted:#6f675f;
  --s-panel:#fff8ef;
  --s-line:#dcc4a3;
  --s-accent:#8f3125;
  --s-accent-2:#c76f45;
  --s-soft:#f2e3cf;
}
html,body{background:linear-gradient(180deg,#fff8ee 0%,#f5eee4 56%,#eedcc8 100%);color:var(--s-ink)}
.srv-shell{max-width:1180px;margin:0 auto;padding:0 18px 40px}
.srv-hero,.srv-card,.srv-panel{background:var(--s-panel);border:1px solid var(--s-line);border-radius:26px;box-shadow:0 24px 44px rgba(82,46,20,.08)}
.srv-hero{padding:26px;display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:24px}
.srv-card,.srv-panel{padding:20px}
.srv-eyebrow{font:700 12px/1 "Segoe UI",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--s-accent-2)}
.srv-title{margin:10px 0 10px;font-size:42px;line-height:1.03}
.srv-copy{margin:0;color:var(--s-muted)}
.srv-actions,.srv-grid,.srv-meta,.srv-tabs,.srv-tools{display:flex;gap:12px;flex-wrap:wrap}
.srv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:18px}
.srv-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:999px;border:1px solid var(--s-line);background:var(--s-soft);color:var(--s-ink);font:700 14px/1 "Segoe UI",sans-serif;text-decoration:none}
.srv-btn.primary{background:linear-gradient(135deg,var(--s-accent) 0%,var(--s-accent-2) 100%);border-color:transparent;color:#fff}
.srv-tab{padding:10px 14px;border-radius:999px;border:1px solid var(--s-line);background:rgba(255,248,239,.84);font:700 13px/1 "Segoe UI",sans-serif;color:var(--s-ink);text-decoration:none}
.srv-tab.active{background:linear-gradient(135deg,var(--s-accent) 0%,var(--s-accent-2) 100%);border-color:transparent;color:#fff}
.srv-input,.srv-select,.srv-textarea{width:100%;padding:11px 13px;border-radius:16px;border:1px solid var(--s-line);background:#fff;color:var(--s-ink);font:14px/1.5 "Segoe UI",sans-serif}
.srv-item{padding:18px;border-radius:22px;background:#fffdf9;border:1px solid var(--s-line)}
.srv-item h3{margin:10px 0 8px;font-size:22px;overflow-wrap:anywhere}
.srv-meta{color:var(--s-muted);font:600 13px/1.4 "Segoe UI",sans-serif}
.srv-pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:var(--s-soft);border:1px solid var(--s-line);font:700 12px/1 "Segoe UI",sans-serif;color:var(--s-accent)}
.srv-empty{padding:28px;border-radius:24px;border:1px dashed var(--s-line);background:rgba(255,248,239,.72);text-align:center;color:var(--s-muted);margin-top:18px}
/* editorial_shell.css sets ".eg-page a{color:inherit}", which beats .srv-btn/.srv-tab
   and lets a dark hero turn button text white-on-cream. Re-assert at .eg-page level. */
.eg-page .srv-btn,.eg-page .srv-tab{color:var(--s-ink)}
.eg-page .srv-btn.primary,.eg-page .srv-tab.active{color:#fff}
/* Photo hero: the page passes --srv-hero-img as an absolute url() (pretty URLs are multi-segment). */
.srv-hero--photo{padding:42px 28px;border-radius:18px;color:#fff;background:linear-gradient(90deg,rgba(18,12,8,.82),rgba(18,12,8,.22)),var(--srv-hero-img) center/cover}
.srv-hero--photo > div{text-shadow:0 1px 12px rgba(0,0,0,.35)}
.srv-hero--photo > div .srv-eyebrow{color:#f4c86d}
.srv-hero--photo > div .srv-title{color:#fff}
.srv-hero--photo > div .srv-copy{color:rgba(255,255,255,.86)}
.srv-hero--photo .srv-btn{text-shadow:none}
.srv-hero--photo .srv-card{color:var(--s-ink)}
.srv-glance{align-self:center}
.srv-glance dl{display:grid;margin:12px 0 0}
.srv-glance dl div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--s-line)}
.srv-glance dl div:last-child{border-bottom:0}
.srv-glance dt{color:var(--s-muted);font:700 12px/1.5 "Segoe UI",sans-serif;letter-spacing:.06em;text-transform:uppercase}
.srv-glance dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.srv-location{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:20px;align-items:center}
.srv-location h2{margin:8px 0 8px;font-size:28px}
.srv-location__map{min-height:360px;overflow:hidden;border:1px solid var(--s-line);border-radius:18px;background:var(--s-soft)}
.srv-location__map iframe{display:block;width:100%;height:360px;border:0}
.srv-share{display:flex;align-items:center;justify-content:space-between;gap:20px}
.srv-share h2{margin:8px 0 6px;font-size:26px}
.srv-share .srv-actions{justify-content:flex-end}
.srv-share button{cursor:pointer}
@media (max-width:900px){
  .srv-hero{grid-template-columns:1fr}
  .srv-hero--photo{background:linear-gradient(180deg,rgba(18,12,8,.84),rgba(18,12,8,.6)),var(--srv-hero-img) center/cover}
  .srv-title{font-size:34px}
  .srv-location{grid-template-columns:1fr}
  .srv-location__map,.srv-location__map iframe{min-height:320px;height:320px}
  .srv-share{align-items:flex-start;flex-direction:column}
  .srv-share .srv-actions{justify-content:flex-start}
}
