:root{
  --brief-blue:#1D4ED8;
  --brief-blue-bright:#7EAAFF;
  --brief-navy:#0A1B45;
  --brief-paper:#FFFFFF;
  --brief-bg:#E9EEF6;
  --brief-ink:#101828;
  --brief-muted:rgba(16,24,40,.55);
  --brief-line:rgba(16,24,40,.13);
}

body{background:var(--brief-bg);}

.doc-bar{
  position:sticky; top:0; z-index:40;
  background:rgba(233,238,246,.9); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.doc-bar .inner{
  max-width:900px; margin:0 auto; padding:14px 20px;
  display:flex; justify-content:space-between; align-items:center; gap:18px;
}
.doc-actions{display:flex; align-items:center; gap:14px;}
.doc-bar .back{font-size:.86rem; color:var(--ink-60); text-decoration:none;}
.doc-bar .back:hover{color:var(--ink);}

.brief{max-width:900px; margin:0 auto; padding:28px 20px 80px;}
.brief-page{
  min-height:1080px; margin-bottom:22px; padding:58px 62px 42px;
  display:flex; flex-direction:column; position:relative; overflow:hidden;
  background:var(--brief-paper); color:var(--brief-ink);
  border:1px solid var(--brief-line); border-radius:18px;
  box-shadow:0 16px 38px -28px rgba(16,24,40,.45);
}
.brief-page--blue{
  color:#fff; border-color:transparent;
  background:
    radial-gradient(circle at 88% 12%,rgba(126,170,255,.27),transparent 34%),
    linear-gradient(145deg,#2F6FED 0%,#1D4ED8 44%,#0A1B45 100%);
}
.brief-kicker{
  margin-bottom:38px; color:var(--brief-blue);
  font:600 .72rem/1.3 'IBM Plex Mono',monospace;
  letter-spacing:.08em; text-transform:uppercase;
}
.brief-page--blue .brief-kicker{color:#CADDFF;}
.brief-title{font-size:clamp(2.4rem,5vw,4rem); line-height:1.02; font-weight:500; letter-spacing:-.035em;}
.brief-title--compact{max-width:620px; font-size:clamp(2.25rem,4vw,3.3rem);}
.brief-subtitle{margin-top:17px; color:var(--brief-muted); font-size:1rem; line-height:1.55;}
.brief-page--blue .brief-subtitle{color:rgba(255,255,255,.67);}

.object-meta{display:flex; gap:9px; flex-wrap:wrap; margin-top:20px;}
.object-meta span{
  padding:7px 10px; border:1px solid rgba(255,255,255,.22); border-radius:100px;
  color:rgba(255,255,255,.76); font:.75rem/1 'IBM Plex Mono',monospace;
}
.score-block{display:flex; align-items:flex-end; gap:24px; margin-top:82px;}
.score{font-size:5.4rem; line-height:.82; font-weight:500; letter-spacing:-.06em;}
.score small{font-size:1rem; color:rgba(255,255,255,.55); letter-spacing:0;}
.grade{margin-top:32px; color:#DCE9FE; font-size:1.15rem; font-weight:700; letter-spacing:.03em;}
.brief-rule{height:1px; margin:54px 0 34px; background:rgba(255,255,255,.26);}

.metric-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.metric-card{
  min-height:132px; padding:16px; border:1px solid var(--brief-line); border-radius:10px;
  background:rgba(247,249,252,.8);
}
.brief-page--blue .metric-card{border-color:rgba(255,255,255,.25); background:rgba(5,21,58,.18);}
.metric-label{
  color:var(--brief-blue); font:600 .68rem/1.3 'IBM Plex Mono',monospace;
  letter-spacing:.05em; text-transform:uppercase;
}
.brief-page--blue .metric-label{color:#CADDFF;}
.metric-value{margin-top:8px; font-size:1.72rem; font-weight:600; letter-spacing:-.025em;}
.metric-note{margin-top:23px; color:var(--brief-muted); font-size:.73rem; line-height:1.45;}
.brief-page--blue .metric-note{color:rgba(255,255,255,.58);}

.verdict-line{margin-top:42px;}
.section-label{
  margin-bottom:22px; color:var(--brief-blue);
  font:600 .68rem/1.3 'IBM Plex Mono',monospace;
  letter-spacing:.06em; text-transform:uppercase;
}
.brief-page--blue .section-label{color:#CADDFF;}
.verdict-line p{max-width:670px; font-size:1rem; line-height:1.65; color:rgba(255,255,255,.78);}

.compare-table{width:100%; margin-top:66px; border-collapse:collapse; table-layout:fixed;}
.compare-table th,.compare-table td{padding:20px 12px; border-bottom:1px solid var(--brief-line); text-align:right; font-variant-numeric:tabular-nums;}
.compare-table th:first-child,.compare-table td:first-child{padding-left:0; text-align:left;}
.compare-table th{
  color:var(--brief-muted); font:600 .68rem/1.3 'IBM Plex Mono',monospace;
  letter-spacing:.04em; text-transform:uppercase;
}
.compare-table th.property{color:var(--brief-blue);}
.compare-table td{font-size:1.12rem;}
.compare-table td:first-child{color:var(--brief-muted); font-size:.88rem;}
.compare-table td.property{color:var(--brief-blue); font-weight:700;}
.economics-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:72px;}
.economics-card{padding:22px; border:1px solid var(--brief-line); border-radius:12px;}
.economics-card .metric-value{font-size:2.2rem;}

.signal-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:50px;}
.signal-card{padding:18px; border:1px solid var(--brief-line); border-radius:10px;}
.signal-card .metric-value{font-size:2rem;}
.signal-card .metric-note{margin-top:22px;}
.signal-copy{margin:44px 0 36px; padding-bottom:38px; border-bottom:1px solid var(--brief-line);}
.signal-copy strong{display:block; font-size:1.45rem; font-weight:500; letter-spacing:-.02em;}
.signal-copy p{margin-top:12px; color:var(--brief-muted); font-size:.9rem; line-height:1.55;}
.location-head{display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:20px;}
.location-head h2{font-size:1.8rem; font-weight:500; letter-spacing:-.02em;}
.location-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.mini-location{margin-top:18px; border:1px solid var(--brief-line); border-radius:12px; overflow:hidden;}
.mini-location iframe{display:block; width:100%; height:245px; border:0; filter:saturate(.82);}

.decision-title{max-width:620px; font-size:clamp(3.1rem,7vw,5.6rem); line-height:1.05; font-weight:500; letter-spacing:-.045em; text-transform:uppercase;}
.reality{margin-top:78px;}
.reality-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.reality-item{padding-bottom:28px; border-bottom:1px solid rgba(255,255,255,.25);}
.reality-name{color:rgba(255,255,255,.55); font-size:.78rem;}
.reality-value{margin-top:17px; font-size:2rem; font-weight:500;}
.reality-item.is-primary .reality-value{color:#CADDFF;}
.checklist{margin-top:54px;}
.checklist ol{list-style:none; margin:0; padding:0; counter-reset:item;}
.checklist li{
  counter-increment:item; display:grid; grid-template-columns:42px 1fr; gap:10px;
  padding:15px 0; color:rgba(255,255,255,.82); font-size:.92rem; line-height:1.45;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.checklist li::before{content:"0" counter(item); color:#CADDFF; font-family:'IBM Plex Mono',monospace;}

.brief-footer{display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:40px;}
.brief-footer .logo-wordmark{width:72px;}
.brief-page--blue .brief-footer .logo-wordmark{filter:invert(1);}
.page-number{color:var(--brief-muted); font:.7rem/1 'IBM Plex Mono',monospace;}
.brief-page--blue .page-number{color:rgba(255,255,255,.55);}
.method-note{margin-top:28px; color:rgba(255,255,255,.52); font-size:.72rem; line-height:1.55;}

@media (max-width:760px){
  .doc-bar .inner{padding:12px 16px;}
  .doc-actions{gap:9px;}
  .doc-bar .back{font-size:.78rem;}
  .brief{padding:16px 12px 48px;}
  .brief-page{min-height:auto; padding:34px 24px 28px; border-radius:14px;}
  .brief-kicker{margin-bottom:28px;}
  .score-block{margin-top:54px;}
  .score{font-size:4.5rem;}
  .metric-grid,.signal-grid,.location-cards{grid-template-columns:1fr;}
  .metric-card{min-height:auto;}
  .metric-note{margin-top:12px;}
  .economics-grid,.reality-grid{grid-template-columns:1fr;}
  .economics-grid{margin-top:38px;}
  .compare-table{margin-top:38px;}
  .compare-table th,.compare-table td{padding:16px 6px; font-size:.86rem;}
  .compare-table td:first-child{font-size:.75rem;}
  .reality{margin-top:52px;}
  .brief-footer{margin-top:48px;}
}

@media print{
  @page{size:A4; margin:0;}
  body{background:#fff;}
  .doc-bar{display:none;}
  .brief{max-width:none; padding:0;}
  .brief-page{
    width:210mm; min-height:297mm; margin:0; padding:16mm 17mm 12mm;
    border:0; border-radius:0; box-shadow:none; break-after:page; page-break-after:always;
  }
  .brief-page:last-child{break-after:auto; page-break-after:auto;}
  .brief-page--blue{-webkit-print-color-adjust:exact; print-color-adjust:exact;}
}
