/* Via Sebastiano 2.2.2 — sober, accessible Magic Circle legal-area layout.
   The theme title is hidden ONLY on pages generated and tagged by this plugin.
   The original WordPress page title stays in the database and SEO title. */
body.vsb-managed-area-page .entry-header,
body.vsb-managed-area-page .page-header,
body.vsb-managed-area-page .page-title,
body.vsb-managed-area-page .entry-title,
body.vsb-managed-area-page .wp-block-post-title,
body.vsb-managed-area-page .post-title,
body.vsb-managed-area-page .page-title-wrapper,
body.vsb-managed-area-page .titlebar,
body.vsb-managed-area-page .page-heading {display:none!important;}
/* Remove the blank region often left by the regular theme page heading. */
body.vsb-managed-area-page .entry-content,
body.vsb-managed-area-page .wp-block-post-content{margin-block-start:0!important;padding-block-start:0!important;}
body.vsb-managed-area-page .wp-block-group:has(> .wp-block-post-title){display:none!important;}

.vsb-ap{
  --vsb-bordeaux:#6e3043;--vsb-ink:#252831;--vsb-muted:#535962;--vsb-line:#e4e2df;
  background:#fff;color:var(--vsb-ink);font:400 15px/1.7 "Helvetica Neue",Arial,sans-serif;
  position:relative;left:50%;transform:translateX(-50%);
  width:min(1110px,calc(100vw - 32px));max-width:none;
  margin:0 0 55px;box-sizing:border-box;text-align:left;
}
.vsb-ap *,.vsb-ap *::before,.vsb-ap *::after{box-sizing:border-box}
.vsb-ap a{color:var(--vsb-bordeaux);text-decoration:none}
.vsb-ap a:hover{text-decoration:underline}
.vsb-ap :focus-visible{outline:2px solid var(--vsb-bordeaux);outline-offset:3px}
.vsb-ap-hero{
  background:#faf9f7;border-top:1px solid var(--vsb-line);border-bottom:1px solid var(--vsb-line);
  padding:clamp(24px,3.4vw,43px) clamp(24px,5vw,66px) clamp(27px,3.7vw,48px);
}
.vsb-ap-kicker{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  color:#66626a;font-size:10px!important;font-weight:650!important;
  letter-spacing:.105em;text-transform:uppercase;line-height:1.6;
  margin:0 0 clamp(18px,2.4vw,29px)!important;
}
.vsb-ap-kicker span{white-space:nowrap}
/* One and only one display title: the legal area itself. */
.vsb-ap-hero h1{
  font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif!important;
  font-weight:400!important;font-size:clamp(34px,3.6vw,50px)!important;
  line-height:1.15!important;letter-spacing:-.025em!important;
  max-width:850px;margin:0 0 12px!important;padding:0!important;
  color:var(--vsb-ink)!important;text-transform:none!important;
}
.vsb-ap-subtitle{
  font-family:"Iowan Old Style",Georgia,serif!important;
  color:var(--vsb-bordeaux)!important;
  font-size:clamp(18px,1.7vw,22px)!important;
  line-height:1.4!important;font-weight:400!important;
  margin:0 0 12px!important;max-width:800px;
}
.vsb-ap-lead{
  font-family:"Helvetica Neue",Arial,sans-serif;color:var(--vsb-muted)!important;
  font-size:clamp(14px,1.05vw,16px)!important;line-height:1.75!important;
  max-width:830px;margin:0 0 17px!important;font-weight:400;
}
.vsb-ap-back{font-weight:600;font-size:12px;display:inline-block}
.vsb-ap-main{padding:0 clamp(24px,5vw,66px) 48px}
.vsb-ap-section{
  display:grid;grid-template-columns:45px minmax(0,1fr);
  gap:clamp(16px,2.8vw,28px);border-bottom:1px solid var(--vsb-line);
  padding:clamp(31px,4vw,48px) 0;
}
.vsb-ap-section-num{
  font-family:"Iowan Old Style",Georgia,serif;
  color:var(--vsb-bordeaux);font-size:23px;line-height:1.35;
}
.vsb-ap-section h2,.vsb-ap-other h2{
  font-family:"Iowan Old Style",Georgia,serif!important;
  font-size:clamp(23px,2.2vw,31px)!important;
  line-height:1.28!important;font-weight:400!important;
  margin:0 0 18px!important;color:var(--vsb-ink)!important;letter-spacing:-.013em;
}
.vsb-ap-section p{color:#51545c;max-width:825px;margin:0!important;font-size:15px;line-height:1.8}
.vsb-ap-list,.vsb-ap-docs{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px 30px;list-style:none!important;padding:0!important;margin:0!important;max-width:920px;
}
.vsb-ap-list li,.vsb-ap-docs li{
  border-top:1px solid var(--vsb-line);padding:11px 0 6px;
  line-height:1.65;color:#42464d;font-size:14px;
}
.vsb-ap-list li::before,.vsb-ap-docs li::before{content:'·';color:var(--vsb-bordeaux);font-weight:bold;margin-right:10px}
.vsb-ap-docs{margin-top:22px!important}
.vsb-ap-warning{
  margin-top:28px;padding:18px 21px;border:1px solid var(--vsb-line);
  background:#f8f7f5;color:#5e6169;font-size:12.5px;line-height:1.8;
}
.vsb-ap-footer{
  display:flex;align-items:flex-start;justify-content:space-between;
  gap:30px;border-bottom:1px solid var(--vsb-line);padding:34px 0;
}
.vsb-ap-cta{
  display:inline-flex;align-items:center;background:var(--vsb-bordeaux);
  color:#fff!important;padding:12px 21px;font-size:13px;font-weight:600;
  min-width:190px;justify-content:center;text-align:center;
}
.vsb-ap-cta:hover{text-decoration:none!important;background:#552436}
.vsb-ap-source{max-width:520px;display:grid;gap:5px}
.vsb-ap-source a{font-weight:600;font-size:13px}
.vsb-ap-source small{font-size:11px;color:#6c7076;line-height:1.6}
.vsb-ap-other{padding-top:38px}
.vsb-ap-other>div{display:flex;flex-wrap:wrap;gap:9px}
.vsb-ap-other a{font-size:12px;border:1px solid var(--vsb-line);padding:9px 13px;color:#4c4248}
.vsb-ap-other a:hover{border-color:var(--vsb-bordeaux)}
@media(max-width:720px){
 .vsb-ap{width:min(100%,calc(100vw - 20px));}
 .vsb-ap-hero{padding:23px 20px 30px;}
 .vsb-ap-kicker{font-size:9px!important;letter-spacing:.07em;margin-bottom:20px!important}
 .vsb-ap-hero h1{font-size:clamp(31px,8vw,39px)!important}
 .vsb-ap-subtitle{font-size:18px!important}
 .vsb-ap-lead{font-size:14px!important}
 .vsb-ap-main{padding:0 20px 36px}
 .vsb-ap-section{grid-template-columns:1fr;gap:9px;padding:29px 0}
 .vsb-ap-section-num{font-size:20px}
 .vsb-ap-section h2,.vsb-ap-other h2{font-size:23px!important}
 .vsb-ap-list,.vsb-ap-docs{grid-template-columns:1fr;gap:5px}
 .vsb-ap-footer{flex-direction:column;gap:20px}
}
