/* Isolated prototype components inside the existing WordPress page shell. */
.preview-hero :where(.concept) {
  --ink: #182f40;
  --blue: #235bc6;
  --paper: #f8f8f3;
  --muted: #4b6070;
  --edge: #d5dfe4;
  position: relative;
  isolation: isolate;
  color: var(--ink);
  font-family: Manrope, Arial, sans-serif;
  font-size: 16px;
  line-height: normal;
  font-synthesis: none;
}
.preview-hero :where(.concept, .concept *) { box-sizing: border-box; }
.preview-hero :where(.concept) img { display: block; max-width: 100%; }
.preview-hero :where(.concept) a { color: inherit; text-underline-offset: 5px; }
.preview-hero :where(.concept) button { font: inherit; cursor: pointer; }
.preview-hero :where(.concept) :where(button, a) { touch-action: manipulation; }
.preview-hero :where(.concept) :where(h1, h2, h3, p, figure) { margin: 0; }
.preview-hero :where(.concept) :where(h1, h2, h3) { text-wrap: balance; }
.preview-hero :where(.concept) h1 {
  font-size: clamp(46px, 6vw, 84px);
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: -.055em;
}
.preview-hero :where(.concept) p { font-size: 19px; line-height: 1.55; text-wrap: pretty; }
.preview-hero :where(.concept) :where(a, button, summary):focus-visible {
  outline: 3px solid #1c66df;
  outline-offset: 5px;
}
.preview-hero :where(.concept) :where(a, button):active { transform: translateY(1px); }
.preview-hero :where(.concept) [hidden] { display: none !important; }
.preview-hero :where(.concept) .hero-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin: 0;
}
.preview-hero .hero-button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 52px;
  gap: 16px;
  padding: 14px 24px;
  background: var(--blue);
  color: #fff;
  border: 1px solid transparent;
  border-radius: 3px;
  text-decoration: none;
  font-size: 17px;
  font-weight: 600;
  line-height: normal;
  transition: background .18s, transform .18s;
}
.preview-hero .hero-button:hover { background: #15499f; }
.preview-hero .hero-link {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  font-size: 17px;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}
.preview-hero .hero-link:hover { text-decoration-thickness: 2px; }
.preview-hero .report-object {
  width: 340px;
  max-width: 100%;
  padding: 24px;
  background: #fff;
  color: var(--ink);
  border: 1px solid #d7e0e5;
  box-shadow: 0 16px 40px #142c4214;
  text-align: left;
}
.preview-hero .report-object-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 22px;
}
.preview-hero .report-object-top img { width: 130px; height: auto; }
.preview-hero .report-object-top span { font-size: 16px; color: #566874; }
.preview-hero .report-object-title {
  display: block;
  font-size: 32px;
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -.045em;
  margin-bottom: 18px;
}
.preview-hero .report-object-photo { width: 100%; height: 134px; object-fit: cover; margin-bottom: 14px; }
.preview-hero .report-object-rows { display: grid; }
.preview-hero .report-object-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid #e5eaec;
  font-size: 16px;
  line-height: 1.35;
}
.preview-hero .report-object-row:last-child { border: 0; }
.preview-hero .report-object-row strong { font-weight: 500; }
.preview-hero .report-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  font-size: 16px;
  color: #286247;
}
.preview-hero .report-status.warning { color: #93600d; }
.preview-hero .status-icon {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex-shrink: 0;
}

@media (max-width: 680px) {
  .preview-hero :where(.concept) h1 { font-size: clamp(39px, 11vw, 56px); }
  .preview-hero :where(.concept) p { font-size: 17px; }
  .preview-hero .hero-button { font-size: 16px; min-height: 50px; padding: 13px 20px; }
  .preview-hero .hero-link { font-size: 16px; }
  .preview-hero :where(.concept) .hero-actions { gap: 14px 20px; }
  .preview-hero .report-object { padding: 18px; }
  .preview-hero .report-object-top { margin-bottom: 16px; }
  .preview-hero .report-object-top img { width: 118px; }
  .preview-hero .report-object-title { font-size: 30px; }
  .preview-hero .report-object-photo { height: 116px; }
}

/* Restore the original hero where later WordPress refinements share its classes. */
.preview-hero.preview-original {
  --ink: #182b3b;
  --muted: #53616d;
  --blue: #235bba;
  --blue-hover: #174892;
  --line: #dce3e8;
  --tint: #e9f0f7;
  font: 16px/1.65 Manrope, Arial, sans-serif;
}
.preview-hero.preview-original .hero { gap: 48px; padding-top: 25px; padding-bottom: 52px; }
.preview-hero.preview-original .hero-copy { padding: 14px 0 30px; }
.preview-hero.preview-original .intro-label { font-size: 12px; letter-spacing: normal; margin-bottom: 28px; }
.preview-hero.preview-original .hero h1 {
  font-size: clamp(44px, 4.75vw, 70px);
  line-height: 1.105;
  letter-spacing: -3.15px;
  font-weight: 500;
  max-width: none;
  margin: 0 0 24px;
  text-wrap: wrap;
}
.preview-hero.preview-original .hero-description { font-size: 16px; line-height: 1.8; max-width: 427px; }
.preview-hero.preview-original .hero-actions { align-items: center; flex-direction: row; gap: 24px; margin-top: 30px; }
.preview-hero.preview-original .hero-actions .button { gap: 16px; padding-inline: 19px; font-size: 13px; border-radius: 7px; }
.preview-hero.preview-original .hero-actions .text-link { font-size: 13px; gap: 9px; }
.preview-hero.preview-original .hero-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 7px;
  font-size: 12px;
  line-height: 1.65;
  margin-top: 29px;
}
.preview-hero.preview-original .hero-price strong { font-size: 21px; letter-spacing: -.65px; font-weight: 600; margin-right: 0; }
.preview-hero.preview-original .hero-price small { display: block; flex-basis: 100%; font-size: 11px; line-height: inherit; margin-top: -3px; }
.preview-hero.preview-original .hero-visual { height: 585px; margin-left: 9px; }
.preview-hero.preview-original .hero-report {
  bottom: 28px;
  left: -43px;
  width: 305px;
  padding: 22px 23px 0;
  border-radius: 9px;
  box-shadow: 0 9px 38px #192c3d26;
}
@media (max-width: 1180px) {
  .preview-hero.preview-original .hero { gap: 30px; }
  .preview-hero.preview-original .hero-visual { height: 540px; }
  .preview-hero.preview-original .hero h1 { font-size: 52px; letter-spacing: -2.6px; }
  .preview-hero.preview-original .hero-description { font-size: 14px; }
  .preview-hero.preview-original .hero-actions { gap: 15px; }
  .preview-hero.preview-original .hero-actions .button { font-size: 12px; padding-inline: 13px; gap: 12px; }
  .preview-hero.preview-original .hero-actions .text-link { font-size: 12px; }
  .preview-hero.preview-original .hero-report { width: 280px; left: -24px; padding-inline: 18px; }
}
@media (max-width: 960px) {
  .preview-hero.preview-original .hero { padding-top: 17px; gap: 30px; }
  .preview-hero.preview-original .hero-visual { height: 510px; }
  .preview-hero.preview-original .hero h1 { font-size: 46px; letter-spacing: -2.2px; }
  .preview-hero.preview-original .hero-copy { padding-top: 3px; }
  .preview-hero.preview-original .intro-label { font-size: 10px; margin-bottom: 25px; }
  .preview-hero.preview-original .hero-actions { align-items: flex-start; gap: 10px; flex-direction: column; }
  .preview-hero.preview-original .hero-price { margin-top: 20px; }
  .preview-hero.preview-original .hero-price strong { font-size: 19px; }
  .preview-hero.preview-original .hero-report { width: 250px; padding: 16px 16px 0; bottom: 20px; left: -20px; }
}
@media (max-width: 760px) {
  .preview-hero.preview-original .hero { gap: 22px; padding-top: 22px; padding-bottom: 35px; }
  .preview-hero.preview-original .hero-copy { padding: 0 2px; }
  .preview-hero.preview-original .intro-label { font-size: 11px; margin-bottom: 24px; }
  .preview-hero.preview-original .hero h1 { font-size: clamp(43px, 8.6vw, 65px); letter-spacing: -2.5px; line-height: 1.1; margin-bottom: 22px; }
  .preview-hero.preview-original .hero-description { font-size: 14px; line-height: 1.8; max-width: 480px; }
  .preview-hero.preview-original .hero-actions { margin-top: 25px; flex-direction: row; align-items: center; gap: 20px; }
  .preview-hero.preview-original .hero-actions .button { font-size: 12px; padding: 16px; }
  .preview-hero.preview-original .hero-actions .text-link { font-size: 12px; }
  .preview-hero.preview-original .hero-price { margin-top: 22px; font-size: 11px; }
  .preview-hero.preview-original .hero-price strong { font-size: 21px; }
  .preview-hero.preview-original .hero-price small { font-size: 10px; }
  .preview-hero.preview-original .hero-visual { height: 450px; max-height: none; margin: 18px 0 0; }
  .preview-hero.preview-original .hero-report { left: 17px; bottom: 20px; width: 265px; padding: 18px 19px 0; }
}
@media (max-width: 390px) {
  .preview-hero.preview-original .hero-actions { gap: 13px; }
  .preview-hero.preview-original .hero-actions .button { padding-inline: 12px; gap: 9px; font-size: 11px; }
  .preview-hero.preview-original .hero-actions .text-link { font-size: 11px; gap: 6px; }
  .preview-hero.preview-original .hero h1 { font-size: 42px; letter-spacing: -2.2px; }
  .preview-hero.preview-original .hero-visual { height: 405px; }
}
@media (prefers-reduced-motion: reduce) {
  .preview-hero :where(.concept, .concept *, .concept *::before, .concept *::after) {
    animation: none !important;
    transition: none !important;
  }
  .preview-hero.preview-original .hero-report:hover { transform: none; }
}

.hero-01{position:relative;isolation:isolate;background:#142e3d;color:#fff;overflow:hidden}
.hero-01 .hero-01-scene{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 57%;filter:saturate(.72)}
.hero-01::before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(13,35,49,.94) 0%,rgba(13,35,49,.83) 31%,rgba(13,35,49,.24) 73%,rgba(13,35,49,.09)),linear-gradient(0deg,rgba(13,35,49,.8),transparent 53%)}
.hero-01 .hero-01-inner{position:relative;max-width:1440px;margin:0 auto;padding:74px 72px 34px;min-height:744px;display:flex;flex-direction:column}
.hero-01 .hero-01-copy{position:relative;z-index:1;max-width:710px}
.hero-01 h1{margin:0;color:#fff;font-size:clamp(60px,6.3vw,91px);font-weight:500;line-height:1.04;letter-spacing:-.055em;text-wrap:balance}
.hero-01 .hero-01-intro{max-width:555px;margin:27px 0 29px;font-size:21px;line-height:1.55;color:#f1f5f6}
.hero-01 .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 27px}
.hero-01 .hero-button{background:#fff;color:#17354b;min-height:58px;border-radius:4px;padding:16px 23px;font-size:18px;box-shadow:0 4px 20px #11273420}
.hero-01 .hero-button:hover{background:#e8f0ff;color:#143b76}
.hero-01 .hero-link{color:#fff;font-size:18px;text-underline-offset:6px;text-decoration-color:#ffffff7a}
.hero-01 .hero-01-ground{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:auto;padding-top:36px}
.hero-01 .hero-01-scope{padding-bottom:7px}
.hero-01 .hero-01-business{align-self:flex-start;font-size:18px;line-height:1.5;color:#fff;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#ffffff60;display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-top:12px}
.hero-01 .hero-01-scope p{font-size:23px;line-height:1.5;font-weight:400;margin:0 0 25px;color:#f0f4f4}
.hero-01 .hero-01-scope a{font-size:18px;line-height:1.5;color:#fff;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#ffffff60;display:inline-block;padding:6px 0}
.hero-01 .hero-01-document{position:absolute;right:78px;bottom:32px;width:265px;isolation:isolate;color:#182f40}
.hero-01 .hero-01-cover{position:relative;z-index:2;transform:rotate(-4deg)}
.hero-01 .hero-01-paper{position:absolute;inset:0;border:1px solid #c8d3da;box-shadow:0 9px 22px #07172235;pointer-events:none}
.hero-01 .hero-01-paper-back{z-index:0;background:#b9cbd5;transform:translateX(10px) rotate(9deg)}
.hero-01 .hero-01-paper-middle{z-index:1;background:#edf0ee;transform:translateX(4px) rotate(3deg)}
.hero-01 .hero-01-document .report-object{width:100%;box-shadow:0 18px 52px #0717226b}
.hero-01 .report-object{padding:20px}
.hero-01 .report-object-top{gap:10px;margin-bottom:20px}
.hero-01 .report-object-top img{width:100px}
.hero-01 .report-object-title{font-size:30px;margin-bottom:16px}
.hero-01 .report-object-photo{height:120px;margin:0}
.hero-01 .report-object-rows{display:none}
.hero-01 .hero-01-document>p{color:#fff;font-size:16px;line-height:1.5;margin:17px -20px 0;text-align:center;transform:rotate(-3deg)}
.hero-01 a:focus-visible{outline:3px solid #fff;outline-offset:6px}
@media(min-width:1600px){.hero-01 .hero-01-scene{object-position:center 59%}}
@media(max-width:1100px){.hero-01 .hero-01-inner{padding:62px 44px 32px;min-height:750px}.hero-01 h1{font-size:74px}.hero-01 .hero-01-intro{max-width:520px;font-size:20px}.hero-01 .hero-01-document{right:48px;width:220px}.hero-01 .hero-01-scope{max-width:340px}}
@media(max-width:760px){.hero-01 .hero-01-inner{padding:43px 26px 29px;min-height:0}.hero-01 .hero-01-scene{object-position:62% center}.hero-01::before{background:linear-gradient(180deg,rgba(13,35,49,.94),rgba(13,35,49,.79) 39%,rgba(13,35,49,.37) 70%,rgba(13,35,49,.89))}.hero-01 h1{font-size:clamp(43px,8.3vw,62px);line-height:1.08;letter-spacing:-.045em}.hero-01 .hero-01-intro{max-width:540px;font-size:18px;line-height:1.55;margin:23px 0 25px}.hero-01 .hero-actions{gap:18px}.hero-01 .hero-button{font-size:17px;min-height:54px;padding:15px 20px}.hero-01 .hero-link{font-size:17px;min-height:44px;display:inline-flex;align-items:center;gap:9px}.hero-01 .hero-01-ground{margin-top:30px;padding-top:0;gap:22px;min-height:300px}.hero-01 .hero-01-document{position:relative;right:auto;bottom:auto;flex-shrink:0;width:190px;margin:0 7px 8px 0}.hero-01 .hero-01-document>p{margin:15px -3px 0;font-size:16px;text-align:left}.hero-01 .hero-01-scope{max-width:210px;padding-bottom:8px}.hero-01 .hero-01-scope p{font-size:18px;margin-bottom:18px}.hero-01 .hero-01-scope a{font-size:16px;line-height:1.5}.hero-01 .hero-01-scope a span{white-space:nowrap}}
@media(max-width:400px){.hero-01 .hero-01-inner{padding:37px 22px 23px}.hero-01 h1{font-size:clamp(39px,11.2vw,44px)}.hero-01 .hero-01-intro{font-size:17px;line-height:1.55;margin-top:22px}.hero-01 .hero-actions{gap:11px;align-items:flex-start;flex-direction:column}.hero-01 .hero-01-ground{gap:14px;margin-top:23px;min-height:290px}.hero-01 .hero-01-document{width:166px;margin-right:4px}.hero-01 .hero-01-scope p{font-size:17px}.hero-01 .hero-01-scope a{font-size:16px}.hero-01 .hero-01-document>p{font-size:16px}}
@media(max-width:1100px){.hero-01 .report-object{padding:17px}.hero-01 .report-object-top{gap:8px}.hero-01 .report-object-top img{width:85px}.hero-01 .report-object-photo{height:108px}}
@media(max-width:760px){.hero-01 .report-object{padding:14px}.hero-01 .report-object-top{gap:6px;margin-bottom:16px}.hero-01 .report-object-top img{width:69px}.hero-01 .report-object-title{font-size:26px;line-height:1.1;margin-bottom:13px}.hero-01 .report-object-photo{height:100px}}
@media(max-width:400px){.hero-01 .report-object{padding:12px}.hero-01 .report-object-top img{width:60px}.hero-01 .report-object-top{gap:5px;margin-bottom:15px}.hero-01 .report-object-title{font-size:24px}.hero-01 .report-object-photo{height:87px}}
@media(max-width:760px){.hero-01 .hero-01-business{font-size:17px;margin-top:15px}.hero-01 .hero-01-ground{min-height:265px}.hero-01 .hero-01-scope{min-width:0}.hero-01 .hero-01-scope p{margin-bottom:0}}
@media(max-width:400px){.hero-01 .hero-01-ground{min-height:235px}.hero-01 .hero-01-business{font-size:16px;margin-top:17px}}
@media(max-width:760px){.hero-01 .hero-01-document{margin-right:22px}.hero-01 .hero-01-paper-back{transform:translateX(8px) rotate(9deg)}}
@media(max-width:400px){.hero-01 .hero-01-document{margin-right:16px}}
