:root {
  --prv-emerald: #004b45;
  --prv-emerald-deep: #163431;
  --prv-teal: #007c70;
  --prv-mint: #9ed8ce;
  --prv-ivory: #f4f1ea;
  --prv-paper: #fbfaf6;
  --prv-warm: #a79c90;
  --prv-ink: #172a29;
  --prv-muted: #60706d;
  --prv-line: rgba(23, 42, 41, .15);
  --prv-shadow: 0 26px 72px rgba(7, 37, 34, .13);
  --prv-radius: 22px;
  --prv-header: 82px;
}

html:has(.prv-shell) {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--prv-header) + 20px);
}

body.apt44-prv-active {
  margin: 0;
  padding: 0 0 92px;
  color: var(--prv-ink);
  background: var(--prv-paper);
  font-family: Pretendard, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
  line-height: 1.72;
  word-break: keep-all;
  overflow-x: clip;
}

.apt44-prv-active *,
.apt44-prv-active *::before,
.apt44-prv-active *::after { box-sizing: border-box; }
.apt44-prv-active img { max-width: 100%; height: auto; }
.apt44-prv-active a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .18em; }
.apt44-prv-active button,
.apt44-prv-active a { -webkit-tap-highlight-color: transparent; }
.apt44-prv-active :focus-visible { outline: 3px solid #f4b740; outline-offset: 4px; }

.prv-shell { min-height: 100vh; background: var(--prv-paper); }
.prv-main { min-height: 58vh; padding-top: var(--prv-header); }
.prv-main > article,
.prv-main > .entry-content { margin: 0; }
.prv-main .wp-block-group,
.prv-main .wp-block-image,
.prv-main .wp-block-columns,
.prv-main .wp-block-buttons { margin-top: 0; margin-bottom: 0; }
.prv-main p { margin-top: 0; }
.prv-main h1,
.prv-main h2,
.prv-main h3 { word-break: keep-all; overflow-wrap: normal; }

.prv-skip-link {
  position: fixed;
  left: 18px;
  top: -100px;
  z-index: 10000;
  padding: 12px 18px;
  color: #fff;
  background: var(--prv-emerald);
  border-radius: 0 0 10px 10px;
}
.prv-skip-link:focus { top: 0; }

.prv-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 9990;
  height: var(--prv-header);
  color: #fff;
  background: rgba(22, 52, 49, .94);
  border-bottom: 1px solid rgba(255, 255, 255, .16);
  backdrop-filter: blur(16px);
  transition: background .3s ease, box-shadow .3s ease, height .3s ease;
}
.prv-header.is-scrolled { background: rgba(0, 75, 69, .98); box-shadow: 0 12px 32px rgba(0, 42, 38, .18); }
.prv-header__inner {
  width: min(1760px, 100%);
  height: 100%;
  margin: 0 auto;
  padding: 0 clamp(20px, 3.6vw, 68px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}
.prv-brand { display: flex; align-items: center; gap: 12px; min-width: max-content; text-decoration: none; }
.prv-brand__mark {
  display: grid;
  place-items: center;
  width: 42px;
  aspect-ratio: 1;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 50% 50% 50% 10%;
  font-family: Georgia, serif;
  font-size: 23px;
  font-style: italic;
}
.prv-brand__name { display: grid; line-height: 1.15; }
.prv-brand__name strong { font-size: 17px; letter-spacing: -.025em; }
.prv-brand__name small { margin-top: 5px; font-size: 9px; letter-spacing: .18em; opacity: .72; }
.prv-nav { display: flex; align-items: center; justify-content: flex-end; gap: clamp(10px, 1.25vw, 25px); font-size: 13px; font-weight: 650; }
.prv-nav > a { position: relative; padding: 12px 0; white-space: nowrap; text-decoration: none; }
.prv-nav > a:not(.prv-nav__call)::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 6px;
  left: 0;
  height: 1px;
  background: #fff;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .25s ease;
}
.prv-nav > a:hover::after,
.prv-nav > a:focus-visible::after { transform: scaleX(1); transform-origin: left; }
.prv-nav__call {
  display: grid;
  min-width: 126px;
  padding: 9px 16px !important;
  color: var(--prv-emerald) !important;
  background: #fff;
  border-radius: 999px;
  line-height: 1.12;
  text-align: center;
  box-shadow: 0 7px 22px rgba(0,0,0,.12);
}
.prv-nav__call small { font-size: 9px; letter-spacing: .12em; }
.prv-menu-toggle { display: none; }

.prv-hero {
  position: relative;
  min-height: min(790px, calc(100vh - var(--prv-header)));
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(135deg, #d9e5e0, var(--prv-ivory));
}
.prv-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: radial-gradient(circle at 86% 15%, rgba(255,255,255,.72), transparent 36%);
}
.prv-hero__inner {
  width: min(1680px, 100%);
  min-height: inherit;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 110px) clamp(22px, 5vw, 88px);
  display: grid;
  grid-template-columns: minmax(360px, .72fr) minmax(560px, 1.28fr);
  align-items: center;
  gap: clamp(24px, 4vw, 76px);
}
.prv-hero__media { order: 2; min-width: 0; }
.prv-hero__image img {
  display: block;
  width: 100%;
  max-height: 660px;
  object-fit: contain;
  filter: drop-shadow(0 34px 32px rgba(0, 59, 54, .16));
}
.prv-hero__copy { order: 1; position: relative; z-index: 2; max-width: 650px; }
.prv-kicker,
.prv-eyebrow {
  margin-bottom: 18px !important;
  color: var(--prv-teal);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.prv-hero h1 {
  margin: 0 0 24px;
  font-family: "Nanum Myeongjo", Batang, Georgia, serif;
  font-size: clamp(42px, 5.8vw, 92px);
  font-weight: 500;
  line-height: 1.06;
  letter-spacing: -.065em;
}
.prv-child-hero { min-height: 600px; }
.prv-child-hero h1,
.prv-blog-hero h1 { font-size: clamp(38px, 4.6vw, 72px); }
.prv-landing-template .prv-hero h1 { font-size: clamp(42px, 5vw, 78px); overflow-wrap: anywhere; }
.prv-hero__lead { max-width: 590px; margin-bottom: 30px !important; color: #38504d; font-size: clamp(16px, 1.4vw, 20px); }
.prv-image-credit { margin-top: 20px !important; color: var(--prv-muted); font-size: 12px; }

.prv-buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.prv-buttons .wp-block-button__link {
  min-height: 51px;
  padding: 14px 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--prv-emerald);
  border: 1px solid var(--prv-emerald);
  border-radius: 999px;
  font-weight: 750;
  text-decoration: none;
  transition: transform .22s ease, background .22s ease, color .22s ease;
}
.prv-buttons .wp-block-button__link:hover { transform: translateY(-3px); background: var(--prv-teal); }
.prv-buttons .is-style-outline .wp-block-button__link { color: var(--prv-emerald); background: transparent; }
.prv-buttons .is-style-outline .wp-block-button__link:hover { color: #fff; background: var(--prv-emerald); }

.prv-vr-section {
  padding: clamp(62px, 8vw, 120px) clamp(18px, 4vw, 68px);
  color: #fff;
  background: var(--prv-emerald-deep);
}
.prv-vr-section > .wp-block-group__inner-container,
.prv-vr-section { --prv-section-max: 1460px; }
.prv-vr__heading { width: min(var(--prv-section-max), 100%); margin: 0 auto 32px; }
.prv-vr-section .prv-eyebrow { color: var(--prv-mint); }
.prv-vr-section h2 { color: #fff; }
.prv-vr-section .prv-section-lead { color: rgba(255,255,255,.75); }
.prv-vr-frame {
  display: block;
  width: min(var(--prv-section-max), 100%);
  height: clamp(500px, 69vw, 820px);
  margin: 0 auto;
  background: #071b19;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: var(--prv-radius);
  box-shadow: 0 30px 90px rgba(0,0,0,.28);
}
.prv-vr-fallback { width: min(var(--prv-section-max), 100%); margin: 18px auto 0 !important; color: rgba(255,255,255,.68); font-size: 13px; }
.prv-vr-fallback a { color: #fff; }

.prv-section {
  padding: clamp(72px, 9vw, 138px) clamp(20px, 5vw, 82px);
  background: var(--prv-paper);
}
.prv-section > * { width: min(1320px, 100%); margin-right: auto !important; margin-left: auto !important; }
.prv-section--narrow > * { width: min(960px, 100%); }
.prv-section--ivory { background: var(--prv-ivory); }
.prv-section--dark { color: #fff; background: var(--prv-emerald-deep); }
.prv-section--accent { color: #fff; background: var(--prv-teal); }
.prv-section--dark .prv-eyebrow,
.prv-section--accent .prv-eyebrow { color: var(--prv-mint); }
.prv-section--dark .prv-section-lead,
.prv-section--accent .prv-section-lead { color: rgba(255,255,255,.74); }
.prv-section-title {
  margin: 0 0 19px;
  font-family: "Nanum Myeongjo", Batang, Georgia, serif;
  font-size: clamp(34px, 4.2vw, 64px);
  font-weight: 500;
  line-height: 1.14;
  letter-spacing: -.045em;
}
.prv-section-lead { max-width: 780px; margin-bottom: clamp(30px, 4vw, 54px) !important; color: var(--prv-muted); font-size: 17px; }

.prv-toc {
  margin: 34px auto 56px !important;
  padding: 24px 28px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 24px;
  align-items: start;
  border-top: 1px solid var(--prv-line);
  border-bottom: 1px solid var(--prv-line);
}
.prv-toc strong { color: var(--prv-teal); font-size: 11px; letter-spacing: .2em; }
.prv-toc ol { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 9px 22px; list-style: none; }
.prv-toc a { font-size: 14px; font-weight: 700; text-decoration: none; }

.prv-stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--prv-line); border-left: 1px solid var(--prv-line); }
.prv-stat { min-height: 168px; padding: 28px; display: flex; flex-direction: column; border-right: 1px solid var(--prv-line); border-bottom: 1px solid var(--prv-line); }
.prv-stat small { color: var(--prv-teal); font-size: 10px; font-weight: 800; letter-spacing: .18em; }
.prv-stat strong { margin-top: auto; font-family: "Nanum Myeongjo", Batang, serif; font-size: clamp(24px, 2.2vw, 34px); font-weight: 600; line-height: 1.2; }
.prv-stat span { margin-top: 8px; color: var(--prv-muted); font-size: 13px; }

.prv-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-bottom: 34px; }
.prv-card {
  min-width: 0;
  min-height: 250px;
  padding: clamp(28px, 3.4vw, 50px);
  display: flex;
  flex-direction: column;
  background: rgba(255,255,255,.7);
  border: 1px solid rgba(23,42,41,.1);
  border-radius: var(--prv-radius);
  box-shadow: 0 13px 40px rgba(19,67,62,.06);
  transition: transform .28s ease, box-shadow .28s ease;
}
.prv-card:hover { transform: translateY(-7px); box-shadow: var(--prv-shadow); }
.prv-card small { color: var(--prv-teal); font-size: 10px; font-weight: 850; letter-spacing: .2em; }
.prv-card h3 { margin: auto 0 12px; font-family: "Nanum Myeongjo", Batang, serif; font-size: clamp(25px, 2.2vw, 34px); line-height: 1.25; }
.prv-card p { margin: 0; color: var(--prv-muted); }
.prv-card h3,
.prv-card p { overflow-wrap: anywhere; }
.prv-section--dark .prv-card,
.prv-section--accent .prv-card { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.16); }
.prv-section--dark .prv-card small,
.prv-section--accent .prv-card small { color: var(--prv-mint); }
.prv-section--dark .prv-card p,
.prv-section--accent .prv-card p { color: rgba(255,255,255,.72); }

.prv-split { display: grid !important; grid-template-columns: minmax(0, 1.16fr) minmax(320px, .84fr); gap: clamp(30px, 6vw, 92px); align-items: center; }
.prv-split--reverse .prv-split__media { order: 2; }
.prv-split__copy h3 { margin: 0 0 20px; font-size: clamp(27px, 2.6vw, 40px); line-height: 1.25; }
.prv-split__copy { min-width: 0; }
.prv-split__copy .prv-card-grid { grid-template-columns: 1fr; }
.prv-location-image,
.prv-landscape-image,
.prv-site-plan-image { overflow: hidden; border-radius: var(--prv-radius); box-shadow: var(--prv-shadow); background: #fff; }
.prv-location-image img,
.prv-landscape-image img,
.prv-site-plan-image img { display: block; width: 100%; }
.prv-location-image figcaption,
.prv-landscape-image figcaption,
.prv-site-plan-image figcaption,
.prv-unit-detail figcaption { padding: 11px 16px; color: var(--prv-muted); background: rgba(255,255,255,.92); font-size: 12px; }
.prv-check-list { margin: 0 0 28px; padding: 0; list-style: none; }
.prv-check-list li { position: relative; padding: 14px 0 14px 28px; border-bottom: 1px solid currentColor; border-color: rgba(127,145,141,.3); }
.prv-check-list li::before { content: ""; position: absolute; top: 24px; left: 4px; width: 7px; height: 7px; background: var(--prv-teal); border-radius: 50%; }

.prv-unit-preview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-bottom: 34px; }
.prv-unit-preview figure,
.prv-unit-detail { margin: 0; overflow: hidden; background: #fff; border: 1px solid var(--prv-line); border-radius: var(--prv-radius); box-shadow: 0 14px 42px rgba(23,42,41,.08); }
.prv-unit-preview img { display: block; width: 100%; }
.prv-unit-preview figcaption { padding: 12px 18px; color: var(--prv-muted); font-size: 12px; }
.prv-unit-stack { display: grid; gap: 34px; }
.prv-unit-detail { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(240px, .75fr); align-items: center; }
.prv-unit-detail > div:last-child { padding: clamp(28px, 5vw, 72px); }
.prv-unit-detail small { color: var(--prv-teal); font-weight: 850; letter-spacing: .18em; }
.prv-unit-detail h3 { margin: 8px 0 18px; font-family: "Nanum Myeongjo", Batang, serif; font-size: clamp(42px, 5vw, 70px); }

.prv-contact-panel,
.prv-summary-box,
.prv-editorial-box,
.prv-self-check,
.prv-address-list {
  padding: clamp(26px, 4vw, 48px);
  background: rgba(255,255,255,.82);
  border: 1px solid var(--prv-line);
  border-radius: var(--prv-radius);
}
.prv-contact-panel { margin-bottom: 28px; display: grid; grid-template-columns: .7fr 1.3fr; gap: 24px; }
.prv-contact-panel p,
.prv-address-list p { margin: 0; display: grid; gap: 7px; }
.prv-contact-panel small,
.prv-address-list small { color: var(--prv-teal); font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.prv-contact-panel a { color: var(--prv-emerald); font-family: Georgia, serif; font-size: clamp(34px, 4vw, 58px); font-weight: 700; text-decoration: none; }
.prv-address-list { display: grid; gap: 24px; }
.prv-address-list a { color: var(--prv-teal); font-size: 26px; font-weight: 800; }

.prv-table-scroll { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; background: rgba(255,255,255,.86); border: 1px solid var(--prv-line); border-radius: 16px; }
.prv-table-scroll table { width: 100%; min-width: 660px; border-collapse: collapse; color: var(--prv-ink); }
.prv-table-scroll th,
.prv-table-scroll td { padding: 17px 19px; border-bottom: 1px solid var(--prv-line); text-align: left; vertical-align: top; }
.prv-table-scroll thead th { color: #fff; background: var(--prv-emerald); white-space: nowrap; }
.prv-table-scroll tbody th { width: 28%; color: var(--prv-emerald); background: rgba(0,124,112,.06); }
.prv-scroll-hint { margin: 0 0 10px !important; color: var(--prv-teal); font-size: 13px; font-weight: 800; }
.prv-section--dark .prv-scroll-hint { color: var(--prv-mint); }

.prv-timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--prv-line); border: 1px solid var(--prv-line); }
.prv-timeline article { padding: 28px; background: var(--prv-paper); }
.prv-timeline small { color: var(--prv-teal); font-weight: 800; letter-spacing: .1em; }
.prv-timeline strong { display: block; margin-top: 24px; font-family: Georgia, serif; font-size: 22px; }
.prv-timeline span { color: var(--prv-muted); font-size: 13px; }

.prv-link-list { display: grid; gap: 10px; }
.prv-link-list a {
  padding: 17px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid currentColor;
  border-color: rgba(127,145,141,.28);
  border-radius: 12px;
  font-weight: 750;
  text-decoration: none;
  transition: transform .2s ease, background .2s ease;
}
.prv-link-list a::after { content: "↗"; }
.prv-link-list a:hover { transform: translateX(5px); background: rgba(158,216,206,.12); }
.prv-note { margin-top: 22px !important; padding: 18px 20px; color: var(--prv-muted); background: rgba(0,124,112,.07); border-left: 3px solid var(--prv-teal); }
.prv-section--dark .prv-note,
.prv-section--accent .prv-note { color: rgba(255,255,255,.82); background: rgba(255,255,255,.08); border-left-color: var(--prv-mint); }
.prv-editorial-box h3,
.prv-self-check h3 { margin: 0 0 14px; font-size: 21px; }
.prv-editorial-box h3:not(:first-child) { margin-top: 26px; }
.prv-editorial-box ol,
.prv-self-check ul { margin-bottom: 0; }
.prv-check-columns { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.prv-check-columns > div { padding: 28px; background: rgba(255,255,255,.72); border-radius: 16px; }
.prv-check-columns h3 { margin-top: 0; }
.prv-section--accent .prv-check-columns > div { background: rgba(255,255,255,.1); }
.prv-hashtags { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 8px; }
.prv-hashtags span { padding: 7px 12px; border: 1px solid currentColor; border-radius: 999px; font-size: 12px; }

.prv-footer { padding: 64px clamp(20px, 5vw, 82px) 34px; color: rgba(255,255,255,.76); background: #102724; }
.prv-footer__inner { width: min(1420px, 100%); margin: 0 auto; display: grid; grid-template-columns: 1.2fr .8fr 1.5fr; gap: clamp(30px, 6vw, 86px); }
.prv-footer__eyebrow { color: var(--prv-mint); font-size: 10px; font-weight: 800; letter-spacing: .2em; }
.prv-footer__logo { color: #fff; font-family: "Nanum Myeongjo", Batang, serif; font-size: clamp(22px, 2.3vw, 34px); line-height: 1.4; }
.prv-footer address { font-style: normal; }
.prv-footer a { color: #fff; }
.prv-footer-menu { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; }
.prv-footer-menu a { padding: 8px 12px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; font-size: 12px; text-decoration: none; animation: prv-footer-nudge 5.2s ease-in-out infinite; }
.prv-footer-menu a:nth-child(2n) { animation-delay: .9s; }
.prv-footer__notice { width: min(1420px, 100%); margin: 42px auto 0 !important; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); font-size: 11px; }
.prv-floating-call {
  position: fixed;
  z-index: 9995;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  min-width: 174px;
  padding: 13px 21px;
  display: grid;
  color: #fff !important;
  background: var(--prv-teal);
  border: 1px solid rgba(255,255,255,.4);
  border-radius: 999px;
  box-shadow: 0 18px 42px rgba(0,62,56,.32);
  line-height: 1.08;
  text-align: center;
  text-decoration: none;
  animation: prv-call-pulse 3.1s ease-in-out infinite;
}
.prv-floating-call small { font-size: 9px; letter-spacing: .12em; }
.prv-floating-call strong { margin-top: 4px; font-size: 18px; }

.prv-js .prv-reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
.prv-js .prv-reveal.is-visible { opacity: 1; transform: none; }
@keyframes prv-call-pulse { 0%, 76%, 100% { transform: translateY(0) scale(1); } 82% { transform: translateY(-5px) scale(1.02); } 89% { transform: translateY(0) scale(1); } 94% { transform: translateY(-2px); } }
@keyframes prv-footer-nudge { 0%, 82%, 100% { transform: translateY(0); } 88% { transform: translateY(-3px); } 93% { transform: translateY(0); } }

@media (max-width: 1240px) {
  :root { --prv-header: 72px; }
  .prv-header__inner { padding: 0 20px; }
  .prv-menu-toggle {
    position: relative;
    z-index: 2;
    width: 62px;
    height: 48px;
    padding: 7px 10px;
    display: grid;
    grid-template-columns: 1fr;
    place-content: center;
    gap: 5px;
    color: #fff;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.4);
    border-radius: 999px;
    animation: prv-menu-nudge 4.2s ease-in-out infinite;
  }
  .prv-menu-toggle span { font-size: 10px; font-weight: 800; letter-spacing: .1em; }
  .prv-menu-toggle i { display: block; height: 1px; background: currentColor; transition: transform .2s ease; }
  .prv-menu-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(3px) rotate(45deg); }
  .prv-menu-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-3px) rotate(-45deg); }
  .prv-nav {
    position: fixed;
    inset: var(--prv-header) 0 0;
    padding: 26px 22px max(36px, env(safe-area-inset-bottom));
    display: grid;
    align-content: start;
    gap: 3px;
    overflow-y: auto;
    color: #fff;
    background: rgba(13,47,43,.985);
    visibility: hidden;
    opacity: 0;
    transform: translateY(-12px);
    pointer-events: none;
    transition: opacity .24s ease, transform .24s ease;
  }
  .prv-nav.is-open { visibility: visible; opacity: 1; transform: none; pointer-events: auto; }
  .prv-nav > a { padding: 12px 4px; font-size: 16px; border-bottom: 1px solid rgba(255,255,255,.1); }
  .prv-nav__call { margin-top: 14px; padding: 13px 18px !important; }
  html.prv-menu-open { overflow: hidden; }
  .prv-hero__inner { grid-template-columns: minmax(300px, .82fr) minmax(440px, 1.18fr); }
  @keyframes prv-menu-nudge { 0%, 78%, 100% { transform: translateX(0); } 84% { transform: translateX(-3px); } 90% { transform: translateX(3px); } 95% { transform: translateX(0); } }
}

@media (max-width: 860px) {
  body.apt44-prv-active { padding-bottom: 82px; word-break: normal; overflow-wrap: anywhere; }
  .prv-brand__name strong { font-size: 15px; }
  .prv-brand__name small { font-size: 8px; }
  .prv-hero { min-height: auto; }
  .prv-hero__inner { padding: 38px 20px 56px; grid-template-columns: 1fr; gap: 12px; }
  .prv-hero__media { order: 1; }
  .prv-hero__copy { order: 2; }
  .prv-hero__image img { max-height: 410px; }
  .prv-hero h1 { font-size: clamp(38px, 11vw, 58px); }
  .prv-child-hero h1,
  .prv-blog-hero h1 { font-size: clamp(34px, 9.5vw, 52px); }
  .prv-vr-section { padding: 54px 14px 66px; }
  .prv-vr__heading { padding: 0 8px; }
  .prv-vr-frame { height: min(76vh, 590px); border-radius: 13px; }
  .prv-section { padding: 68px 20px; }
  .prv-section-title { font-size: clamp(33px, 9vw, 48px); }
  .prv-toc { grid-template-columns: 1fr; gap: 12px; padding: 20px 0; }
  .prv-toc ol { display: grid; grid-template-columns: repeat(2, 1fr); }
  .prv-stat-grid { grid-template-columns: repeat(2, 1fr); }
  .prv-card-grid { grid-template-columns: 1fr; }
  .prv-card { min-height: 210px; }
  .prv-split { grid-template-columns: 1fr; }
  .prv-split--reverse .prv-split__media { order: 0; }
  .prv-unit-preview { grid-template-columns: 1fr; }
  .prv-unit-detail { grid-template-columns: 1fr; }
  .prv-contact-panel,
  .prv-check-columns { grid-template-columns: 1fr; }
  .prv-timeline { grid-template-columns: repeat(2, 1fr); }
  .prv-footer__inner { grid-template-columns: 1fr; }
  .prv-floating-call { right: 12px; bottom: max(10px, env(safe-area-inset-bottom)); left: 12px; min-width: 0; padding: 12px 18px; }
}

@media (max-width: 480px) {
  .prv-brand__mark { width: 37px; }
  .prv-brand__name small { letter-spacing: .1em; }
  .prv-buttons { display: grid; grid-template-columns: 1fr; }
  .prv-buttons .wp-block-button,
  .prv-buttons .wp-block-button__link { width: 100%; }
  .prv-stat-grid { grid-template-columns: 1fr; }
  .prv-stat { min-height: 140px; }
  .prv-toc ol { grid-template-columns: 1fr; }
  .prv-timeline { grid-template-columns: 1fr; }
  .prv-table-scroll th,
  .prv-table-scroll td { padding: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html:has(.prv-shell) { scroll-behavior: auto; }
  .prv-js .prv-reveal { opacity: 1; transform: none; transition: none; }
  .prv-floating-call,
  .prv-footer-menu a,
  .prv-menu-toggle { animation: none; }
  .prv-card,
  .prv-buttons .wp-block-button__link,
  .prv-link-list a { transition: none; }
}
