@font-face {
  font-family: "Pretendard Variable";
  font-style: normal;
  font-weight: 45 920;
  font-display: swap;
  src: url("../fonts/PretendardVariable.302ec55f5b43.woff2") format("woff2-variations");
}

:root {
  --navy: #07192d;
  --navy-deep: #04111f;
  --navy-soft: #0d2946;
  --gold: #c8a557;
  --gold-light: #e2c277;
  --gold-pale: #f4ead1;
  --teal: #24796f;
  --teal-pale: #e8f4f1;
  --blue: #356f9c;
  --blue-pale: #eaf2f8;
  --violet: #74558f;
  --violet-pale: #f1edf6;
  --coral: #b86248;
  --coral-pale: #f9ede8;
  --green: #2f7957;
  --green-pale: #e9f4ee;
  --ink: #17212d;
  --muted: #687483;
  --line: #dde2e7;
  --paper: #f5f5f2;
  --white: #fff;
  --serif: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --text-body: 16px;
  --text-support: 14px;
  --text-label: 13px;
  --text-caption: 12px;
  --weight-body: 500;
  --weight-label: 700;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: var(--text-body); font-weight: var(--weight-body); line-height: 1.65; letter-spacing: -.012em; word-break: keep-all; font-synthesis: none; font-variant-numeric: tabular-nums; }
h1, h2, h3 { font-weight: 750; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; font-size: var(--text-support); }
label, th, dt { font-weight: var(--weight-label); }
small { font-size: var(--text-caption); line-height: 1.6; }
.container { width: min(1280px, calc(100% - 56px)); margin-inline: auto; }
.section-space { padding: 118px 0; }
.scroll-progress { position: fixed; inset: 0 0 auto; z-index: 100; height: 2px; pointer-events: none; }
.scroll-progress span { display: block; width: 0; height: 100%; background: var(--gold-light); }

.top-notice { height: 34px; color: #8e9bad; background: #03101d; font-size: 10px; letter-spacing: .04em; }
.top-notice .container { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.top-notice a { color: var(--gold-light); }
.site-header { position: sticky; top: 0; z-index: 50; height: 82px; color: #fff; background: rgba(7,25,45,.97); border-bottom: 1px solid rgba(255,255,255,.1); transition: box-shadow .3s, background .3s; }
.site-header.is-scrolled { background: rgba(4,17,31,.96); box-shadow: 0 12px 35px rgba(0,0,0,.15); backdrop-filter: blur(14px); }
.header-inner { height: 100%; display: flex; align-items: center; gap: 38px; }
.brand { display: inline-flex; align-items: center; gap: 12px; margin-right: auto; }
.brand-logo { position: relative; display: block; width: 195px; height: auto; flex: 0 0 auto; background: transparent; }
.brand-logo-image { display: block; width: 100%; height: auto; object-fit: contain; }
.brand-logo::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: url("../images/goldmna-business-card-logo-v3.8025ab143bdc.png") center top / 100% auto no-repeat; clip-path: inset(62% 0 0 29%); filter: brightness(0) invert(1); }
.brand-mark { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--gold); color: var(--gold-light); font-family: var(--sans); font-size: 23px; font-weight: 800; }
.brand strong { display: block; font-size: 19px; letter-spacing: -.04em; }
.brand small { display: block; margin-top: 2px; color: #8494a7; font-size: 7px; letter-spacing: .14em; }
.main-nav { display: flex; align-items: center; gap: 29px; height: 100%; }
.main-nav a { position: relative; display: grid; place-items: center; height: 100%; font-size: 13px; font-weight: 600; }
.main-nav a::after { content: ""; position: absolute; right: 100%; bottom: 19px; left: 0; height: 1px; background: var(--gold-light); transition: right .25s; }
.main-nav a:hover::after, .main-nav a:focus-visible::after { right: 0; }
.header-consult { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-width: 126px; height: 42px; padding: 0 15px; border: 1px solid rgba(226,194,119,.75); color: var(--gold-light); font-size: 12px; font-weight: 700; transition: color .2s, background .2s; }
.header-consult:hover { color: var(--navy); background: var(--gold-light); }
.menu-toggle { display: none; width: 42px; height: 42px; padding: 0 9px; border: 0; background: transparent; }
.menu-toggle span { display: block; width: 100%; height: 1px; margin: 7px 0; background: #fff; transition: transform .25s; }
.mobile-nav { display: none; }

.consult-side-dock { position: fixed; z-index: 45; top: calc(50% + 48px); right: 18px; width: 126px; overflow: hidden; border: 1px solid rgba(7,25,45,.12); background: #fff; box-shadow: 0 18px 48px rgba(4,17,31,.2); transform: translateY(-50%); }
.consult-side-heading { padding: 18px 14px; color: #fff; background: var(--navy); }
.consult-side-heading span { display: block; margin-bottom: 7px; color: var(--gold-light); font-size: 12px; font-weight: 800; }
.consult-side-heading strong { display: block; font-size: 17px; font-weight: 800; line-height: 1.45; }
.consult-side-action { position: relative; display: flex; min-height: 76px; flex-direction: column; justify-content: center; padding: 12px 28px 12px 13px; border-bottom: 1px solid #e2e6e9; color: var(--navy); background: #fff; transition: color .2s, background .2s, transform .2s; }
.consult-side-action:last-child { border-bottom: 0; }
.consult-side-action:hover { z-index: 2; transform: translateX(-4px); }
.consult-side-action span { font-size: 14px; font-weight: 850; line-height: 1.35; }
.consult-side-action small { margin-top: 5px; color: #687785; font-size: 12px; font-weight: 650; line-height: 1.35; }
.consult-side-action b { position: absolute; right: 11px; bottom: 12px; color: #a47d32; font-size: 16px; }
.consult-side-action.primary { color: #17212d; background: var(--gold-light); }
.consult-side-action.primary small, .consult-side-action.primary b { color: #4e493d; }
.consult-side-action.naver { color: #fff; background: #03a94d; }
.consult-side-action.naver small, .consult-side-action.naver b { color: rgba(255,255,255,.82); }
.consult-side-action.kakao { color: #2a2320; background: #fee500; }
.consult-side-action.kakao small, .consult-side-action.kakao b { color: #655a39; }
.consult-side-action.office { background: #edf1f3; }

/* Readability baseline: the service is information-heavy, so operational text is intentionally kept above 12px. */
.top-notice { font-size: 12px; font-weight: 500; }
.brand small { font-size: 8px; font-weight: 600; }
.main-nav a { font-size: 14px; font-weight: 700; }
.eyebrow { font-size: 11px; }
.hero-services { font-size: 12px; font-weight: 500; }
.section-heading > div > p:last-child, .heading-copy { font-size: 15px; font-weight: 500; }
.service-card > p { font-size: 10px; }
.service-card > strong { font-size: 14px; font-weight: 500; }
.service-card > b { font-size: 12px; }
.expertise-copy > p:not(.eyebrow) { font-size: 15px; font-weight: 500; }
.expertise-copy dt { font-size: 12px; }
.expertise-copy dd strong { font-size: 14px; }
.expertise-copy dd span { font-size: 12px; }

.home-hero { position: relative; min-height: 720px; overflow: hidden; color: #fff; background: radial-gradient(circle at 73% 42%, #123553 0, #0a213a 22%, transparent 46%), linear-gradient(118deg, #04111f 0%, #07192d 58%, #0b2946 100%); }
.blueprint-grid { position: absolute; inset: 0; opacity: .52; background-image: linear-gradient(rgba(117,157,190,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(117,157,190,.08) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to right, transparent 2%, #000 42%, #000 100%); animation: gridDrift 18s linear infinite; }
.home-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,17,31,.75) 0, transparent 60%); }
.hero-orbit { position: absolute; border: 1px solid rgba(226,194,119,.18); border-radius: 50%; }
.orbit-one { top: -235px; right: -35px; width: 720px; height: 720px; animation: orbitPulse 8s ease-in-out infinite; }
.orbit-two { top: -105px; right: 95px; width: 460px; height: 460px; animation: orbitPulse 8s 1.2s ease-in-out infinite reverse; }
.home-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; min-height: 570px; padding-top: 18px; }
.eyebrow { margin: 0 0 22px; color: var(--gold-light); font-size: 10px; font-weight: 700; letter-spacing: .2em; }
.eyebrow > span { display: inline-block; width: 30px; height: 1px; margin-right: 9px; background: currentColor; vertical-align: middle; }
.eyebrow.dark { color: #a47f35; }
.hero-copy h1 { margin: 0 0 29px; font-family: var(--serif); font-size: clamp(42px, 4.2vw, 65px); font-weight: 800; line-height: 1.25; letter-spacing: -.04em; }
.word-line { display: block; overflow: hidden; }
.word-line i { display: block; font-style: normal; transform: translateY(115%); animation: wordUp .85s cubic-bezier(.22,.75,.25,1) forwards; }
.word-line:nth-child(2) i { animation-delay: .1s; }
.word-line:nth-child(3) i { animation-delay: .2s; }
.word-line.gold-line { color: var(--gold-light); }
.hero-lead { margin: 0 0 34px; color: #b7c4d1; font-size: 16px; line-height: 1.9; }
.hero-reveal { opacity: 0; transform: translateY(18px); animation: heroFade .7s .48s ease forwards; }
.hero-actions.hero-reveal { animation-delay: .62s; }
.hero-services.hero-reveal { animation-delay: .76s; }
.hero-actions { display: flex; gap: 11px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 25px; min-width: 184px; height: 54px; padding: 0 23px; border: 0; font-size: 13px; font-weight: 700; transition: color .25s, background .25s, border .25s, transform .25s; }
.button:hover { transform: translateY(-2px); }
.button-gold { color: #101d2b; background: var(--gold); }
.button-gold:hover { background: var(--gold-light); }
.button-ghost { color: #fff; border: 1px solid rgba(255,255,255,.32); }
.button-ghost:hover { border-color: var(--gold); color: var(--gold-light); }
.button-light { color: var(--navy); background: #fff; }
.hero-services { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 39px 0 0; list-style: none; color: #c1ced8; font-size: 13px; font-weight: 700; letter-spacing: -.02em; }
.hero-services li { display: flex; align-items: center; min-height: 34px; padding: 0 12px; border: 1px solid rgba(226,194,119,.38); background: rgba(4,17,31,.25); }
.hero-services li:not(:last-child)::after { display: none; }
.quick-consult-card { position: relative; z-index: 4; width: min(100%, 455px); padding: 28px 30px 30px; justify-self: end; color: var(--ink); border-top: 4px solid var(--gold); background: rgba(255,255,255,.98); box-shadow: 0 28px 70px rgba(0,0,0,.28); }
.quick-consult-heading { margin-bottom: 19px; }
.quick-consult-heading > span { display: block; margin-bottom: 4px; color: #9a762f; font-size: var(--text-label); font-weight: 800; }
.quick-consult-heading h2 { margin: 0 0 7px; color: var(--navy); font-family: var(--serif); font-size: 29px; letter-spacing: -.03em; }
.quick-consult-heading p { margin: 0; color: #596a79; font-size: var(--text-label); line-height: 1.65; }
.quick-consult-card form { display: grid; gap: 12px; }
.quick-consult-card label { display: block; min-width: 0; }
.quick-consult-card label > span { display: block; margin-bottom: 6px; color: #435565; font-size: var(--text-label); font-weight: 800; }
.quick-consult-card label > span em { color: #83909b; font-size: var(--text-caption); font-style: normal; font-weight: 500; }
.quick-consult-card select, .quick-consult-card input:not([type=checkbox]), .quick-consult-card textarea { width: 100%; border: 1px solid #cbd4db; border-radius: 0; outline: 0; color: #203244; background: #fff; font-size: var(--text-support); font-weight: 500; }
.quick-consult-card select, .quick-consult-card input:not([type=checkbox]) { height: 47px; padding: 0 12px; }
.quick-consult-card textarea { min-height: 72px; padding: 10px 12px; resize: vertical; }
.quick-consult-card select:focus, .quick-consult-card input:focus, .quick-consult-card textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 2px rgba(200,165,87,.12); }
.quick-consult-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.quick-consult-card label > small, .quick-consult-error { display: block; margin: 5px 0 0; color: #b23e32; font-size: var(--text-caption); }
.quick-consult-card .quick-consult-consent { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; cursor: pointer; }
.quick-consult-consent input { width: 17px; height: 17px; margin: 0; accent-color: var(--navy); }
.quick-consult-card .quick-consult-consent > span { display: inline; margin: 0; font-size: var(--text-caption); font-weight: 600; }
.quick-consult-card .quick-consult-consent > small { width: 100%; }
.quick-consult-card button { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 52px; padding: 0 17px; border: 0; color: #fff; background: var(--navy); cursor: pointer; font-size: var(--text-support); font-weight: 800; }
.quick-consult-card button:hover { background: var(--navy-soft); }
.quick-consult-card button b { color: var(--gold-light); font-size: 18px; }
.quick-consult-success { margin: -3px 0 14px; padding: 12px 14px; color: #206244; border-left: 3px solid #3d9568; background: #e9f5ee; }
.quick-consult-success strong, .quick-consult-success span { display: block; }
.quick-consult-success strong { font-size: var(--text-support); }
.quick-consult-success span { margin-top: 2px; font-size: var(--text-caption); }
.hero-visual { position: relative; height: 480px; perspective: 800px; }
.monogram { position: absolute; top: 33px; right: 34px; display: grid; place-items: center; width: 310px; height: 310px; border: 1px solid rgba(226,194,119,.28); transform: rotate(5deg); animation: monogramFloat 7s ease-in-out infinite; }
.monogram::before, .monogram::after { content: ""; position: absolute; border: 1px solid rgba(226,194,119,.13); }
.monogram::before { inset: 20px; }
.monogram::after { inset: 47px; border-radius: 50%; }
.monogram span { color: rgba(226,194,119,.83); font-family: var(--sans); font-size: 150px; font-weight: 800; line-height: 1; text-shadow: 0 12px 40px rgba(0,0,0,.3); }
.monogram small { position: absolute; bottom: 50px; color: #73869a; font-size: 8px; letter-spacing: .55em; }
.floating-card { position: absolute; width: 236px; padding: 18px 20px; border-left: 2px solid var(--gold); background: rgba(6,21,38,.72); box-shadow: 0 18px 50px rgba(0,0,0,.22); backdrop-filter: blur(10px); animation: cardFloat 6s ease-in-out infinite; }
.floating-card span { display: block; color: #74889c; font-size: 8px; letter-spacing: .2em; }
.floating-card strong { display: block; margin: 7px 0 13px; font-family: var(--serif); font-size: 15px; }
.floating-card i { color: var(--gold-light); font-size: 9px; font-style: normal; letter-spacing: .12em; }
.card-top { top: 36px; left: -4px; }
.card-bottom { right: -15px; bottom: 72px; animation-delay: -2.4s; }
.gold-cross { position: absolute; width: 12px; height: 12px; }
.gold-cross::before, .gold-cross::after { content: ""; position: absolute; background: var(--gold); }
.gold-cross::before { top: 5px; width: 12px; height: 1px; }
.gold-cross::after { left: 5px; width: 1px; height: 12px; }
.cross-a { left: 30px; bottom: 110px; }
.cross-b { top: 110px; right: -4px; }
.hero-bottom { position: relative; z-index: 3; display: flex; align-items: end; justify-content: space-between; padding-bottom: 35px; }
.scroll-hint { display: flex; align-items: center; gap: 10px; color: #5d7186; font-size: 8px; letter-spacing: .14em; }
.scroll-hint i { position: relative; width: 1px; height: 39px; overflow: hidden; background: #2c4257; }
.scroll-hint i::after { content: ""; position: absolute; top: -10px; left: 0; width: 1px; height: 12px; background: var(--gold); animation: scrollDrop 2s infinite; }
.hero-stats { display: grid; grid-template-columns: repeat(3, 1fr); width: 570px; border-top: 1px solid rgba(255,255,255,.14); }
.hero-stats div { padding: 19px 0 0 25px; border-left: 1px solid rgba(255,255,255,.14); }
.hero-stats strong { display: block; color: var(--gold-light); font-family: var(--sans); font-size: 27px; font-weight: 750; }
.hero-stats span { display: block; margin-top: 4px; color: #a7b6c3; font-size: 12px; font-weight: 600; }

.quick-search-section { position: relative; z-index: 4; height: 82px; }
.quick-search { position: relative; top: -26px; display: grid; grid-template-columns: 1.15fr .8fr .8fr 1.2fr 145px; gap: 0; min-height: 126px; padding: 20px 22px; background: #fff; box-shadow: 0 18px 55px rgba(6,24,42,.13); }
.search-title { display: flex; flex-direction: column; justify-content: center; padding: 0 25px 0 9px; border-right: 1px solid var(--line); }
.search-title strong { color: var(--navy); font-size: 17px; line-height: 1.55; }
.search-title a { margin-top: 7px; color: #927036; font-size: 12px; font-weight: 700; }
.quick-search label { display: flex; flex-direction: column; justify-content: center; padding-left: 20px; }
.quick-search label > span { margin-bottom: 8px; color: #5a6a79; font-size: 12px; font-weight: 800; }
.quick-search input, .quick-search select { width: calc(100% - 14px); height: 42px; padding: 0 10px; border: 0; border-bottom: 1px solid #cfd6dc; border-radius: 0; outline: 0; color: #263443; background: #fff; font-size: 14px; font-weight: 500; }
.quick-search input:focus, .quick-search select:focus { border-color: var(--gold); }
.quick-search button { align-self: center; display: flex; align-items: center; justify-content: space-between; height: 58px; padding: 0 18px; border: 0; color: #fff; background: var(--navy); cursor: pointer; font-size: 14px; font-weight: 800; transition: background .2s; }
.quick-search button:hover { background: var(--navy-soft); }
.quick-search button b { color: var(--gold-light); font-size: 17px; }

.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 55px; margin-bottom: 49px; }
.section-heading h2 { margin: 0; font-family: var(--serif); color: var(--navy); font-size: clamp(30px, 3vw, 43px); line-height: 1.42; letter-spacing: -.035em; }
.section-heading h2 em { color: #a47d32; font-style: normal; }
.section-heading > div > p:last-child { margin: 12px 0 0; color: var(--muted); font-size: 13px; }
.heading-copy { max-width: 440px; margin: 0 0 5px; color: var(--muted); font-size: 14px; line-height: 1.9; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #b9c1c8; border-left: 1px solid var(--line); }
.service-card { position: relative; min-height: 310px; padding: 35px 30px 27px; overflow: hidden; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; transition: color .3s, background .3s, transform .3s, box-shadow .3s; }
.service-card.feature { grid-row: span 2; min-height: 620px; padding-top: 43px; color: #fff; background: var(--navy); }
.service-card.feature::before { content: "G"; position: absolute; right: -5px; bottom: -70px; color: rgba(226,194,119,.07); font-family: var(--sans); font-size: 325px; font-weight: 800; line-height: 1; }
.service-card:not(.feature):hover { z-index: 2; color: #fff; background: var(--navy-soft); transform: translateY(-5px); box-shadow: 0 18px 35px rgba(7,25,45,.14); }
.service-index { position: absolute; top: 30px; right: 27px; color: #a98a4b; font-family: var(--sans); font-size: 14px; font-weight: 700; }
.service-icon { position: relative; width: 54px; height: 54px; margin-bottom: 63px; }
.service-icon i { position: absolute; display: block; border: 1px solid var(--gold); }
.service-icon i:first-child { inset: 5px 14px 5px 0; }
.service-icon i:last-child { inset: 15px 0 15px 14px; background: rgba(200,165,87,.14); }
.feature .service-icon { margin: 68px 0 128px; transform: scale(1.35); }
.license-icon i:first-child { inset: 5px 7px; border-radius: 50%; }
.license-icon i:last-child { inset: 22px 0 0; border-width: 1px 0 0; transform: rotate(-35deg); }
.chart-icon i:first-child { inset: 6px 4px; border-width: 0 0 1px 1px; }
.chart-icon i:last-child { left: 10px; bottom: 10px; width: 34px; height: 25px; border-width: 0 0 1px; transform: skewY(-28deg); }
.merge-icon i:first-child { width: 28px; height: 28px; top: 2px; left: 2px; }
.merge-icon i:last-child { width: 28px; height: 28px; right: 2px; bottom: 2px; }
.capital-icon i:first-child { inset: 8px 5px; border-radius: 50%; }
.capital-icon i:last-child { top: 14px; left: 22px; width: 10px; height: 25px; border-width: 0 1px; transform: rotate(90deg); }
.service-card > p { margin: 0 0 8px; color: #a3874f; font-size: 8px; font-weight: 700; letter-spacing: .15em; }
.service-card h3 { margin: 0 0 13px; font-family: var(--serif); font-size: 27px; line-height: 1.35; letter-spacing: -.04em; }
.service-card > strong { display: block; color: #5d6e7d; font-size: 15px; font-weight: 600; line-height: 1.65; }
.feature > strong { color: #9eacb9; }
.service-card > b { position: absolute; right: 27px; bottom: 27px; left: 30px; display: flex; align-items: center; justify-content: space-between; padding-top: 17px; border-top: 1px solid rgba(123,136,148,.25); font-size: 10px; }
.service-card > b i { color: var(--gold); font-size: 16px; font-style: normal; transition: transform .25s; }
.service-card:hover > b i { transform: translateX(5px); }

.expertise-section { display: grid; grid-template-columns: 48% 52%; min-height: 705px; color: #fff; background: var(--navy); }
.expertise-image { position: relative; min-height: 705px; overflow: hidden; background: #061523; }
.expertise-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(4,17,31,.05) 30%, rgba(4,17,31,.82) 100%), linear-gradient(90deg, transparent 58%, rgba(7,25,45,.4)); }
.expertise-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 52% center; transform: scale(1.025); animation: trustImageDrift 18s ease-in-out infinite alternate; }
.company-milestone { position: absolute; z-index: 2; right: 9%; bottom: 48px; left: 9%; padding: 22px 24px; border-left: 3px solid var(--gold-light); color: #fff; background: rgba(4,17,31,.72); backdrop-filter: blur(8px); }
.company-milestone strong, .company-milestone span { display: block; }
.company-milestone strong { color: var(--gold-light); font-size: 30px; font-weight: 800; letter-spacing: -.02em; }
.company-milestone span { margin-top: 3px; font-size: 18px; font-weight: 800; }
.company-milestone p { margin: 8px 0 0; color: #d5dde4; font-size: 14px; font-weight: 600; }
.building-lines { position: absolute; right: 10%; bottom: -1px; width: 70%; height: 82%; opacity: .38; border: 1px solid var(--gold); clip-path: polygon(15% 12%, 82% 0, 100% 100%, 0 100%); }
.building-lines::before, .building-lines::after { content: ""; position: absolute; inset: 10% 18%; border: 1px solid rgba(226,194,119,.48); transform: skewY(-4deg); }
.building-lines::after { inset: 24% 35% 0; }
.expertise-image > span { position: absolute; z-index: 2; right: 11%; bottom: 45px; color: rgba(226,194,119,.73); font-family: var(--sans); font-size: 13px; font-weight: 650; line-height: 1.5; letter-spacing: .14em; text-align: right; }
.expertise-copy { align-self: center; max-width: 655px; padding: 80px 70px; }
.expertise-copy h2 { margin: 0 0 26px; font-family: var(--serif); font-size: clamp(32px, 3.2vw, 46px); line-height: 1.45; letter-spacing: -.035em; }
.expertise-copy h2 em { color: var(--gold-light); font-style: normal; }
.expertise-copy > p:not(.eyebrow) { margin: 0 0 31px; color: #aab7c3; font-size: 14px; line-height: 1.95; }
.expertise-copy dl { margin: 0 0 33px; border-top: 1px solid rgba(255,255,255,.13); }
.expertise-copy dl div { display: grid; grid-template-columns: 52px 1fr; gap: 19px; padding: 23px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.expertise-copy dt { display: grid; place-items: center; width: 38px; height: 38px; color: var(--gold-light); border: 1px solid rgba(226,194,119,.55); font-family: var(--sans); font-size: 14px; font-weight: 750; }
.expertise-copy dd { margin: 0; }
.expertise-copy dd strong, .expertise-copy dd span { display: block; }
.expertise-copy dd strong { margin-bottom: 7px; color: #fff; font-size: 17px; font-weight: 800; }
.expertise-copy dd span { color: #c1ccd5; font-size: 14px; font-weight: 500; line-height: 1.75; }
.text-link { display: inline-flex; align-items: center; gap: 25px; padding-bottom: 7px; border-bottom: 1px solid currentColor; font-size: 11px; font-weight: 700; }
.text-link span { color: var(--gold); font-size: 16px; transition: transform .2s; }
.text-link:hover span { transform: translateX(5px); }

.latest-section { background: #f4f4f1; }
.latest-section .section-heading { margin-bottom: 31px; }
.listing-table-wrap { overflow-x: auto; background: #fff; border-top: 3px solid var(--navy); box-shadow: 0 8px 25px rgba(7,25,45,.04); }
.listing-table { width: 100%; min-width: 1080px; border-collapse: collapse; font-size: 12px; }
.listing-table th { padding: 15px 11px; color: #677382; background: #edf0f1; font-size: 10px; font-weight: 600; white-space: nowrap; }
.listing-table td { padding: 18px 11px; border-bottom: 1px solid #e7eaed; text-align: center; white-space: nowrap; }
.listing-table tbody tr { transition: background .2s; }
.listing-table tbody tr:hover { background: #fbf9f3; }
.reg-number { color: #526171; font-family: var(--sans); font-size: 14px; font-weight: 650; }
.trade-link { color: #102c48; font-weight: 700; }
.trade-link span { color: #a57f35; }
.status { display: inline-block; margin: 1px; padding: 3px 6px; font-size: 8px; font-weight: 700; }
.status-open { color: #23714b; background: #e5f3ec; }
.status-pick { color: #8d6517; background: #fff0ca; }
.status-urgent { color: #ad3e31; background: #fae6e2; }
.status-done { color: #707985; background: #e9ecef; }
.status-hold { color: #756d42; background: #f2efda; }
.empty-row { height: 150px; color: var(--muted); }
.listing-cards { display: grid; gap: 10px; }
.listing-card { display: grid; grid-template-columns: 86px minmax(210px, 1.35fr) minmax(250px, 1fr) minmax(160px, .72fr) 125px; align-items: stretch; overflow: hidden; border: 1px solid #e1e6e9; border-left: 3px solid #183957; background: #fff; box-shadow: 0 8px 23px rgba(7,25,45,.035); transition: border-color .2s, box-shadow .2s, transform .2s; }
.listing-card:hover { border-left-color: var(--gold); box-shadow: 0 12px 28px rgba(7,25,45,.09); transform: translateY(-2px); }
.listing-card-number, .listing-card-overview, .listing-card-metrics, .listing-card-meta, .listing-card-price { padding: 20px 16px; }
.listing-card-number { display: flex; flex-direction: column; justify-content: center; border-right: 1px solid #e7eaed; color: #8a96a1; }
.listing-card-number span, .listing-card-price > span { margin-bottom: 6px; font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.listing-card-number strong { color: #526171; font-family: var(--sans); font-size: 14px; font-weight: 700; }
.listing-card-overview { min-width: 0; }
.listing-card-badges { min-height: 20px; margin-bottom: 5px; }
.listing-card-title { display: block; overflow: hidden; color: #102c48; font-size: 15px; font-weight: 800; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.listing-card-title:hover { color: #9a731e; }
.listing-card-overview p { margin: 7px 0 0; overflow: hidden; color: #657485; font-size: 12px; font-weight: 500; line-height: 1.55; text-overflow: ellipsis; white-space: nowrap; }
.listing-card-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; }
.listing-card-metrics div { min-width: 0; padding: 4px 10px; border-left: 1px solid #edf0f2; text-align: center; }
.listing-card-metrics div:first-child { border-left: 0; }
.listing-card-metrics dt, .listing-card-meta dt { margin-bottom: 8px; color: #6d7b88; font-size: 10px; font-weight: 700; }
.listing-card-metrics dd, .listing-card-meta dd { margin: 0; color: #203c55; font-size: 14px; font-weight: 800; }
.listing-card-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 13px 10px; margin: 0; border-left: 1px solid #e7eaed; }
.listing-card-meta div:last-child { grid-column: span 2; }
.listing-card-meta dt { margin-bottom: 3px; }
.listing-card-meta dd { overflow: hidden; font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.listing-card-price { display: flex; flex-direction: column; justify-content: center; align-items: flex-end; color: #7d8994; border-left: 1px solid #e7eaed; background: #fbfcfc; text-align: right; }
.listing-card-price strong { color: #a57f35; font-family: var(--serif); font-size: 17px; line-height: 1.25; }
.listing-card-price a { margin-top: 9px; color: #294963; font-size: 12px; font-weight: 800; }
.listing-card-price i { margin-left: 5px; color: var(--gold); font-size: 14px; font-style: normal; }
.listing-card-empty { padding: 70px 20px; border-top: 3px solid var(--navy); color: #627182; background: #fff; text-align: center; line-height: 1.8; }
.listing-card-empty small { color: #9aa5ae; }
.consult-strip { display: flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 96px; margin-top: 20px; padding: 20px 29px; color: #fff; background: var(--navy); }
.consult-strip > div { display: flex; align-items: center; gap: 19px; }
.consult-icon { display: grid; place-items: center; width: 47px; height: 47px; flex: 0 0 auto; border: 1px solid var(--gold); color: var(--gold); font-family: var(--sans); font-size: 20px; font-weight: 750; }
.consult-strip p { margin: 0; color: #a3b0bd; font-size: 11px; line-height: 1.7; }
.consult-strip p strong { color: #fff; font-size: 15px; }
.consult-strip > a { color: var(--gold-light); font-size: 12px; font-weight: 700; }
.consult-strip > a span { margin-left: 20px; }

.process-section { color: #fff; background: #0a233d; }
.process-section .section-heading.centered { justify-content: center; text-align: center; }
.process-section .section-heading h2 { color: #fff; }
.process-section .section-heading h2 em { color: var(--gold-light); }
.process-section .section-heading .eyebrow > span { margin: 0 9px 0 0; }
.process-section .section-heading p:last-child { color: #8fa0b0; }
.home-process { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); padding: 0; margin: 78px 0 0; list-style: none; }
.home-process::before { content: ""; position: absolute; top: 42px; right: 12.5%; left: 12.5%; height: 1px; background: rgba(226,194,119,.3); }
.home-process li { position: relative; text-align: center; }
.home-process li > span { color: var(--gold); font-family: var(--sans); font-size: 13px; font-weight: 750; }
.home-process li > i { position: relative; z-index: 2; display: block; width: 15px; height: 15px; margin: 24px auto 28px; border: 4px solid #0a233d; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 1px rgba(226,194,119,.55); }
.home-process h3 { margin: 0 0 12px; font-family: var(--serif); font-size: 20px; }
.home-process p { margin: 0; color: #b3c0ca; font-size: 13px; font-weight: 500; line-height: 1.75; }

.contact-channel-section { padding: 78px 0; color: #fff; background: #e9ecec; }
.contact-channel-section .container { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 48px; align-items: center; }
.contact-channel-heading h2 { margin: 0 0 13px; color: var(--navy); font-family: var(--serif); font-size: 32px; line-height: 1.42; letter-spacing: -.03em; }
.contact-channel-heading p { margin: 0; color: #5d6c79; font-size: var(--text-support); line-height: 1.75; }
.contact-channel-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(175px, 1fr)); gap: 9px; }
.contact-channel-button { position: relative; display: flex; flex-direction: column; justify-content: center; min-height: 145px; padding: 20px; overflow: hidden; color: #fff; background: var(--navy); transition: transform .2s, box-shadow .2s; }
.contact-channel-button:hover { z-index: 2; transform: translateY(-4px); box-shadow: 0 14px 28px rgba(7,25,45,.16); }
.contact-channel-button > span { margin-bottom: 18px; color: rgba(255,255,255,.62); font-family: var(--sans); font-size: var(--text-caption); font-weight: 700; }
.contact-channel-button strong { display: block; font-size: 18px; font-weight: 800; }
.contact-channel-button small { display: block; margin-top: 5px; color: rgba(255,255,255,.76); font-size: var(--text-caption); }
.contact-channel-button b { position: absolute; right: 18px; bottom: 17px; color: rgba(255,255,255,.9); font-size: 18px; }
.channel-consult { color: #142333; background: var(--gold); }
.channel-consult > span, .channel-consult small, .channel-consult b { color: #33414d; }
.channel-naver { background: #03a94d; }
.channel-kakao { color: #2a2320; background: #fee500; }
.channel-kakao > span, .channel-kakao small, .channel-kakao b { color: #554a33; }
.channel-kakao-add { color: #2a2320; border: 1px solid #e4cd00; background: #fff8bd; }
.channel-kakao-add > span, .channel-kakao-add small, .channel-kakao-add b { color: #665a36; }
.channel-map { background: #46596a; }

.final-cta { position: relative; overflow: hidden; padding: 83px 0; color: #fff; background: linear-gradient(110deg, #071729, #0e2c49); }
.cta-pattern { position: absolute; inset: 0; opacity: .35; background-image: linear-gradient(90deg, transparent 49.8%, rgba(226,194,119,.1) 50%, transparent 50.2%); background-size: 100px 100%; transform: skewX(-18deg); }
.final-cta .container { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 50px; }
.final-cta h2 { margin: 0 0 15px; font-family: var(--serif); font-size: clamp(30px, 3.2vw, 43px); line-height: 1.48; letter-spacing: -.03em; }
.final-cta p:last-child { margin: 0; color: #97a7b6; font-size: 11px; }
.cta-actions { display: flex; align-items: stretch; gap: 10px; }
.cta-phone { min-width: 180px; padding: 9px 20px; border: 1px solid rgba(255,255,255,.24); }
.cta-phone span, .cta-phone strong { display: block; }
.cta-phone span { color: #8798a9; font-size: 9px; }
.cta-phone strong { margin-top: 3px; color: var(--gold-light); font-family: var(--sans); font-size: 22px; font-weight: 750; letter-spacing: 0; }

.site-footer { padding: 57px 0 0; color: #8291a1; background: #03101d; font-size: 10px; line-height: 1.9; }
.footer-grid { display: grid; grid-template-columns: 1.6fr .8fr 1.2fr; gap: 50px; padding-bottom: 42px; }
.footer-brand { color: #fff; }
.footer-brand + p { margin-top: 18px; }
.footer-grid > div > strong { display: block; margin-bottom: 12px; color: var(--gold-light); font-size: 9px; letter-spacing: .14em; }
.footer-grid p { margin: 0; }
.footer-grid p a { color: #d5dde4; font-family: var(--sans); font-size: 17px; font-weight: 650; }
.footer-bottom { display: flex; justify-content: space-between; gap: 30px; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.08); }
.mobile-quick { display: none; }

.inner-main { background: #f4f4f1; }
.inner-hero { position: relative; min-height: 310px; overflow: hidden; color: #fff; background: linear-gradient(118deg, #04111f, #0b2b49); }
.inner-hero .container { position: relative; z-index: 2; padding-top: 76px; }
.inner-hero h1 { margin: 0 0 16px; font-family: var(--serif); font-size: 43px; letter-spacing: -.035em; }
.inner-hero p:last-child { margin: 0; color: #9faebd; font-size: 13px; }
.listing-search-page .inner-hero { min-height: 185px; }
.listing-search-page .inner-hero .container { padding-top: 42px; }
.listing-search-page .inner-hero h1 { margin-bottom: 8px; font-size: 34px; }
.listing-search-page .inner-hero p:last-child { font-size: 14px; }
.listing-search-page .listing-search { top: -26px; }
.listing-search-page .search-main-row { padding-top: 17px; padding-bottom: 17px; }
.listing-search-page .quick-filter-row { min-height: 47px; }
.listing-search-page .advanced-filter summary { min-height: 47px; }
.listing-search-page .listing-search + .result-heading { margin-top: -1px; }
.inner-orbit { position: absolute; top: -270px; right: -30px; width: 640px; height: 640px; border: 1px solid rgba(226,194,119,.18); border-radius: 50%; box-shadow: 0 0 0 95px rgba(226,194,119,.025), 0 0 0 190px rgba(226,194,119,.02); }
.content-shell { padding: 0 0 100px; }
.filter-panel { position: relative; top: -42px; display: grid; grid-template-columns: 1.25fr 1fr 1fr .8fr 135px; gap: 11px; padding: 23px; background: #fff; box-shadow: 0 15px 45px rgba(6,22,39,.12); }
.filter-panel label > span { display: block; margin-bottom: 7px; color: #7a8590; font-size: 9px; }
.filter-panel input, .filter-panel select { width: 100%; height: 42px; padding: 0 11px; border: 1px solid #d9dee3; color: #263443; background: #fff; font-size: 12px; }
.filter-panel button { align-self: end; display: flex; justify-content: space-between; align-items: center; height: 42px; padding: 0 15px; border: 0; color: #fff; background: var(--navy); cursor: pointer; font-size: 11px; font-weight: 700; }
.filter-panel button span { color: var(--gold); }
.listing-search { position: relative; top: -42px; overflow: hidden; background: #fff; box-shadow: 0 15px 45px rgba(6,22,39,.12); }
.search-main-row { display: grid; grid-template-columns: 1.35fr .8fr 1fr .8fr 132px; gap: 11px; padding: 23px 24px; }
.listing-search label > span { display: block; margin-bottom: 7px; color: #526474; font-size: 11px; font-weight: 800; }
.listing-search input, .listing-search select { width: 100%; height: 46px; padding: 0 12px; border: 1px solid #c9d2da; border-radius: 0; outline: 0; color: #263443; background: #fff; font-size: 14px; font-weight: 500; }
.listing-search input:focus, .listing-search select:focus { border-color: var(--gold); box-shadow: 0 0 0 2px rgba(200,165,87,.09); }
.listing-search button { border: 0; cursor: pointer; font-family: inherit; }
.search-main-row > button { align-self: end; display: flex; align-items: center; justify-content: space-between; height: 46px; padding: 0 17px; color: #fff; background: var(--navy); font-size: 14px; font-weight: 800; }
.search-main-row > button span, .advanced-actions button span { color: var(--gold-light); font-size: 15px; }
.quick-filter-row { display: flex; align-items: center; gap: 7px; min-height: 53px; padding: 9px 24px; border-top: 1px solid #e3e7ea; background: #f7f8f8; overflow-x: auto; white-space: nowrap; }
.quick-filter-row > span { margin-right: 6px; color: #816630; font-size: 11px; font-weight: 800; }
.quick-filter-row a { padding: 7px 11px; border: 1px solid #cbd4db; color: #405365; background: #fff; font-size: 12px; font-weight: 600; transition: border-color .2s, color .2s; }
.quick-filter-row a:hover { border-color: var(--gold); color: var(--navy); }
.advanced-filter { border-top: 1px solid #e3e7ea; }
.advanced-filter summary { display: flex; align-items: center; gap: 12px; min-height: 55px; padding: 0 24px; cursor: pointer; list-style: none; }
.advanced-filter summary::-webkit-details-marker { display: none; }
.advanced-filter summary span { color: var(--navy); font-size: 14px; font-weight: 800; }
.advanced-filter summary small { color: #687787; font-size: 12px; font-weight: 500; }
.advanced-filter summary b { width: 20px; height: 20px; margin-left: auto; color: #946f2e; font-size: 18px; font-weight: 400; line-height: 18px; text-align: center; transition: transform .2s; }
.advanced-filter[open] summary b { transform: rotate(45deg); }
.advanced-filter-body { padding: 0 24px 22px; background: #fbfbfa; }
.advanced-filter fieldset { margin: 0; padding: 18px 0; border: 0; border-top: 1px solid #e0e4e7; }
.advanced-filter legend { padding: 0; color: #263646; font-size: 12px; font-weight: 800; }
.advanced-filter legend em { margin-left: 8px; color: #6f7d8a; font-size: 11px; font-style: normal; font-weight: 500; }
.filter-fields { display: grid; gap: 13px; margin-top: 13px; }
.filter-fields.three { grid-template-columns: repeat(3, 1fr); }
.filter-fields.four { grid-template-columns: repeat(4, 1fr); }
.range-input { display: grid; grid-template-columns: 1fr 18px 1fr; align-items: center; }
.range-input i { color: #9aa3ac; font-size: 10px; font-style: normal; text-align: center; }
.risk-options { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 23px; margin-top: 13px; }
.risk-options label { display: flex; align-items: center; gap: 6px; color: #455564; font-size: 12px; font-weight: 600; }
.risk-options input { width: auto; height: auto; accent-color: var(--navy); }
.risk-options p { width: 100%; margin: 0; color: #9099a2; font-size: 8px; }
.advanced-actions { display: flex; justify-content: flex-end; align-items: center; gap: 15px; padding-top: 3px; }
.advanced-actions a { padding: 10px 0; color: #74808b; font-size: 10px; text-decoration: underline; text-underline-offset: 3px; }
.advanced-actions button { display: flex; align-items: center; justify-content: space-between; min-width: 170px; height: 42px; padding: 0 15px; color: #fff; background: var(--navy); font-size: 10px; font-weight: 700; }
.listing-search + .result-heading { margin-top: -9px; }
.result-heading > div > p { margin: 6px 0 0; color: #536474; font-size: 12px; font-weight: 500; }
.sort-select { display: flex; align-items: center; gap: 8px; }
.sort-select span { color: #61707d; font-size: 11px; font-weight: 700; }
.sort-select select { height: 38px; padding: 0 30px 0 11px; border: 1px solid #c8d1d8; color: #344250; background: #fff; font-size: 12px; font-weight: 600; }
.sort-preserve { display: none; }
.result-heading { display: flex; align-items: end; justify-content: space-between; margin: 15px 0 21px; }
.result-heading h2 { margin: 0; font-family: var(--serif); font-size: 25px; }
.result-heading h2 strong { color: #a57f36; }
.result-heading p { margin: 0; color: var(--muted); font-size: 10px; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 24px; margin-top: 30px; font-size: 11px; }
.pagination a { padding: 9px 15px; border: 1px solid #ccd2d7; background: #fff; }

.detail-page { padding: 63px 0 105px; }
.back-link { display: inline-block; margin-bottom: 28px; color: var(--muted); font-size: 11px; }
.detail-title { display: flex; align-items: end; justify-content: space-between; gap: 30px; padding: 38px 42px; color: #fff; background: var(--navy); }
.detail-title p { margin: 0 0 8px; color: #93a2b1; font-size: 10px; }
.detail-title p strong { color: var(--gold-light); font-family: var(--sans); font-size: 15px; font-weight: 700; }
.detail-title h1 { margin: 0 0 15px; font-family: var(--serif); font-size: 33px; }
.detail-title aside { min-width: 180px; padding-left: 30px; border-left: 1px solid rgba(255,255,255,.16); }
.detail-title aside span, .detail-title aside strong, .detail-title aside small { display: block; }
.detail-title aside span { color: #91a1b1; font-size: 9px; }
.detail-title aside strong { margin: 6px 0 3px; color: var(--gold-light); font-family: var(--serif); font-size: 27px; }
.detail-title aside small { color: #8192a3; font-size: 9px; }
.detail-grid { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 27px; margin-top: 28px; }
.detail-card { margin-bottom: 20px; padding: 32px 37px; background: #fff; border-top: 2px solid var(--navy); }
.card-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 25px; }
.card-heading span { color: #a78642; font-family: var(--sans); font-size: 10px; font-weight: 750; }
.card-heading h2 { margin: 0; font-family: var(--serif); font-size: 21px; }
.facts { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.facts div { padding: 16px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.facts dt { color: #7b8691; font-size: 9px; }
.facts dd { margin: 6px 0 0; color: #1b2a39; font-size: 12px; font-weight: 600; }
.license-block { padding: 19px 0; border-top: 1px solid var(--line); }
.license-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.license-head small { color: #9a7a3c; font-size: 9px; }
.license-head h3 { margin: 4px 0 0; font-size: 18px; }
.license-head dl { display: flex; gap: 25px; margin: 0; }
.license-head dl div { min-width: 70px; }
.license-head dt { color: #88929b; font-size: 8px; }
.license-head dd { margin: 4px 0 0; font-size: 11px; font-weight: 700; }
.performance-row { display: grid; grid-template-columns: repeat(6, 1fr); margin-top: 18px; background: #f2f4f4; }
.performance-row div { padding: 10px 5px; border-right: 1px solid #e0e4e7; text-align: center; }
.performance-row span, .performance-row strong { display: block; }
.performance-row span { color: #7b8791; font-size: 8px; }
.performance-row strong { margin-top: 3px; font-size: 11px; }
.performance-row strong small { display: inline; margin-left: 2px; color: #5f6d78; font-size: 13px; font-weight: 750; }
.notes { color: #596675; font-size: 12px; line-height: 1.9; }
.detail-contact { position: sticky; top: 110px; align-self: start; padding: 31px 27px; color: #fff; background: var(--navy); }
.detail-contact h2 { margin: 0 0 26px; font-family: var(--serif); font-size: 22px; line-height: 1.55; }
.detail-contact .button { width: 100%; min-width: 0; margin-bottom: 9px; }
.detail-contact small { display: block; margin-top: 12px; color: #8fa0b0; font-size: 9px; line-height: 1.6; }

.contact-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; padding: 100px 0; }
.contact-info h2 { margin: 0 0 25px; font-family: var(--serif); font-size: 34px; line-height: 1.5; letter-spacing: -.045em; }
.contact-number { display: inline-block; margin-bottom: 36px; color: #a57e34; font-family: var(--sans); font-size: 42px; font-weight: 750; }
.contact-info dl { margin: 0; border-top: 1px solid #cdd3d8; }
.contact-info dl div { display: grid; grid-template-columns: 85px 1fr; padding: 15px 0; border-bottom: 1px solid #dfe3e6; font-size: 11px; }
.contact-info dt { color: #7a8691; }
.contact-info dd { margin: 0; }
.inquiry-card { padding: 38px; background: #fff; box-shadow: 0 14px 40px rgba(7,25,45,.08); }
.inquiry-card form { display: grid; grid-template-columns: 1fr 1fr; gap: 19px 15px; }
.inquiry-card form label:nth-of-type(4), .inquiry-card form label:nth-of-type(5), .consent-field, .inquiry-card form button, .privacy-note { grid-column: 1 / -1; }
.inquiry-card label > span { display: block; margin-bottom: 7px; color: #5e6b78; font-size: 10px; }
.inquiry-card input:not([type=checkbox]), .inquiry-card select, .inquiry-card textarea { width: 100%; padding: 10px 12px; border: 1px solid #d7dde2; background: #fff; font-size: 12px; }
.inquiry-card input:not([type=checkbox]), .inquiry-card select { height: 43px; }
.inquiry-card textarea { min-height: 130px; resize: vertical; }
.consent-field { display: flex; align-items: center; gap: 8px; }
.consent-field > span { order: 2; margin: 0 !important; }
.inquiry-card button { display: flex; align-items: center; justify-content: space-between; height: 52px; padding: 0 20px; border: 0; color: #fff; background: var(--navy); cursor: pointer; font-weight: 700; }
.inquiry-card button span { color: var(--gold); }
.privacy-note { margin: -8px 0 0; color: #9099a2; font-size: 8px; }
.field-error { display: block; margin-top: 5px; color: #b14136; font-size: 9px; }
.success-message { grid-column: 1/-1; margin-bottom: 20px; padding: 19px; color: #206b48; background: #e7f4ed; }
.success-message p { margin: 4px 0 0; font-size: 10px; }

.service-hero { position: relative; min-height: 480px; overflow: hidden; color: #fff; background: linear-gradient(120deg, #04111f, #0d2d4b); }
.service-hero .container { position: relative; z-index: 2; padding-top: 85px; }
.service-number { position: absolute; top: 42px; right: 7%; color: rgba(226,194,119,.11); font-family: var(--sans); font-size: 235px; font-weight: 800; line-height: 1; }
.service-hero h1 { margin: 0 0 17px; font-family: var(--serif); font-size: 48px; }
.service-hero .container > p:not(.eyebrow) { max-width: 590px; margin: 0 0 29px; color: #a7b5c2; font-size: 14px; line-height: 1.8; }
.service-lines i { position: absolute; top: -30%; width: 1px; height: 160%; background: rgba(226,194,119,.1); transform: rotate(28deg); }
.service-lines i:nth-child(1) { right: 15%; }.service-lines i:nth-child(2) { right: 35%; }.service-lines i:nth-child(3) { right: 55%; }
.service-content { padding: 100px 0; }
.process-grid { display: grid; grid-template-columns: repeat(4,1fr); margin-bottom: 70px; border-top: 2px solid var(--navy); }
.process-grid article { min-height: 205px; padding: 27px 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }
.process-grid article:first-child { border-left: 1px solid var(--line); }
.process-grid article > span { color: #a17c35; font-family: var(--sans); font-size: 10px; font-weight: 750; }
.process-grid h3 { margin: 38px 0 12px; font-family: var(--serif); font-size: 17px; }
.process-grid p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.75; }
.service-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 43px 48px; color: #fff; background: var(--navy); }
.service-cta h2 { margin: 0 0 8px; font-family: var(--serif); font-size: 27px; }
.service-cta p:last-child { margin: 0; color: #95a4b2; font-size: 10px; }
.legal-copy { padding: 80px 0 120px; max-width: 900px; }
.legal-copy h2 { margin: 37px 0 10px; font-family: var(--serif); font-size: 20px; }
.legal-copy p { color: #596775; font-size: 12px; line-height: 1.85; }

.operations-main { min-height: 100vh; padding-bottom: 100px; background: #eef1f4; }
.operations-hero { padding: 55px 0 72px; color: #fff; background: linear-gradient(118deg, #04111f, #0b2b49); }
.operations-hero .container { display: flex; align-items: end; justify-content: space-between; gap: 35px; }
.operations-hero h1 { margin: 0 0 11px; font-family: var(--serif); font-size: 36px; }
.operations-hero p:last-child { margin: 0; color: #9babb9; font-size: 11px; }
.operations-actions { display: flex; gap: 8px; }
.operations-actions a { padding: 11px 15px; border: 1px solid rgba(255,255,255,.23); font-size: 10px; }
.operations-actions form { margin: 0; }
.operations-actions button { height: 100%; padding: 11px 15px; border: 1px solid rgba(255,115,99,.48); color: #ffd3ce; background: transparent; cursor: pointer; font: inherit; font-size: var(--text-caption); }
.operations-form { position: relative; margin-top: -34px; }
.operations-alert { margin-bottom: 14px; padding: 17px 21px; border-left: 3px solid; background: #fff; font-size: 11px; }
.operations-alert p { margin: 3px 0; }
.operations-alert.success { border-color: #2d9566; color: #236f4e; }
.operations-alert.error { border-color: #c1483b; color: #9a352b; }
.operations-card { margin-bottom: 16px; padding: 30px 34px 35px; border-top: 2px solid var(--navy); background: #fff; box-shadow: 0 8px 24px rgba(7,25,45,.04); }
.operations-card-heading { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 26px; }
.operations-card-heading > span { padding-top: 4px; color: #a17b34; font-family: var(--sans); font-size: 10px; font-weight: 750; }
.operations-card-heading h2 { margin: 0 0 5px; font-family: var(--serif); font-size: 20px; }
.operations-card-heading p { margin: 0; color: #7c8792; font-size: 9px; }
.operations-grid { display: grid; gap: 17px 14px; }
.operations-grid.four { grid-template-columns: repeat(4,1fr); }
.operations-grid.two { grid-template-columns: repeat(2,1fr); }
.ops-field { min-width: 0; }
.ops-field > span { display: block; margin-bottom: 7px; color: #596675; font-size: 9px; font-weight: 600; }
.ops-field input:not([type=checkbox]), .ops-field select, .ops-field textarea { width: 100%; border: 1px solid #d4dbe1; border-radius: 0; outline: 0; color: #253443; background: #fff; font-size: 11px; }
.ops-field input:not([type=checkbox]), .ops-field select { height: 40px; padding: 0 10px; }
.ops-field textarea { padding: 10px; resize: vertical; }
.ops-field input:focus, .ops-field select:focus, .ops-field textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 2px rgba(200,165,87,.1); }
.ops-field small { display: block; margin-top: 5px; color: #8a949e; font-size: 8px; }
.ops-field .errorlist { padding: 0; margin: 5px 0 0; color: #b13e33; font-size: 8px; list-style: none; }
.ops-field.span-two { grid-column: span 2; }
.checkbox-stack { display: flex; flex-wrap: wrap; align-content: start; gap: 8px 15px; }
.checkbox-stack > span { flex-basis: 100%; }
.checkbox-stack i { display: flex; align-items: center; gap: 5px; height: 40px; font-size: 10px; font-style: normal; }
.split-card { display: grid; grid-template-columns: 1fr 1fr; gap: 55px; }
.license-editor-wrap { overflow-x: auto; border-top: 2px solid var(--navy); }
.license-editor { width: 100%; min-width: 1180px; border-collapse: collapse; table-layout: fixed; }
.license-editor th { height: 40px; padding: 7px 4px; border: 1px solid #d6dde3; color: #596777; background: #eef1f3; font-size: 8px; }
.license-editor th:nth-child(1) { width: 135px; }.license-editor th:nth-child(2) { width: 115px; }.license-editor th:nth-child(3) { width: 73px; }
.license-editor td { position: relative; height: 47px; padding: 4px; border: 1px solid #dce2e7; text-align: center; }
.license-editor input, .license-editor select { width: 100%; height: 34px; padding: 0 5px; border: 0; outline: 0; background: transparent; font-size: 9px; text-align: center; }
.license-editor input:focus, .license-editor select:focus { background: #fffaf0; box-shadow: inset 0 0 0 1px var(--gold); }
.license-label { position: absolute; z-index: 1; top: 2px; left: 3px; color: #a28243; font-family: var(--sans); font-size: 8px; font-weight: 750; }
.license-editor output { color: #1a3149; font-size: 10px; font-weight: 700; }
.license-error td { height: auto; padding: 6px 10px; color: #a7382d; background: #fff1ef; font-size: 8px; text-align: left; }
.editor-note { margin: 15px 0 0; color: #7e8994; font-size: 9px; line-height: 1.7; }
.editor-note strong { margin-right: 7px; color: #85682e; }
.operations-submit { position: sticky; z-index: 20; bottom: 15px; display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 17px 19px 17px 25px; color: #fff; background: rgba(7,25,45,.97); box-shadow: 0 12px 35px rgba(0,0,0,.2); backdrop-filter: blur(12px); }
.operations-submit p { margin: 0; color: #96a5b3; font-size: 9px; }
.operations-submit button { display: flex; align-items: center; justify-content: space-between; min-width: 170px; height: 44px; padding: 0 16px; border: 0; color: var(--navy); background: var(--gold); cursor: pointer; font-size: 11px; font-weight: 700; }
.operations-submit button span { font-size: 16px; }

.reveal { opacity: 0; transform: translateY(30px); transition: opacity .75s ease, transform .75s cubic-bezier(.22,.72,.25,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.service-card.reveal:nth-child(2), .home-process .reveal:nth-child(2) { transition-delay: .08s; }
.service-card.reveal:nth-child(3), .home-process .reveal:nth-child(3) { transition-delay: .16s; }
.service-card.reveal:nth-child(4), .home-process .reveal:nth-child(4) { transition-delay: .24s; }
.service-card.reveal:nth-child(5) { transition-delay: .32s; }

@keyframes wordUp { to { transform: translateY(0); } }
@keyframes heroFade { to { opacity: 1; transform: translateY(0); } }
@keyframes gridDrift { to { background-position: 48px 48px; } }
@keyframes orbitPulse { 50% { opacity: .5; transform: scale(1.035); } }
@keyframes monogramFloat { 50% { transform: rotate(3deg) translateY(-10px); } }
@keyframes cardFloat { 50% { transform: translateY(-12px); } }
@keyframes scrollDrop { 0% { transform: translateY(0); } 100% { transform: translateY(55px); } }

@media (max-width: 1080px) {
  .listing-card { grid-template-columns: 78px minmax(220px, 1.25fr) minmax(230px, 1fr) 125px; }
  .listing-card-meta { display: none; }
  .main-nav { gap: 18px; }
  .main-nav a { font-size: 11px; }
  .header-consult { display: none; }
  .home-hero-grid { grid-template-columns: 1fr .72fr; }
  .monogram { right: -35px; }
  .card-bottom { right: -25px; }
  .quick-search { grid-template-columns: 1.15fr 1fr 1fr 1.2fr 120px; }
  .expertise-copy { padding: 70px 45px; }
  .detail-grid { grid-template-columns: minmax(0,1fr) 260px; }
}

@media (min-width: 1401px) and (max-width: 1599px) {
  .public-site .container { width: min(1180px, calc(100% - 300px)); }
}

@media (max-width: 1400px) {
  .consult-side-dock { display: none; }
}

@media (max-width: 860px) {
  .listing-card { grid-template-columns: 78px minmax(220px, 1fr) minmax(240px, 1fr) 118px; }
  .listing-card-number, .listing-card-overview, .listing-card-metrics, .listing-card-price { padding: 17px 12px; }
  .listing-card-metrics div { padding: 4px 7px; }
  .container { width: min(100% - 38px, 1280px); }
  .top-notice { display: none; }
  .site-header { height: 72px; }
  .main-nav { display: none; }
  .menu-toggle { display: block; }
  .menu-toggle[aria-expanded=true] span:first-child { transform: translateY(4px) rotate(45deg); }
  .menu-toggle[aria-expanded=true] span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .mobile-nav { position: fixed; inset: 72px 0 auto; display: grid; max-height: 0; overflow: hidden; color: #fff; background: var(--navy-deep); transition: max-height .35s; }
  .mobile-nav.is-open { max-height: calc(100vh - 72px); padding: 15px 20px 28px; }
  .mobile-nav a { padding: 15px 4px; border-bottom: 1px solid rgba(255,255,255,.09); font-size: 14px; }
  .home-hero { min-height: auto; }
  .home-hero-grid { grid-template-columns: 1fr; min-height: 620px; padding: 76px 0 60px; }
  .quick-consult-card { width: min(100%, 620px); margin-top: 42px; justify-self: start; }
  .hero-copy { position: relative; z-index: 3; }
  .hero-visual { position: absolute; top: 95px; right: -120px; width: 420px; opacity: .42; }
  .floating-card { display: none; }
  .hero-bottom { padding-bottom: 35px; }
  .scroll-hint { display: none; }
  .hero-stats { width: 100%; }
  .quick-search-section { height: auto; padding: 20px 0 0; background: #fff; }
  .quick-search { top: 0; grid-template-columns: 1fr 1fr; width: min(100% - 38px, 1280px); min-height: 0; padding: 25px 20px; box-shadow: 0 10px 35px rgba(6,24,42,.11); }
  .search-title { grid-column: 1/-1; padding: 0 0 20px; margin-bottom: 8px; border-right: 0; border-bottom: 1px solid var(--line); }
  .search-title strong br { display: none; }
  .search-title a { margin-top: 6px; }
  .quick-search label { padding: 9px; }
  .quick-search .keyword { grid-column: 1/-1; }
  .quick-search button { grid-column: 1/-1; margin-top: 10px; }
  .section-space { padding: 85px 0; }
  .section-heading { align-items: flex-start; }
  .service-grid { grid-template-columns: repeat(2,1fr); }
  .service-card.feature { grid-row: auto; min-height: 310px; }
  .feature .service-icon { margin: 0 0 63px; transform: none; }
  .expertise-section { grid-template-columns: 1fr; }
  .expertise-image { min-height: 360px; }
  .expertise-copy { max-width: none; padding: 75px 7%; }
  .final-cta .container { align-items: flex-start; flex-direction: column; }
  .filter-panel { grid-template-columns: 1fr 1fr; }
  .filter-panel button { grid-column: 1/-1; }
  .search-main-row { grid-template-columns: 1.1fr 1fr 1fr; }
  .search-keyword { grid-column: span 2; }
  .search-main-row > button { grid-column: span 1; }
  .filter-fields.four { grid-template-columns: repeat(2, 1fr); }
  .detail-grid { grid-template-columns: 1fr; }
  .detail-contact { position: static; }
  .contact-layout { grid-template-columns: 1fr; gap: 50px; }
  .process-grid { grid-template-columns: repeat(2,1fr); }
  .operations-grid.four { grid-template-columns: repeat(2,1fr); }
  .split-card { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  body { padding-bottom: 62px; }
  .container { width: calc(100% - 30px); }
  .site-header .container { width: calc(100% - 26px); }
  .brand-mark { width: 36px; height: 36px; font-size: 22px; }
  .brand strong { font-size: 16px; }
  .brand small { font-size: 6px; }
  .home-hero-grid { min-height: 590px; padding-top: 64px; }
  .hero-copy h1 { font-size: 38px; line-height: 1.32; }
  .hero-lead { font-size: 13px; }
  .desktop-only { display: none; }
  .hero-actions { flex-direction: column; }
  .quick-consult-card { width: 100%; margin-top: 34px; padding: 24px 18px; }
  .quick-consult-heading h2 { font-size: 26px; }
  .quick-consult-row { grid-template-columns: 1fr; }
  .button { width: 100%; }
  .hero-services { gap: 6px; margin-top: 28px; font-size: 12px; }
  .hero-services li { min-height: 31px; padding: 0 10px; }
  .hero-visual { top: 70px; right: -230px; }
  .hero-bottom { padding: 0 0 25px; }
  .hero-stats div { padding-left: 11px; }
  .hero-stats strong { font-size: 22px; }
  .hero-stats span { font-size: 10px; }
  .quick-search { grid-template-columns: 1fr; width: calc(100% - 24px); }
  .search-title, .quick-search .keyword, .quick-search button { grid-column: auto; }
  .quick-search label { padding: 7px 0; }
  .quick-search input, .quick-search select { width: 100%; }
  .section-space { padding: 72px 0; }
  .section-heading { display: block; margin-bottom: 34px; }
  .section-heading h2 { font-size: 30px; }
  .heading-copy { margin-top: 19px; font-size: 12px; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card, .service-card.feature { min-height: 285px; }
  .service-card h3 { font-size: 25px; }
  .service-card > strong { font-size: 14px; }
  .expertise-image { min-height: 290px; }
  .expertise-copy { padding: 65px 24px; }
  .expertise-copy h2 { font-size: 30px; }
  .listing-table-wrap { margin-right: -15px; margin-left: -15px; }
  .listing-cards { gap: 9px; }
  .listing-card { grid-template-columns: 1fr auto; border-left-width: 3px; }
  .listing-card-number { grid-column: 1; grid-row: 1; flex-direction: row; align-items: center; justify-content: flex-start; gap: 8px; padding: 14px 15px 0; border: 0; }
  .listing-card-number span { margin: 0; font-size: 8px; }
  .listing-card-number strong { font-size: 13px; }
  .listing-card-overview { grid-column: 1 / -1; grid-row: 2; padding: 8px 15px 14px; }
  .listing-card-badges { position: absolute; top: 12px; right: 12px; min-height: 0; margin: 0; }
  .listing-card { position: relative; }
  .listing-card-title { padding-right: 4px; font-size: 15px; white-space: normal; }
  .listing-card-overview p { white-space: normal; }
  .listing-card-metrics { grid-column: 1 / -1; grid-row: 3; padding: 10px 7px; border-top: 1px solid #e7eaed; background: #f8fafb; }
  .listing-card-metrics dt { margin-bottom: 5px; }
  .listing-card-metrics dd { font-size: 12px; }
  .listing-card-price { grid-column: 1 / -1; grid-row: 4; align-items: center; flex-direction: row; justify-content: flex-start; gap: 9px; padding: 12px 15px; border-top: 1px solid #e7eaed; border-left: 0; text-align: left; }
  .listing-card-price > span { margin: 0; }
  .listing-card-price strong { font-size: 16px; }
  .listing-card-price a { margin: 0 0 0 auto; }
  .consult-strip { align-items: flex-start; flex-direction: column; }
  .home-process { grid-template-columns: 1fr 1fr; row-gap: 49px; margin-top: 52px; }
  .home-process::before { display: none; }
  .contact-channel-section { padding: 62px 0; }
  .contact-channel-section .container { grid-template-columns: 1fr; gap: 28px; }
  .contact-channel-heading h2 { font-size: 28px; }
  .contact-channel-grid { grid-template-columns: 1fr 1fr; }
  .contact-channel-button { min-height: 136px; padding: 17px; }
  .contact-channel-button strong { font-size: 16px; }
  .final-cta { padding: 65px 0; }
  .cta-actions { width: 100%; flex-direction: column; }
  .cta-phone { text-align: center; }
  .footer-grid { grid-template-columns: 1fr; gap: 27px; }
  .footer-bottom { flex-direction: column; gap: 8px; }
  .mobile-quick { position: fixed; z-index: 80; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 1fr; height: 62px; color: #fff; box-shadow: 0 -6px 24px rgba(0,0,0,.15); }
  .mobile-quick a { display: flex; align-items: center; justify-content: center; flex-direction: column; background: var(--navy); font-size: 11px; }
  .mobile-quick a:first-child { color: var(--navy); background: var(--gold); }
  .mobile-quick span { font-size: 8px; }
  .mobile-quick strong { font-family: var(--sans); font-size: 16px; font-weight: 750; }
  .inner-hero { min-height: 270px; }
  .inner-hero .container { padding-top: 64px; }
  .inner-hero h1 { font-size: 35px; }
  .listing-search-page .inner-hero { min-height: 185px; }
  .listing-search-page .inner-hero .container { padding-top: 36px; }
  .listing-search-page .inner-hero h1 { font-size: 30px; }
  .listing-search-page .inner-hero p:last-child { font-size: 12px; }
  .filter-panel { top: -25px; grid-template-columns: 1fr; }
  .filter-panel button { grid-column: auto; }
  .listing-search { top: -25px; }
  .search-main-row { grid-template-columns: 1fr 1fr; padding: 19px 15px; }
  .search-keyword { grid-column: 1 / -1; }
  .search-main-row > button { grid-column: 1 / -1; }
  .quick-filter-row { padding: 9px 15px; }
  .advanced-filter summary { align-items: flex-start; flex-wrap: wrap; gap: 4px 10px; padding: 15px; }
  .advanced-filter summary span { flex-basis: calc(100% - 32px); }
  .advanced-filter summary small { flex-basis: calc(100% - 32px); }
  .advanced-filter summary b { position: absolute; right: 15px; }
  .advanced-filter { position: relative; }
  .advanced-filter-body { padding: 0 15px 18px; }
  .filter-fields.three, .filter-fields.four { grid-template-columns: 1fr; }
  .advanced-filter fieldset { padding: 16px 0; }
  .risk-options { align-items: flex-start; flex-direction: column; }
  .advanced-actions { justify-content: space-between; }
  .advanced-actions button { min-width: 155px; }
  .listing-search + .result-heading { margin-top: -5px; }
  .sort-select { margin-top: 17px; }
  .result-heading p { display: none; }
  .detail-page { padding-top: 35px; }
  .detail-title { align-items: flex-start; flex-direction: column; padding: 29px 25px; }
  .detail-title aside { width: 100%; padding: 17px 0 0; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
  .detail-card { padding: 27px 20px; }
  .facts { grid-template-columns: 1fr 1fr; }
  .license-head { align-items: flex-start; flex-direction: column; }
  .license-head dl { display: grid; grid-template-columns: 1fr 1fr; width: 100%; gap: 12px; }
  .performance-row { grid-template-columns: repeat(4,1fr); }
  .contact-layout { padding: 72px 0; }
  .contact-info h2 { font-size: 28px; }
  .inquiry-card { padding: 27px 20px; }
  .inquiry-card form { grid-template-columns: 1fr; }
  .inquiry-card form label, .inquiry-card form button, .privacy-note { grid-column: auto !important; }
  .service-hero { min-height: 430px; }
  .service-hero h1 { font-size: 38px; }
  .service-number { top: 110px; right: -10px; font-size: 170px; }
  .service-content { padding: 72px 0; }
  .process-grid { grid-template-columns: 1fr; }
  .service-cta { align-items: flex-start; flex-direction: column; padding: 34px 25px; }
  .operations-main { padding-bottom: 70px; }
  .operations-hero { padding: 45px 0 64px; }
  .operations-hero .container { align-items: flex-start; flex-direction: column; }
  .operations-card { padding: 26px 18px; }
  .operations-grid.four, .operations-grid.two { grid-template-columns: 1fr; }
  .ops-field.span-two { grid-column: auto; }
  .operations-submit { align-items: stretch; flex-direction: column; bottom: 70px; padding: 16px; }
  .operations-submit button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
  .word-line i { transform: none; }
}

@keyframes trustImageDrift {
  from { transform: scale(1.025) translate3d(0, 0, 0); }
  to { transform: scale(1.075) translate3d(-1.2%, -.8%, 0); }
}

/*
 * Global readability policy
 * New screens inherit the 16px body baseline above. Legacy components that
 * previously used decorative 8–11px type are normalized here.
 */
.eyebrow,
.brand small,
.scroll-hint,
.service-card > p { display: none; }

.top-notice,
.hero-services,
.hero-stats span,
.text-link,
.consult-strip p,
.consult-strip > a,
.final-cta p:last-child,
.site-footer,
.inner-hero p:last-child,
.pagination,
.back-link,
.notes,
.legal-copy p,
.operations-hero p:last-child,
.operations-alert,
.operations-submit p { font-size: var(--text-support); font-weight: var(--weight-body); }

.quick-search label > span,
.filter-panel label > span,
.listing-search label > span,
.quick-filter-row > span,
.sort-select span,
.inquiry-card label > span,
.ops-field > span,
.card-heading span,
.facts dt,
.license-head small,
.license-head dt,
.performance-row span,
.contact-info dl div,
.footer-grid > div > strong,
.cta-phone span { font-size: var(--text-label); font-weight: var(--weight-label); }

.main-nav a { font-size: var(--text-label); font-weight: var(--weight-label); }
.range-input i { font-size: var(--text-caption); }

.quick-search input,
.quick-search select,
.quick-search button,
.filter-panel input,
.filter-panel select,
.filter-panel button,
.listing-search input,
.listing-search select,
.search-main-row > button,
.advanced-actions button,
.sort-select select,
.inquiry-card input:not([type=checkbox]),
.inquiry-card select,
.inquiry-card textarea,
.ops-field input:not([type=checkbox]),
.ops-field select,
.ops-field textarea,
.operations-submit button { font-size: var(--text-support); font-weight: 600; }

.status,
.listing-table th,
.listing-card-number span,
.listing-card-price > span,
.listing-card-metrics dt,
.listing-card-meta dt,
.advanced-filter summary small,
.advanced-filter legend,
.advanced-filter legend em,
.risk-options label,
.risk-options p,
.advanced-actions a,
.result-heading > div > p,
.result-heading p,
.detail-title p,
.detail-title aside span,
.detail-title aside small,
.detail-contact small,
.privacy-note,
.field-error,
.success-message p,
.process-grid article > span,
.process-grid p,
.service-cta p:last-child,
.operations-actions a,
.operations-card-heading > span,
.operations-card-heading p,
.ops-field small,
.ops-field .errorlist,
.checkbox-stack i,
.license-editor th,
.license-editor input,
.license-editor select,
.license-editor output,
.license-error td,
.editor-note { font-size: var(--text-caption); }

.listing-table { font-size: var(--text-support); }
.listing-table td { font-weight: var(--weight-body); }
.listing-card-overview p,
.listing-card-meta dd,
.listing-card-price a,
.facts dd,
.license-head dd,
.performance-row strong { font-size: var(--text-support); }
.listing-card-title { font-size: 17px; }
.listing-card-metrics dd { font-size: 16px; }
.listing-card-price strong { font-size: 19px; }
.result-heading h2 { font-size: 28px; }

.service-card h3 { font-size: 28px; }
.service-card > strong { font-size: 16px; font-weight: 600; }
.service-card > b { font-size: var(--text-support); }
.expertise-copy > p:not(.eyebrow) { font-size: var(--text-body); }
.expertise-copy dd strong { font-size: 18px; }
.expertise-copy dd span { font-size: var(--text-support); }
.home-process li > span { font-size: var(--text-label); }
.home-process h3 { font-size: 21px; }
.home-process p { font-size: var(--text-support); }

/* Semantic colour system: colour communicates service, metric and action type. */
.hero-services li:nth-child(1) { color: #f1d794; border-color: rgba(226,194,119,.72); background: rgba(200,165,87,.12); }
.hero-services li:nth-child(2) { color: #8dd7c8; border-color: rgba(134,197,183,.62); background: rgba(36,121,111,.14); }
.hero-services li:nth-child(3) { color: #a9d1ef; border-color: rgba(142,184,221,.62); background: rgba(53,111,156,.14); }
.hero-services li:nth-child(4) { color: #d0b5e4; border-color: rgba(196,164,220,.62); background: rgba(116,85,143,.14); }
.hero-services li:nth-child(5) { color: #efb79f; border-color: rgba(228,164,127,.62); background: rgba(184,98,72,.14); }
.hero-stats div:nth-child(2) strong { color: #8dd7c8; }
.hero-stats div:nth-child(3) strong { color: #a9d1ef; }
.quick-consult-card { border-top: 0; }
.quick-consult-card::before,
.quick-search::before { content: ""; position: absolute; top: 0; right: 0; left: 0; height: 4px; background: linear-gradient(90deg, var(--gold) 0 22%, var(--teal) 22% 42%, var(--blue) 42% 62%, var(--violet) 62% 82%, var(--coral) 82%); }
.search-title { position: relative; padding-left: 20px; }
.search-title::before { content: ""; position: absolute; top: 17px; bottom: 17px; left: 5px; width: 4px; background: var(--gold); }

.service-card { --service-card-accent: var(--gold); --service-card-soft: var(--gold-pale); box-shadow: inset 0 4px 0 var(--service-card-accent); }
.service-card.service-registration { --service-card-accent: var(--teal); --service-card-soft: var(--teal-pale); }
.service-card.service-diagnosis { --service-card-accent: var(--blue); --service-card-soft: var(--blue-pale); }
.service-card.service-merger { --service-card-accent: var(--violet); --service-card-soft: var(--violet-pale); }
.service-card.service-year-end { --service-card-accent: var(--coral); --service-card-soft: var(--coral-pale); }
.service-card:not(.feature) { background: linear-gradient(135deg, var(--service-card-soft), #fff 48%); }
.service-card:not(.feature):hover { color: var(--navy); border-color: var(--service-card-accent); background: linear-gradient(135deg, var(--service-card-soft), #fff 78%); box-shadow: inset 0 4px 0 var(--service-card-accent), 0 18px 35px rgba(7,25,45,.12); }
.service-card.feature { background: radial-gradient(circle at 85% 80%, rgba(200,165,87,.17), transparent 34%), var(--navy); box-shadow: inset 0 4px 0 var(--gold); }
.service-card .service-index { display: grid; width: 39px; height: 39px; place-items: center; color: var(--service-card-accent); border: 1px solid color-mix(in srgb, var(--service-card-accent) 45%, #fff); background: var(--service-card-soft); }
.service-card.feature .service-index { color: var(--gold-light); border-color: rgba(226,194,119,.45); background: rgba(226,194,119,.09); }
.service-card .service-icon i { border-color: var(--service-card-accent); }
.service-card .service-icon i:last-child { background: color-mix(in srgb, var(--service-card-accent) 15%, transparent); }
.service-card h3 { color: var(--navy); }
.service-card.feature h3 { color: #fff; }
.service-card > strong { color: #4f6070; line-height: 1.75; }
.service-card.feature > strong { color: #c1ccd5; }
.service-card > b i { color: var(--service-card-accent); }
.service-hub .heading-copy,
.latest-section .section-heading p { color: #4f6070; font-size: var(--text-body); line-height: 1.8; }

.expertise-copy dl div:nth-child(1) dt { color: #8dd7c8; border-color: rgba(134,197,183,.65); background: rgba(36,121,111,.14); }
.expertise-copy dl div:nth-child(2) dt { color: #a9d1ef; border-color: rgba(142,184,221,.65); background: rgba(53,111,156,.14); }
.expertise-copy dl div:nth-child(3) dt { color: #d0b5e4; border-color: rgba(196,164,220,.65); background: rgba(116,85,143,.14); }

.listing-table-wrap { border-top-color: var(--gold); }
.listing-table th:nth-child(2) { color: var(--green); background: var(--green-pale); }
.listing-table th:nth-child(5),
.listing-table th:nth-child(6) { color: var(--blue); background: var(--blue-pale); }
.listing-table th:nth-child(7) { color: var(--teal); background: var(--teal-pale); }
.listing-table th:nth-child(10) { color: #8c671e; background: var(--gold-pale); }
.listing-table td:nth-child(5),
.listing-table td:nth-child(6) { color: var(--blue); font-weight: 750; }
.listing-table td:nth-child(7) { color: var(--teal); font-weight: 750; }
.listing-table td:nth-child(10) strong { color: #936d25; font-size: 16px; }
.listing-card { border-left-color: var(--gold); }
.listing-card-metrics div:nth-child(1) { background: var(--blue-pale); }
.listing-card-metrics div:nth-child(2) { background: #f0f4fa; }
.listing-card-metrics div:nth-child(3) { background: var(--teal-pale); }
.listing-card-metrics div:nth-child(1) dd,
.listing-card-metrics div:nth-child(2) dd { color: var(--blue); }
.listing-card-metrics div:nth-child(3) dd { color: var(--teal); }
.listing-card-price { background: var(--gold-pale); }
.listing-card-yearly { grid-column: 1 / -1; padding: 14px 16px 16px; border-top: 1px solid #dfe5e9; background: #f8fafb; }
.listing-card-yearly-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 9px; }
.listing-card-yearly-heading strong { color: var(--navy); font-size: 14px; font-weight: 800; }
.listing-card-yearly-heading span { color: #667583; font-size: 13px; font-weight: 650; }
.listing-card-yearly-licenses { display: grid; gap: 6px; }
.listing-card-yearly-license { display: grid; grid-template-columns: 170px minmax(0,1fr); min-width: 0; border: 1px solid #dbe2e7; background: #fff; }
.listing-card-yearly-trade { display: grid; align-content: center; gap: 2px; min-width: 0; padding: 9px 13px; border-right: 1px solid #dbe2e7; }
.listing-card-yearly-trade small { overflow: hidden; color: #6b7986; font-size: 12px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.listing-card-yearly-trade strong { overflow: hidden; color: #193b58; font-size: 15px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.listing-card-yearly-values { display: grid; grid-template-columns: repeat(6,minmax(64px,1fr)); min-width: 0; }
.listing-card-yearly-values div { display: grid; min-width: 0; align-content: center; gap: 2px; padding: 8px 5px; border-right: 1px solid #e5e9ec; text-align: center; }
.listing-card-yearly-values div:last-child { border-right: 0; }
.listing-card-yearly-values span { color: #6b7884; font-size: 12px; font-weight: 700; }
.listing-card-yearly-values b { color: var(--blue); font-size: 15px; font-weight: 800; }
.listing-card-yearly-empty { margin: 0; padding: 10px 12px; color: #687785; font-size: 13px; background: #fff; }

.home-process li { --process-accent: var(--gold-light); padding: 0 16px; }
.home-process .process-review { --process-accent: #8dd7c8; }
.home-process .process-execute { --process-accent: #a9d1ef; }
.home-process .process-complete { --process-accent: #d0b5e4; }
.home-process li > span { display: inline-grid; min-width: 42px; height: 30px; place-items: center; color: var(--process-accent); border: 1px solid color-mix(in srgb, var(--process-accent) 50%, transparent); background: color-mix(in srgb, var(--process-accent) 10%, transparent); }
.home-process li > i { background: var(--process-accent); box-shadow: 0 0 0 1px color-mix(in srgb, var(--process-accent) 60%, transparent); }
.home-process p { color: #c5d0d9; font-size: 15px; line-height: 1.8; }

.detail-summary-grid article { --summary-accent: var(--gold); border-top: 4px solid var(--summary-accent); background: #fff; }
.detail-summary-grid article.summary-capacity { --summary-accent: var(--teal); background: var(--teal-pale); }
.detail-summary-grid article.summary-performance { --summary-accent: var(--blue); background: var(--blue-pale); }
.detail-summary-grid article.summary-capital { --summary-accent: var(--violet); background: var(--violet-pale); }
.detail-summary-grid article.summary-association { --summary-accent: var(--coral); background: var(--coral-pale); }
.detail-summary-grid article:not(.primary) strong { color: var(--summary-accent); }
.detail-summary-grid article.primary { border-top-color: var(--gold-light); }

.detail-contact-kicker { margin: 0 0 8px; color: var(--gold-light); font-size: 13px; font-weight: 800; }
.listing-contact-info { margin: 0 0 20px; border-top: 1px solid rgba(255,255,255,.18); }
.listing-contact-info div { display: grid; gap: 4px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.13); }
.listing-contact-info dt { color: #9babb9; font-size: 12px; font-weight: 650; }
.listing-contact-info dd { margin: 0; color: #fff; font-size: 15px; font-weight: 750; }
.listing-contact-info a { color: inherit; }
.listing-contact-info .manager-position { display: inline-block; margin-left: 6px; padding: 2px 7px; color: #ffe29a; background: rgba(255,255,255,.1); border: 1px solid rgba(255,226,154,.35); font-size: 11px; font-weight: 800; vertical-align: 1px; }
.detail-contact small { font-size: 12px; }

.detail-overview { overflow: hidden; color: #fff; background: var(--navy); }
.detail-record-meta { display: flex; min-height: 56px; align-items: center; gap: 18px; padding: 0 36px; border-bottom: 1px solid rgba(255,255,255,.14); }
.detail-record-meta strong { color: var(--gold-light); font-size: 16px; }
.detail-record-meta span { padding: 5px 9px; color: #8ef0c2; background: rgba(49,175,117,.14); font-size: 12px; font-weight: 800; }
.detail-record-meta time { color: #b8c4ce; font-size: 12px; }
.detail-record-meta time:first-of-type { margin-left: auto; }
.detail-overview .detail-title { background: transparent; }
.detail-title-flags { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 13px; }
.detail-title-flags span,
.detail-title-flags b { padding: 5px 9px; color: #c6d0d9; border: 1px solid rgba(255,255,255,.2); font-size: 12px; font-weight: 750; }
.detail-title-flags b { color: #111e2b; background: var(--gold-light); border-color: var(--gold-light); }
.detail-title-flags b.urgent { color: #fff; background: #b54b43; border-color: #b54b43; }
.detail-overview .detail-title p { margin: 0; color: #b1bec9; font-size: 14px; }
.detail-summary-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 10px; margin-top: 14px; }
.detail-summary-grid article { display: grid; min-height: 105px; align-content: center; gap: 8px; padding: 18px; background: #fff; border: 1px solid #dbe1e5; }
.detail-summary-grid article.primary { color: #fff; background: var(--navy); border-color: var(--navy); }
.detail-summary-grid span { color: #687785; font-size: 12px; font-weight: 750; }
.detail-summary-grid strong { color: var(--navy); font-size: 20px; font-weight: 800; }
.detail-summary-grid .primary span { color: #aab8c5; }
.detail-summary-grid .primary strong { color: #ff727b; }
.detail-page .detail-title aside span,
.detail-page .detail-title aside small { font-size: 13px; font-weight: 650; }
.detail-page .detail-title aside strong { font-size: 30px; }
.detail-page .detail-summary-grid span { font-size: 13px; }
.detail-page .detail-summary-grid strong { font-size: 22px; }
.detail-page .facts dt,
.detail-page .license-head small,
.detail-page .license-head dt { font-size: 14px; font-weight: 700; }
.detail-page .facts dd { font-size: 16px; font-weight: 700; }
.detail-page .license-head dd { font-size: 15px; }
.detail-page .performance-row span { font-size: 13px; font-weight: 700; }
.detail-page .performance-row strong { font-size: 17px; font-weight: 800; }
.detail-page .performance-row strong small { font-size: 14px; }
.detail-page .notes,
.detail-page .detail-contact small { font-size: 13px; }
.detail-sections { min-width: 0; }
.detail-empty { margin: 0; color: var(--muted); font-size: 14px; }
.detail-risk-notes { display: grid; gap: 9px; margin-top: 18px; }
.detail-risk-notes p { margin: 0; padding: 14px 16px; color: #4e5e6c; background: #f6f8f9; border-left: 3px solid #c8a55b; font-size: 14px; line-height: 1.7; }
.detail-risk-notes strong { display: block; margin-bottom: 4px; color: var(--navy); }

@media (max-width: 1080px) {
  .detail-summary-grid { grid-template-columns: repeat(3, 1fr); }
  .listing-card-yearly-license { grid-template-columns: 145px minmax(0,1fr); }
}

@media (max-width: 700px) {
  .detail-record-meta { align-items: flex-start; flex-wrap: wrap; gap: 8px 12px; padding: 16px 20px; }
  .detail-record-meta time:first-of-type { width: 100%; margin: 3px 0 0; }
  .detail-title { align-items: flex-start; flex-direction: column; padding: 28px 22px; }
  .detail-title aside { width: 100%; padding: 16px 0 0; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
  .detail-summary-grid { grid-template-columns: repeat(2, 1fr); }
  .detail-summary-grid article { min-height: 92px; padding: 14px; }
  .license-head { align-items: flex-start; flex-direction: column; }
  .license-head dl { display: grid; width: 100%; grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .performance-row { overflow-x: auto; grid-template-columns: repeat(6, minmax(82px,1fr)); }
  .listing-card-yearly { grid-row: 5; padding: 13px 14px 15px; }
  .listing-card-yearly-heading { align-items: flex-start; flex-direction: column; gap: 2px; }
  .listing-card-yearly-license { grid-template-columns: 1fr; }
  .listing-card-yearly-trade { border-right: 0; border-bottom: 1px solid #dbe2e7; }
  .listing-card-yearly-values { overflow-x: auto; grid-template-columns: repeat(6,minmax(78px,1fr)); }
}

@media (max-width: 600px) {
  body { font-size: 15px; }
  .top-notice { display: none; }
  .listing-card-title { font-size: 16px; }
  .listing-card-metrics dd { font-size: 14px; }
  .listing-card-number span,
  .mobile-quick span { font-size: var(--text-caption); }
  .mobile-quick a { font-size: 13px; font-weight: 700; }
  .site-header .brand-logo { width: 180px; }
}

/* Service pages: information-led visuals and service-specific workflow */
.service-page { --service-accent: #e2c277; }
.service-registration { --service-accent: #86c5b7; }
.service-diagnosis { --service-accent: #8eb8dd; }
.service-merger { --service-accent: #c4a4dc; }
.service-year-end { --service-accent: #e4a47f; }
.service-page .service-hero { min-height: 610px; background: radial-gradient(circle at 78% 46%, rgba(38,87,126,.5), transparent 26%), linear-gradient(120deg, #03101d, #0b2a47); }
.service-blueprint { position: absolute; inset: 0; opacity: .45; background-image: linear-gradient(rgba(142,184,221,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(142,184,221,.08) 1px, transparent 1px); background-size: 46px 46px; mask-image: linear-gradient(90deg, transparent, #000 54%); animation: gridDrift 18s linear infinite; }
.service-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1fr) 470px; gap: 72px; align-items: center; min-height: 610px; padding-top: 0 !important; }
.service-hero-copy { position: relative; z-index: 3; }
.service-kicker { margin: 0 0 18px !important; color: var(--service-accent) !important; font-size: 15px !important; font-weight: 800; letter-spacing: -.01em; }
.service-page .service-number { position: static; display: block; margin-bottom: 8px; color: rgba(255,255,255,.35); font-size: 16px; font-weight: 800; }
.service-page .service-hero h1 { margin-bottom: 20px; font-size: clamp(44px,5vw,66px); line-height: 1.2; }
.service-page .service-hero-copy > p:not(.service-kicker) { max-width: 670px; margin: 0 0 34px; color: #bfccd6; font-size: 17px; font-weight: 500; line-height: 1.85; }
.service-hero-visual { position: relative; width: 450px; height: 450px; justify-self: end; }
.service-radar { position: absolute; inset: 24px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; animation: serviceRadarFloat 7s ease-in-out infinite; }
.service-radar::before, .service-radar::after, .service-radar i { content: ""; position: absolute; border: 1px solid color-mix(in srgb, var(--service-accent) 35%, transparent); border-radius: 50%; }
.service-radar::before { inset: 49px; }
.service-radar::after { inset: 101px; }
.service-radar i:nth-child(1) { top: 50%; right: 8%; left: 8%; border-width: 1px 0 0; border-radius: 0; }
.service-radar i:nth-child(2) { top: 8%; bottom: 8%; left: 50%; border-width: 0 0 0 1px; border-radius: 0; }
.service-radar i:nth-child(3) { inset: -1px; border-color: transparent var(--service-accent) transparent transparent; animation: serviceRadarSpin 8s linear infinite; }
.service-radar b { position: absolute; right: 31px; bottom: 62px; color: rgba(255,255,255,.1); font-size: 108px; line-height: 1; }
.service-visual-core { position: absolute; z-index: 3; top: 50%; left: 50%; display: grid; place-items: center; width: 206px; height: 206px; padding: 28px; color: #fff; border: 1px solid color-mix(in srgb, var(--service-accent) 65%, transparent); background: rgba(4,17,31,.86); box-shadow: 0 25px 80px rgba(0,0,0,.26); text-align: center; transform: translate(-50%,-50%); }
.service-visual-core::before, .service-visual-core::after { content: ""; position: absolute; width: 10px; height: 10px; border-style: solid; border-color: var(--service-accent); }
.service-visual-core::before { top: -1px; left: -1px; border-width: 2px 0 0 2px; }
.service-visual-core::after { right: -1px; bottom: -1px; border-width: 0 2px 2px 0; }
.service-visual-core span { color: var(--service-accent); font-size: 13px; font-weight: 800; }
.service-visual-core strong { font-size: 23px; line-height: 1.35; }
.service-visual-core small { color: #92a4b4; font-size: 12px; }
.service-visual-node { position: absolute; z-index: 4; display: grid; place-items: center; width: 72px; height: 72px; color: #d8e1e8; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; background: rgba(7,25,45,.9); font-size: 13px; font-weight: 800; box-shadow: 0 12px 32px rgba(0,0,0,.2); }
.service-visual-node::after { content: ""; position: absolute; inset: -6px; border: 1px solid color-mix(in srgb, var(--service-accent) 38%, transparent); border-radius: 50%; animation: orbitPulse 3.5s ease-in-out infinite; }
.service-visual-node.node-a { top: 16px; right: 67px; }
.service-visual-node.node-b { top: 195px; left: -2px; }
.service-visual-node.node-c { right: 42px; bottom: 15px; }
.service-content { padding: 110px 0 120px; }
.service-process-heading { display: grid; grid-template-columns: 160px minmax(0,760px); gap: 35px; align-items: start; margin-bottom: 52px; }
.service-process-heading > span, .service-review-heading > span { padding-top: 9px; color: #987329; font-size: 14px; font-weight: 800; }
.service-process-heading h2, .service-review-heading h2 { margin: 0 0 15px; color: var(--navy); font-size: clamp(31px,3.3vw,46px); line-height: 1.35; letter-spacing: -.04em; }
.service-process-heading p, .service-review-heading p { max-width: 760px; margin: 0; color: #5d6b78; font-size: 16px; line-height: 1.85; }
.service-process-grid { position: relative; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 105px; border: 0; }
.service-process-grid::before { content: ""; position: absolute; top: 71px; right: 9%; left: 9%; height: 1px; background: #c9d1d7; }
.service-process-grid article { position: relative; z-index: 2; min-height: 330px; padding: 25px 24px 28px; border: 1px solid #d8dee3; background: #fff; box-shadow: 0 12px 30px rgba(7,25,45,.04); transition: transform .25s, border-color .25s, box-shadow .25s; }
.service-process-grid article:first-child { border-left: 1px solid #d8dee3; }
.service-process-grid article:hover { z-index: 4; border-color: var(--service-accent); box-shadow: 0 18px 44px rgba(7,25,45,.11); transform: translateY(-6px); }
.service-process-grid article > span { color: #987329; font-size: 14px; font-weight: 800; }
.process-symbol { position: relative; display: grid; place-items: center; width: 52px; height: 52px; margin: 25px 0 32px; border: 1px solid color-mix(in srgb, var(--service-accent) 85%, #9ca7b0); background: #fff; }
.process-symbol i { width: 16px; height: 16px; border: 2px solid var(--service-accent); border-radius: 50%; }
.process-symbol b { position: absolute; right: -27px; color: #a4afb7; font-size: 15px; font-weight: 500; }
.service-process-grid article:last-child .process-symbol b { display: none; }
.service-process-grid h3 { margin: 0 0 14px; font-size: 21px; line-height: 1.45; }
.service-process-grid p { margin: 0; color: #5d6b78; font-size: 15px; line-height: 1.82; }
.service-review-section { position: relative; padding: 78px 72px 72px; margin-bottom: 38px; overflow: hidden; color: #fff; background: var(--navy); }
.service-review-section::before { content: ""; position: absolute; top: -190px; right: -120px; width: 470px; height: 470px; border: 1px solid rgba(226,194,119,.13); border-radius: 50%; box-shadow: 0 0 0 70px rgba(226,194,119,.025), 0 0 0 140px rgba(226,194,119,.018); }
.service-review-heading { position: relative; z-index: 2; display: grid; grid-template-columns: 160px minmax(0,760px); gap: 35px; margin-bottom: 45px; }
.service-review-heading > span { color: var(--service-accent); }
.service-review-heading h2 { color: #fff; }
.service-review-heading p { color: #aebbc6; }
.service-review-grid { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.16); border-left: 1px solid rgba(255,255,255,.16); }
.service-review-grid article { min-height: 220px; padding: 28px; border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.025); }
.service-review-grid article > span { color: var(--service-accent); font-size: 13px; font-weight: 800; }
.service-review-grid h3 { margin: 36px 0 12px; font-size: 21px; }
.service-review-grid p { margin: 0; color: #b4c0ca; font-size: 15px; line-height: 1.8; }
.service-result { position: relative; z-index: 2; display: grid; grid-template-columns: 170px 1fr; gap: 25px; align-items: center; padding: 26px 28px; margin-top: 16px; border-left: 3px solid var(--service-accent); background: rgba(255,255,255,.06); }
.service-result span { color: var(--service-accent); font-size: 13px; font-weight: 800; }
.service-result strong { font-size: 17px; line-height: 1.75; }
.service-page .service-cta { padding: 47px 50px; }
.service-page .service-cta > div > span { color: var(--gold-light); font-size: 13px; font-weight: 800; }
.service-page .service-cta h2 { margin-top: 7px; }
.service-page .service-cta p { font-size: 14px; }

/* Office directions */
.office-hero { position: relative; min-height: 410px; overflow: hidden; color: #fff; background: radial-gradient(circle at 82% 28%, rgba(200,165,87,.2), transparent 25%), linear-gradient(120deg,#04111f,#0b2b49); }
.office-hero-pattern { position: absolute; inset: 0; opacity: .5; background-image: linear-gradient(rgba(137,169,196,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(137,169,196,.08) 1px, transparent 1px); background-size: 52px 52px; animation: gridDrift 20s linear infinite; }
.office-hero .container { position: relative; z-index: 2; padding-top: 82px; }
.office-hero .container > span { color: var(--gold-light); font-size: 14px; font-weight: 800; }
.office-hero h1 { margin: 12px 0 18px; font-size: clamp(38px,4vw,55px); line-height: 1.3; letter-spacing: -.04em; }
.office-hero p { max-width: 620px; margin: 0; color: #b9c6d0; font-size: 16px; }
.office-content { display: grid; grid-template-columns: minmax(0,1.28fr) minmax(360px,.72fr); gap: 50px; padding: 90px 0 110px; }
.office-map-card { position: relative; min-height: 600px; overflow: hidden; border: 1px solid #d6dce1; background: #e7ebed; box-shadow: 0 24px 60px rgba(7,25,45,.1); }
.office-map-card iframe { display: block; width: 100%; height: 100%; min-height: 600px; border: 0; filter: saturate(.78) contrast(.98); }
.office-map-marker { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: 58px; height: 58px; color: var(--gold-light); border: 2px solid var(--gold-light); background: var(--navy); box-shadow: 0 10px 32px rgba(0,0,0,.28); pointer-events: none; transform: translate(-50%,-100%) rotate(45deg); }
.office-map-marker span { font-size: 23px; font-weight: 850; transform: rotate(-45deg); }
.office-information { align-self: center; }
.office-address > span { color: #99752e; font-size: 14px; font-weight: 800; }
.office-address h2 { margin: 14px 0 20px; color: var(--navy); font-size: 34px; line-height: 1.5; letter-spacing: -.035em; }
.office-address p { margin: 0; color: #5d6b78; font-size: 16px; line-height: 1.85; }
.office-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 30px; }
.office-outline-button { color: var(--navy); border: 1px solid #b9c3cb; background: #fff; }
.office-outline-button:hover { border-color: var(--gold); }
.office-contact-grid { display: grid; grid-template-columns: 1fr 1fr; margin: 48px 0 0; border-top: 2px solid var(--navy); }
.office-contact-grid div { min-height: 112px; padding: 21px 14px 18px 0; border-bottom: 1px solid #d7dde2; }
.office-contact-grid div:nth-child(odd) { border-right: 1px solid #d7dde2; }
.office-contact-grid div:nth-child(even) { padding-left: 20px; }
.office-contact-grid dt { color: #6a7784; font-size: 13px; }
.office-contact-grid dd { margin: 10px 0 0; color: var(--navy); font-size: 17px; font-weight: 800; }
.office-consult { padding: 68px 0; color: #fff; background: var(--navy); }
.office-consult .container { display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.office-consult span { color: var(--gold-light); font-size: 13px; font-weight: 800; }
.office-consult h2 { margin: 8px 0 0; font-size: 31px; }

@keyframes serviceRadarSpin { to { transform: rotate(360deg); } }
@keyframes serviceRadarFloat { 50% { transform: translateY(-10px) scale(1.02); } }

@media (max-width: 1080px) and (min-width: 861px) {
  .main-nav { gap: 15px; }
  .main-nav a { font-size: 13px; }
  .service-hero-grid { grid-template-columns: minmax(0,1fr) 390px; gap: 30px; }
  .service-hero-visual { width: 390px; height: 390px; }
  .office-content { grid-template-columns: 1fr 380px; gap: 34px; }
}

@media (max-width: 860px) {
  .service-page .service-hero { min-height: auto; }
  .service-hero-grid { grid-template-columns: 1fr; gap: 25px; min-height: auto; padding: 75px 0 58px !important; }
  .service-hero-visual { position: absolute; right: -90px; bottom: 12px; width: 360px; height: 360px; opacity: .34; }
  .service-hero-copy { max-width: 650px; }
  .service-process-heading, .service-review-heading { grid-template-columns: 125px 1fr; }
  .service-process-grid { grid-template-columns: repeat(2,1fr); }
  .service-process-grid::before { display: none; }
  .service-review-section { padding: 65px 42px; }
  .office-content { grid-template-columns: 1fr; gap: 48px; }
  .office-map-card, .office-map-card iframe { min-height: 470px; }
}

@media (max-width: 600px) {
  .service-hero-grid { padding-top: 64px !important; }
  .service-page .service-hero h1 { font-size: 40px; }
  .service-page .service-hero-copy > p:not(.service-kicker) { font-size: 15px; }
  .service-hero-visual { right: -195px; bottom: 0; opacity: .25; }
  .service-visual-core span, .service-visual-core strong, .service-visual-core small, .service-visual-node { display: none; }
  .service-content { padding: 75px 0 82px; }
  .service-process-heading, .service-review-heading { display: block; }
  .service-process-heading > span, .service-review-heading > span { display: block; margin-bottom: 9px; padding: 0; }
  .service-process-heading h2, .service-review-heading h2 { font-size: 30px; }
  .service-process-heading p, .service-review-heading p { font-size: 15px; }
  .service-process-grid { grid-template-columns: 1fr; gap: 10px; margin-bottom: 72px; }
  .service-process-grid article { min-height: 0; padding: 23px 21px 25px; }
  .process-symbol { margin: 20px 0 25px; }
  .process-symbol b { display: none; }
  .service-process-grid h3 { font-size: 20px; }
  .service-process-grid p { font-size: 15px; }
  .service-review-section { padding: 48px 20px 22px; margin-right: -15px; margin-left: -15px; }
  .service-review-grid { grid-template-columns: 1fr; }
  .service-review-grid article { min-height: 0; padding: 24px 21px; }
  .service-review-grid h3 { margin-top: 22px; }
  .service-review-grid p { font-size: 15px; }
  .service-result { grid-template-columns: 1fr; gap: 8px; padding: 22px; }
  .service-result strong { font-size: 15px; }
  .service-page .service-cta { padding: 34px 23px; }
  .office-hero { min-height: 340px; }
  .office-hero .container { padding-top: 62px; }
  .office-hero h1 { font-size: 36px; }
  .office-content { padding: 65px 0 75px; }
  .office-map-card, .office-map-card iframe { min-height: 390px; }
  .office-address h2 { font-size: 27px; }
  .office-actions { display: grid; }
  .office-contact-grid { grid-template-columns: 1fr; }
  .office-contact-grid div:nth-child(odd) { border-right: 0; }
  .office-contact-grid div:nth-child(even) { padding-left: 0; }
  .office-consult .container { align-items: flex-start; flex-direction: column; }
  .office-consult h2 { font-size: 27px; }
}

/* Functional iconography: one visual language for navigation and actions. */
.svg-icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none; }
.ui-icon { display: inline-block; width: 1.2em; height: 1.2em; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; vertical-align: -.18em; }
.main-nav a { display: flex; grid: none; gap: 7px; }
.main-nav .nav-icon { width: 17px; height: 17px; color: var(--gold-light); opacity: .9; }
.main-nav a:nth-child(2) .nav-icon { color: #8dd7c8; }
.main-nav a:nth-child(3) .nav-icon { color: #a9d1ef; }
.main-nav a:nth-child(4) .nav-icon { color: #d0b5e4; }
.main-nav a:nth-child(5) .nav-icon { color: #efb79f; }
.main-nav a:nth-child(6) .nav-icon { color: #b7c7d5; }
.header-consult { justify-content: center; gap: 9px; }
.header-consult .ui-icon { width: 18px; height: 18px; }
.mobile-nav a { display: flex; align-items: center; gap: 11px; }
.mobile-nav .ui-icon { width: 20px; height: 20px; color: var(--gold-light); }
.button { gap: 11px; }
.button > .ui-icon { width: 19px; height: 19px; }
.consult-side-action b { display: grid; width: 20px; height: 20px; place-items: center; }
.consult-side-action b .ui-icon { width: 18px; height: 18px; }
.quick-consult-card button b,
.quick-search button b { display: grid; place-items: center; }
.quick-consult-card button .ui-icon,
.quick-search button .ui-icon { width: 20px; height: 20px; }
.search-title a { display: inline-flex; align-items: center; gap: 6px; }
.search-title a .ui-icon { width: 16px; height: 16px; }
.service-card > .service-icon.ui-icon { width: 54px; height: 54px; color: var(--service-card-accent); stroke-width: 1.55; overflow: visible; }
.service-card > b i { display: grid; width: 23px; height: 23px; place-items: center; }
.service-card > b i .ui-icon { width: 22px; height: 22px; }
.text-link span { display: inline-grid; width: 22px; height: 22px; place-items: center; }
.text-link .ui-icon { width: 20px; height: 20px; }
.consult-icon .ui-icon { width: 25px; height: 25px; }
.consult-strip > a { display: inline-flex; align-items: center; gap: 12px; }
.consult-strip > a span { display: grid; width: 22px; height: 22px; margin-left: 0; place-items: center; }
.contact-channel-button > span.channel-icon { display: grid; width: 42px; height: 42px; margin-bottom: 18px; place-items: center; border: 1px solid currentColor; opacity: .92; }
.contact-channel-button .channel-icon .ui-icon { width: 24px; height: 24px; }
.contact-channel-button b { display: grid; width: 22px; height: 22px; place-items: center; }
.contact-channel-button b .ui-icon { width: 20px; height: 20px; }
.trade-link,
.listing-card-price a,
.back-link,
.pagination a { display: inline-flex; align-items: center; gap: 6px; }
.trade-link .ui-icon,
.listing-card-price a .ui-icon,
.back-link .ui-icon,
.pagination .ui-icon { width: 17px; height: 17px; }
.listing-card-price i { display: inline-grid; place-items: center; }
.search-main-row > button span,
.advanced-actions button span,
.inquiry-card button span { display: grid; place-items: center; }
.search-main-row > button .ui-icon,
.advanced-actions button .ui-icon,
.inquiry-card button .ui-icon { width: 19px; height: 19px; }

@media (max-width: 1200px) and (min-width: 861px) {
  .main-nav .nav-icon { display: none; }
}

/* Conversion actions: every customer-entry button shares one strong, readable hierarchy. */
.header-consult { min-width: 142px; height: 46px; font-size: 15px; font-weight: 850; }
.button { min-height: 58px; font-size: 16px; font-weight: 850; }
.quick-consult-card button,
.inquiry-card button { height: 58px; font-size: 17px; font-weight: 850; }
.text-link,
.consult-strip > a { font-size: 15px; font-weight: 800; }
.contact-channel-button strong { font-size: 20px; font-weight: 850; }
.contact-channel-button small { font-size: 14px; font-weight: 650; }
.cta-phone span { font-size: 13px; font-weight: 750; }
.cta-phone strong { font-size: 24px; font-weight: 850; }
.consult-side-dock { width: 138px; }
.consult-side-heading strong { font-size: 19px; }
.consult-side-action { min-height: 80px; padding-right: 31px; }
.consult-side-action span { font-size: 16px; font-weight: 850; }
.consult-side-action small { font-size: 13px; font-weight: 700; }

@media (max-width: 600px) {
  .site-header .brand-logo { width: 168px; }
  .button { min-height: 56px; font-size: 16px; }
  .quick-consult-card button,
  .inquiry-card button { height: 57px; font-size: 16px; }
  .contact-channel-button strong { font-size: 18px; }
  .contact-channel-button small { font-size: 13px; }
  .mobile-quick { height: 68px; }
  .mobile-quick a { font-size: 15px; font-weight: 850; }
  .mobile-quick span { font-size: 12px; font-weight: 750; }
  .mobile-quick strong { font-size: 18px; font-weight: 850; }
}

/* Hero service gateway: explain the full business scope before the first scroll. */
.hero-services { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; width: 100%; margin-top: 32px; }
.hero-services li { min-width: 0; min-height: 92px; padding: 0; overflow: hidden; background: rgba(4,17,31,.58); transition: border-color .2s, background .2s, transform .2s; }
.hero-services li:hover { background: rgba(18,48,76,.88); transform: translateY(-3px); }
.hero-service-link { display: grid; width: 100%; height: 100%; grid-template-columns: 24px minmax(0,1fr); align-items: center; gap: 9px; padding: 13px 10px; }
.hero-service-link > .ui-icon { width: 24px; height: 24px; stroke-width: 1.9; }
.hero-service-link span { min-width: 0; }
.hero-service-link strong { display: block; color: inherit; font-size: 17px; font-weight: 850; line-height: 1.35; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }
.hero-service-link small { display: block; margin-top: 5px; color: #c4d0da; font-size: 12px; font-weight: 650; line-height: 1.4; white-space: normal; word-break: keep-all; }

@media (max-width: 1200px) and (min-width: 861px) {
  .hero-services { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 860px) {
  .hero-services { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .hero-services li { min-height: 90px; }
  .hero-services li:last-child { grid-column: 1 / -1; }
  .hero-service-link { grid-template-columns: 28px minmax(0,1fr); padding: 14px; }
  .hero-service-link > .ui-icon { width: 28px; height: 28px; }
  .hero-service-link strong { font-size: 18px; }
  .hero-service-link small { font-size: 13px; white-space: normal; }
}

@media (max-width: 480px) {
  .hero-services { grid-template-columns: 1fr; }
  .hero-services li:last-child { grid-column: auto; }
}

/* Listing detail: compact, scan-friendly information sheet on mobile. */
.detail-card { --detail-section-accent: var(--navy); border-top-color: var(--detail-section-accent); }
.detail-section-company { --detail-section-accent: var(--gold); }
.detail-section-transfer { --detail-section-accent: var(--coral); }
.detail-section-license { --detail-section-accent: var(--teal); }
.detail-section-status { --detail-section-accent: var(--blue); }
.detail-section-notes { --detail-section-accent: var(--violet); }
.detail-card .card-heading > span { color: var(--detail-section-accent); }
.detail-heading-unit { margin-left: auto; color: #71808d; font-size: 12px; font-weight: 700; }

@media (max-width: 860px) {
  .detail-page { padding: 22px 0 92px; }
  .detail-header .back-link { margin-bottom: 14px; font-size: 14px; font-weight: 750; }
  .detail-overview { border: 1px solid #243b50; }
  .detail-record-meta {
    display: grid;
    min-height: 0;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px 12px;
    padding: 13px 15px;
  }
  .detail-record-meta strong { font-size: 15px; }
  .detail-record-meta span { justify-self: start; font-size: 12px; }
  .detail-record-meta time,
  .detail-record-meta time:first-of-type { width: auto; margin: 0; font-size: 11px; }
  .detail-title {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap: 0;
    padding: 19px 15px 20px;
  }
  .detail-title-flags { margin-bottom: 10px; }
  .detail-title-flags span,
  .detail-title-flags b { padding: 4px 7px; font-size: 11px; }
  .detail-title h1 { margin: 0 0 8px; font-size: 29px; line-height: 1.25; }
  .detail-overview .detail-title p { font-size: 13px; font-weight: 650; }
  .detail-title aside { display: none; }

  .detail-summary-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 1px;
    margin-top: 8px;
    overflow: hidden;
    background: #dbe2e7;
    border: 1px solid #dbe2e7;
  }
  .detail-summary-grid article {
    min-height: 78px;
    gap: 5px;
    padding: 10px 9px;
    border: 0;
    border-top: 3px solid var(--summary-accent);
  }
  .detail-page .detail-summary-grid span { font-size: 11px; line-height: 1.3; }
  .detail-page .detail-summary-grid strong { font-size: 18px; line-height: 1.2; white-space: nowrap; }

  .detail-grid { gap: 12px; margin-top: 12px; }
  .detail-card {
    margin-bottom: 10px;
    padding: 0;
    overflow: hidden;
    border: 1px solid #d9e0e5;
    border-top: 0;
  }
  .detail-card .card-heading {
    min-height: 47px;
    gap: 9px;
    margin: 0;
    padding: 10px 13px;
    background: #f1f5f7;
    border-bottom: 1px solid #d9e0e5;
    border-left: 5px solid var(--detail-section-accent);
  }
  .detail-card .card-heading > span { font-size: 12px; }
  .detail-card .card-heading h2 { font-size: 19px; }
  .detail-heading-unit { font-size: 11px; }

  .detail-page .facts {
    grid-template-columns: repeat(2,minmax(0,1fr));
    border: 0;
  }
  .detail-page .facts div {
    min-width: 0;
    min-height: 67px;
    padding: 10px 12px;
    background: #fff;
    border-color: #e1e6ea;
  }
  .detail-page .facts div:nth-child(4n+2),
  .detail-page .facts div:nth-child(4n+3) { background: #fafbfc; }
  .detail-page .facts dt { color: #6c7a87; font-size: 12px; line-height: 1.35; }
  .detail-page .facts dd { margin-top: 5px; font-size: 15px; line-height: 1.35; overflow-wrap: anywhere; }

  .detail-section-license .card-heading { margin-bottom: 0; }
  .license-block { padding: 0 0 11px; border-top: 0; border-bottom: 8px solid #f2f5f6; }
  .license-block:last-of-type { border-bottom: 0; }
  .license-head { display: block; }
  .license-head > div { padding: 12px 13px; background: #f2fbf8; border-bottom: 1px solid #dbe7e3; }
  .detail-page .license-head small { color: #428978; font-size: 11px; }
  .license-head h3 { margin-top: 3px; font-size: 21px; }
  .license-head dl {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 0;
    border-bottom: 1px solid #e0e6e9;
  }
  .license-head dl div { min-width: 0; padding: 9px 3px; text-align: center; border-right: 1px solid #e0e6e9; }
  .license-head dl div:last-child { border-right: 0; }
  .detail-page .license-head dt { font-size: 10px; line-height: 1.25; }
  .detail-page .license-head dd { margin-top: 4px; font-size: 13px; line-height: 1.25; overflow-wrap: anywhere; }
  .performance-row {
    overflow: visible;
    grid-template-columns: repeat(6,minmax(0,1fr));
    margin: 10px 9px 0;
    background: #fff;
    border-top: 1px solid #dce4e7;
    border-left: 1px solid #dce4e7;
  }
  .performance-row div { min-width: 0; padding: 7px 1px; border-bottom: 1px solid #dce4e7; }
  .detail-page .performance-row span { font-size: 11px; line-height: 1.25; }
  .detail-page .performance-row strong { font-size: 14px; line-height: 1.3; overflow-wrap: anywhere; }
  .detail-page .performance-row strong small { display: none; }

  .detail-risk-notes { gap: 0; margin: 0; }
  .detail-risk-notes p { padding: 12px 13px; border-bottom: 1px solid #e0e5e8; border-left: 0; font-size: 14px; line-height: 1.65; }
  .detail-page .notes { padding: 13px 14px 16px; font-size: 15px; line-height: 1.75; }
  .detail-contact { padding: 23px 19px; }
  .detail-contact h2 { margin-bottom: 18px; font-size: 22px; }
}

@media (max-width: 380px) {
  .detail-page .container { padding-right: 12px; padding-left: 12px; }
  .detail-page .detail-summary-grid strong { font-size: 17px; }
  .detail-page .detail-summary-grid span { font-size: 11px; }
  .detail-page .facts dd { font-size: 14px; }
  .detail-page .performance-row span { font-size: 10px; }
  .detail-page .performance-row strong { font-size: 13px; }
}

/* Mobile detail variant B: one calm, continuous information sheet. Variant A remains above. */
@media (max-width: 860px) {
  .detail-compact-sheet { padding-top: 12px; background: #f3f4f4; }
  .detail-compact-sheet .detail-header .back-link { margin: 0 0 10px; color: #41576a; }

  .detail-compact-sheet .detail-overview {
    color: var(--navy);
    background: #fff;
    border: 1px solid #cfd6db;
  }
  .detail-compact-sheet .detail-record-meta {
    grid-template-columns: auto auto 1fr auto;
    gap: 8px;
    padding: 9px 12px;
    color: #fff;
    background: var(--navy);
    border-bottom: 0;
  }
  .detail-compact-sheet .detail-record-meta strong { color: #fff; font-size: 14px; }
  .detail-compact-sheet .detail-record-meta span {
    padding: 3px 7px;
    color: #b7f1d5;
    background: rgba(69,164,119,.18);
    font-size: 11px;
  }
  .detail-compact-sheet .detail-record-meta time,
  .detail-compact-sheet .detail-record-meta time:first-of-type {
    color: #bec9d2;
    font-size: 10px;
    white-space: nowrap;
  }
  .detail-compact-sheet .detail-record-meta time:first-of-type { justify-self: end; }

  .detail-compact-sheet .detail-title {
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 13px 12px;
    color: var(--navy);
    background: #fff;
    border-top: 1px solid #dbe0e4;
  }
  .detail-compact-sheet .detail-title-flags { gap: 5px; margin-bottom: 7px; }
  .detail-compact-sheet .detail-title-flags span,
  .detail-compact-sheet .detail-title-flags b {
    color: #415568;
    background: #f2f4f5;
    border-color: #d5dce1;
  }
  .detail-compact-sheet .detail-title-flags b { color: #4b3a15; background: #f0dfa8; border-color: #d8bd66; }
  .detail-compact-sheet .detail-title-flags b.urgent { color: #8d322d; background: #f7e4e2; border-color: #d9a5a0; }
  .detail-compact-sheet .detail-title h1 { margin-bottom: 5px; font-size: 27px; }
  .detail-compact-sheet .detail-overview .detail-title p { color: #667784; font-size: 12px; }
  .detail-compact-sheet .detail-title aside {
    display: grid;
    min-width: 106px;
    justify-items: end;
    padding: 3px 0 3px 13px;
    border-top: 0;
    border-left: 1px solid #d9dee2;
  }
  .detail-compact-sheet .detail-title aside span,
  .detail-compact-sheet .detail-title aside small { color: #687681; font-size: 10px; }
  .detail-compact-sheet .detail-title aside strong {
    margin: 3px 0 1px;
    color: #c26f2c;
    font-size: 24px;
    white-space: nowrap;
  }

  .detail-compact-sheet .detail-summary-grid { display: none; }
  .detail-compact-sheet .detail-grid { gap: 9px; margin-top: 9px; }
  .detail-compact-sheet .detail-sections {
    overflow: hidden;
    background: #fff;
    border: 1px solid #cfd6db;
  }
  .detail-compact-sheet .detail-card,
  .detail-compact-sheet .detail-section-company,
  .detail-compact-sheet .detail-section-transfer,
  .detail-compact-sheet .detail-section-license,
  .detail-compact-sheet .detail-section-status,
  .detail-compact-sheet .detail-section-notes {
    --detail-section-accent: #466b88;
    margin: 0;
    border: 0;
    border-bottom: 8px solid #f3f4f4;
  }
  .detail-compact-sheet .detail-card:last-child { border-bottom: 0; }
  .detail-compact-sheet .detail-card .card-heading {
    min-height: 39px;
    gap: 7px;
    padding: 7px 10px;
    color: #173750;
    background: #e9eff3;
    border: 0;
    border-bottom: 1px solid #ccd6dd;
  }
  .detail-compact-sheet .detail-card .card-heading > span {
    display: inline-grid;
    width: 21px;
    height: 21px;
    place-items: center;
    color: #fff;
    background: #567b96;
    border-radius: 2px;
    font-size: 10px;
  }
  .detail-compact-sheet .detail-card .card-heading h2 { font-size: 17px; }
  .detail-compact-sheet .detail-heading-unit { color: #5d7180; font-size: 10px; }

  .detail-compact-sheet .facts { background: #dce1e4; }
  .detail-compact-sheet .facts div,
  .detail-compact-sheet .facts div:nth-child(4n+2),
  .detail-compact-sheet .facts div:nth-child(4n+3) {
    display: grid;
    min-height: 45px;
    grid-template-columns: 74px minmax(0,1fr);
    align-items: stretch;
    padding: 0;
    background: #fff;
    border-color: #dce1e4;
  }
  .detail-compact-sheet .facts dt {
    display: flex;
    align-items: center;
    padding: 6px 7px;
    color: #3f5566;
    background: #f0f3f4;
    border-right: 1px solid #dce1e4;
    font-size: 11px;
    font-weight: 750;
  }
  .detail-compact-sheet .facts dd {
    display: flex;
    min-width: 0;
    align-items: center;
    margin: 0;
    padding: 6px 8px;
    color: #172a38;
    font-size: 14px;
    font-weight: 750;
  }

  .detail-compact-sheet .license-block { padding: 0; border: 0; border-bottom: 6px solid #f3f4f4; }
  .detail-compact-sheet .license-block:last-of-type { border-bottom: 0; }
  .detail-compact-sheet .license-head {
    display: grid;
    grid-template-columns: 112px minmax(0,1fr);
    align-items: stretch;
    border-bottom: 1px solid #d9e0e4;
  }
  .detail-compact-sheet .license-head > div {
    display: grid;
    align-content: center;
    padding: 8px 10px;
    background: #f7f8f8;
    border-right: 1px solid #d9e0e4;
    border-bottom: 0;
  }
  .detail-compact-sheet .detail-page .license-head small,
  .detail-compact-sheet .license-head small { color: #60727f; font-size: 10px; }
  .detail-compact-sheet .license-head h3 { margin-top: 2px; font-size: 18px; }
  .detail-compact-sheet .license-head dl { align-self: stretch; border: 0; }
  .detail-compact-sheet .license-head dl div {
    display: grid;
    align-content: center;
    padding: 6px 2px;
    background: #fff;
  }
  .detail-compact-sheet .license-head dt { font-size: 9px; }
  .detail-compact-sheet .license-head dd { font-size: 12px; }
  .detail-compact-sheet .performance-row {
    margin: 0;
    border: 0;
    background: #fff;
  }
  .detail-compact-sheet .performance-row div {
    padding: 7px 1px;
    background: #fff;
    border-color: #dce1e4;
  }
  .detail-compact-sheet .performance-row span { color: #556875; font-size: 10px; }
  .detail-compact-sheet .performance-row strong { color: #152c3d; font-size: 13px; }

  .detail-compact-sheet .detail-risk-notes p { background: #fff; }
  .detail-compact-sheet .notes { color: #273b49; background: #fff; }

  .detail-compact-sheet .detail-contact {
    padding: 18px 16px;
    background: var(--navy);
  }
  .detail-compact-sheet .detail-contact-kicker { margin-bottom: 4px; font-size: 11px; }
  .detail-compact-sheet .detail-contact h2 { margin-bottom: 12px; font-size: 19px; line-height: 1.4; }
  .detail-compact-sheet .listing-contact-info {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 0 12px;
    margin-bottom: 12px;
  }
  .detail-compact-sheet .listing-contact-info div { padding: 8px 0; }
  .detail-compact-sheet .listing-contact-info div:last-child { grid-column: 1 / -1; }
  .detail-compact-sheet .listing-contact-info dt { font-size: 10px; }
  .detail-compact-sheet .listing-contact-info dd { font-size: 13px; }
  .detail-compact-sheet .detail-contact .button { display: inline-flex; width: calc(50% - 4px); min-height: 48px; margin: 0; padding: 0 8px; justify-content: center; font-size: 14px; }
  .detail-compact-sheet .detail-contact .button + .button { margin-left: 4px; }
  .detail-compact-sheet .detail-contact > small { display: none; }
}

@media (max-width: 520px) {
  .detail-compact-sheet .detail-record-meta { grid-template-columns: auto 1fr; }
  .detail-compact-sheet .detail-record-meta time,
  .detail-compact-sheet .detail-record-meta time:first-of-type { justify-self: start; }
  .detail-compact-sheet .detail-title { grid-template-columns: minmax(0,1fr) 96px; }
  .detail-compact-sheet .detail-title aside { min-width: 0; padding-left: 9px; }
  .detail-compact-sheet .detail-title aside strong { font-size: 21px; }
  .detail-compact-sheet .facts div,
  .detail-compact-sheet .facts div:nth-child(4n+2),
  .detail-compact-sheet .facts div:nth-child(4n+3) { grid-template-columns: 61px minmax(0,1fr); }
  .detail-compact-sheet .facts dt { padding: 5px; font-size: 10px; }
  .detail-compact-sheet .facts dd { padding: 5px 6px; font-size: 13px; }
  .detail-compact-sheet .license-head { grid-template-columns: 92px minmax(0,1fr); }
  .detail-compact-sheet .license-head > div { padding: 7px; }
  .detail-compact-sheet .license-head h3 { font-size: 16px; }
  .detail-compact-sheet .license-head dt { font-size: 8px; }
  .detail-compact-sheet .license-head dd { font-size: 11px; }
  .detail-compact-sheet .performance-row span { font-size: 9px; }
  .detail-compact-sheet .performance-row strong { font-size: 12px; }
}

/* Desktop detail: the same information-sheet language with wider comparison rows. */
@media (min-width: 861px) {
  .detail-compact-sheet { padding: 48px 0 96px; background: #f3f4f4; }
  .detail-compact-sheet .detail-header .back-link { margin-bottom: 16px; color: #41576a; font-size: 14px; font-weight: 750; }
  .detail-compact-sheet .detail-overview { color: var(--navy); background: #fff; border: 1px solid #cfd6db; }
  .detail-compact-sheet .detail-record-meta {
    min-height: 48px;
    padding: 0 28px;
    color: #fff;
    background: var(--navy);
    border-bottom: 0;
  }
  .detail-compact-sheet .detail-record-meta strong { color: #fff; font-size: 16px; }
  .detail-compact-sheet .detail-record-meta span { color: #b7f1d5; background: rgba(69,164,119,.18); }
  .detail-compact-sheet .detail-record-meta time { color: #bec9d2; font-size: 12px; }

  .detail-compact-sheet .detail-title {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 34px;
    padding: 25px 30px;
    color: var(--navy);
    background: #fff;
    border-top: 1px solid #dbe0e4;
  }
  .detail-compact-sheet .detail-title-flags { margin-bottom: 10px; }
  .detail-compact-sheet .detail-title-flags span,
  .detail-compact-sheet .detail-title-flags b {
    color: #415568;
    background: #f2f4f5;
    border-color: #d5dce1;
  }
  .detail-compact-sheet .detail-title-flags b { color: #4b3a15; background: #f0dfa8; border-color: #d8bd66; }
  .detail-compact-sheet .detail-title-flags b.urgent { color: #8d322d; background: #f7e4e2; border-color: #d9a5a0; }
  .detail-compact-sheet .detail-title h1 { margin-bottom: 8px; font-size: 34px; }
  .detail-compact-sheet .detail-overview .detail-title p { color: #667784; font-size: 15px; font-weight: 650; }
  .detail-compact-sheet .detail-title aside {
    min-width: 185px;
    padding-left: 30px;
    border-left: 1px solid #d9dee2;
  }
  .detail-compact-sheet .detail-title aside span,
  .detail-compact-sheet .detail-title aside small { color: #687681; font-size: 12px; }
  .detail-compact-sheet .detail-title aside strong { margin: 4px 0 2px; color: #c26f2c; font-size: 30px; }

  .detail-compact-sheet .detail-summary-grid { display: none; }
  .detail-compact-sheet .detail-grid { gap: 18px; margin-top: 18px; }
  .detail-compact-sheet .detail-sections { overflow: hidden; background: #fff; border: 1px solid #cfd6db; }
  .detail-compact-sheet .detail-card,
  .detail-compact-sheet .detail-section-company,
  .detail-compact-sheet .detail-section-transfer,
  .detail-compact-sheet .detail-section-license,
  .detail-compact-sheet .detail-section-status,
  .detail-compact-sheet .detail-section-notes {
    --detail-section-accent: #466b88;
    margin: 0;
    padding: 0;
    border: 0;
    border-bottom: 12px solid #f3f4f4;
  }
  .detail-compact-sheet .detail-card:last-child { border-bottom: 0; }
  .detail-compact-sheet .detail-card .card-heading {
    min-height: 48px;
    gap: 9px;
    margin: 0;
    padding: 9px 15px;
    color: #173750;
    background: #e9eff3;
    border: 0;
    border-bottom: 1px solid #ccd6dd;
  }
  .detail-compact-sheet .detail-card .card-heading > span {
    display: inline-grid;
    width: 24px;
    height: 24px;
    place-items: center;
    color: #fff;
    background: #567b96;
    border-radius: 2px;
    font-size: 11px;
  }
  .detail-compact-sheet .detail-card .card-heading h2 { font-size: 20px; }
  .detail-compact-sheet .detail-heading-unit { color: #5d7180; font-size: 12px; }

  .detail-compact-sheet .facts { grid-template-columns: repeat(3,minmax(0,1fr)); background: #dce1e4; border: 0; }
  .detail-compact-sheet .facts div {
    display: grid;
    min-width: 0;
    min-height: 56px;
    grid-template-columns: 98px minmax(0,1fr);
    align-items: stretch;
    padding: 0;
    background: #fff;
    border-color: #dce1e4;
  }
  .detail-compact-sheet .facts dt {
    display: flex;
    align-items: center;
    padding: 8px 10px;
    color: #3f5566;
    background: #f0f3f4;
    border-right: 1px solid #dce1e4;
    font-size: 12px;
    font-weight: 750;
  }
  .detail-compact-sheet .facts dd {
    display: flex;
    min-width: 0;
    align-items: center;
    margin: 0;
    padding: 8px 11px;
    color: #172a38;
    font-size: 15px;
    font-weight: 750;
    overflow-wrap: anywhere;
  }

  .detail-compact-sheet .license-block { padding: 0; border: 0; border-bottom: 8px solid #f3f4f4; }
  .detail-compact-sheet .license-block:last-of-type { border-bottom: 0; }
  .detail-compact-sheet .license-head {
    display: grid;
    grid-template-columns: 180px minmax(0,1fr);
    align-items: stretch;
    gap: 0;
    border-bottom: 1px solid #d9e0e4;
  }
  .detail-compact-sheet .license-head > div {
    display: grid;
    align-content: center;
    padding: 12px 15px;
    background: #f7f8f8;
    border-right: 1px solid #d9e0e4;
  }
  .detail-compact-sheet .license-head small { color: #60727f; font-size: 12px; }
  .detail-compact-sheet .license-head h3 { margin-top: 3px; font-size: 21px; }
  .detail-compact-sheet .license-head dl {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4,minmax(0,1fr));
    align-self: stretch;
    gap: 0;
    border: 0;
  }
  .detail-compact-sheet .license-head dl div {
    display: grid;
    min-width: 0;
    align-content: center;
    padding: 10px 5px;
    text-align: center;
    border-right: 1px solid #d9e0e4;
  }
  .detail-compact-sheet .license-head dl div:last-child { border-right: 0; }
  .detail-compact-sheet .license-head dt { font-size: 11px; }
  .detail-compact-sheet .license-head dd { margin-top: 4px; font-size: 15px; }
  .detail-compact-sheet .performance-row {
    overflow: visible;
    grid-template-columns: repeat(6,minmax(0,1fr));
    margin: 0;
    background: #fff;
    border: 0;
  }
  .detail-compact-sheet .performance-row div { padding: 10px 4px; background: #fff; border-color: #dce1e4; }
  .detail-compact-sheet .performance-row span { color: #556875; font-size: 12px; }
  .detail-compact-sheet .performance-row strong { color: #152c3d; font-size: 15px; }

  .detail-compact-sheet .detail-risk-notes { gap: 0; margin: 0; }
  .detail-compact-sheet .detail-risk-notes p { background: #fff; border-bottom: 1px solid #e0e5e8; border-left: 0; }
  .detail-compact-sheet .notes { padding: 18px 20px; color: #273b49; background: #fff; font-size: 15px; line-height: 1.75; }
  .detail-compact-sheet .detail-contact { top: 92px; padding: 26px 22px; }
}

@media (min-width: 861px) and (max-width: 1080px) {
  .detail-compact-sheet .facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .detail-compact-sheet .facts div { grid-template-columns: 82px minmax(0,1fr); }
  .detail-compact-sheet .license-head { grid-template-columns: 140px minmax(0,1fr); }
  .detail-compact-sheet .license-head > div { padding: 10px; }
  .detail-compact-sheet .license-head dt { font-size: 10px; }
  .detail-compact-sheet .license-head dd { font-size: 13px; }
}

/* Every license is a separately identifiable record inside the performance sheet. */
.license-sequence {
  display: table;
  margin-bottom: 6px;
  padding: 3px 7px;
  color: #fff;
  background: #466b88;
  border-radius: 2px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
}
.license-head > div > small { display: block; }
.detail-compact-sheet .license-head > div { box-shadow: inset 4px 0 #6a8aa2; }
.detail-compact-sheet .license-block + .license-block { border-top: 3px solid #466b88; }

/* Keep the two most frequently compared blocks together in the first viewport. */
@media (min-width: 861px) {
  .detail-compact-sheet .detail-primary-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    background: #dce1e4;
    border-bottom: 12px solid #f3f4f4;
  }
  .detail-compact-sheet .detail-primary-facts .detail-card {
    min-width: 0;
    border-bottom: 0;
  }
  .detail-compact-sheet .detail-primary-facts .card-heading {
    min-height: 44px;
    padding-top: 7px;
    padding-bottom: 7px;
  }
  .detail-compact-sheet .detail-primary-facts .facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .detail-compact-sheet .detail-primary-facts .facts div {
    min-height: 48px;
    grid-template-columns: minmax(70px, 42%) minmax(0, 1fr);
  }
  .detail-compact-sheet .detail-primary-facts .facts dt,
  .detail-compact-sheet .detail-primary-facts .facts dd {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}

@media (min-width: 861px) and (max-width: 1080px) {
  .detail-compact-sheet .detail-primary-facts .facts {
    grid-template-columns: 1fr;
  }
  .detail-compact-sheet .detail-primary-facts .facts div { min-height: 42px; }
}

@media (max-width: 860px) {
  .detail-compact-sheet .detail-primary-facts .detail-card { border-bottom-width: 6px; }
  .detail-compact-sheet .detail-primary-facts .card-heading { min-height: 36px; padding-top: 5px; padding-bottom: 5px; }
  .detail-compact-sheet .detail-primary-facts .facts div,
  .detail-compact-sheet .detail-primary-facts .facts div:nth-child(4n+2),
  .detail-compact-sheet .detail-primary-facts .facts div:nth-child(4n+3) { min-height: 40px; }
}

@media (max-width: 860px) {
  .detail-compact-sheet .license-block { border-bottom-width: 12px; }
  .detail-compact-sheet .license-sequence { margin-bottom: 5px; padding: 2px 6px; font-size: 10px; }
}

/* License comparison: one license per row so the full performance history scans at a glance. */
.license-compare-scroll { width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.license-compare-table { min-width: 800px; color: #1a3041; background: #fff; }
.license-compare-head,
.license-compare-row {
  display: grid;
  grid-template-columns: minmax(145px, 1.5fr) 68px 78px repeat(5, minmax(56px, .72fr)) 72px 72px 76px;
}
.license-compare-head { min-height: 44px; color: #365065; background: #edf2f5; border-bottom: 1px solid #cbd6dd; }
.license-compare-head > span,
.license-compare-row > span,
.license-compare-trade {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 8px 5px;
  border-right: 1px solid #dce3e7;
  text-align: center;
}
.license-compare-head > span:last-child,
.license-compare-row > span:last-child { border-right: 0; }
.license-compare-head > span { font-size: 12px; font-weight: 800; }
.license-compare-head small { display: block; margin-left: 3px; font-size: 10px; font-weight: 700; }
.license-compare-row { min-height: 61px; border-bottom: 1px solid #dce3e7; }
.license-compare-row:last-child { border-bottom: 0; }
.license-compare-row:nth-child(odd) { background: #fafbfc; }
.license-compare-trade { align-items: flex-start; flex-direction: column; padding-left: 14px; text-align: left; }
.license-compare-trade strong { color: #102b3f; font-size: 16px; font-weight: 850; }
.license-compare-trade small { color: #71808b; font-size: 11px; font-weight: 650; }
.license-compare-row > span { color: #4f6170; font-size: 12px; font-weight: 650; }
.license-compare-row > span strong { margin-right: 2px; color: #173a55; font-size: 14px; font-weight: 850; }
.license-compare-row .capacity strong { color: #2d68b2; font-size: 17px; }
.license-compare-head .total,
.license-compare-row .total { color: #17744d; background: #f2f8f4; }
.license-compare-head .current,
.license-compare-row .current { color: #8b5c19; background: #fff8e5; }

@media (max-width: 860px) {
  .detail-compact-sheet .detail-section-license .card-heading { border-bottom: 0; }
  .license-compare-scroll { border-top: 1px solid #ccd6dd; }
  .license-compare-table { min-width: 800px; }
  .license-compare-head { min-height: 39px; }
  .license-compare-row { min-height: 56px; }
  .license-compare-head > span,
  .license-compare-row > span,
  .license-compare-trade { padding-top: 6px; padding-bottom: 6px; }
  .license-compare-head > span { font-size: 11px; }
  .license-compare-trade {
    position: sticky;
    left: 0;
    z-index: 2;
    background: inherit;
    box-shadow: 2px 0 0 #d7e0e5;
  }
}

/* Listing results: the same compact information-sheet hierarchy as detail pages. */
.listing-card-sheet {
  display: block;
  overflow: hidden;
  border: 1px solid #cfd9df;
  border-left: 1px solid #cfd9df;
  background: #fff;
  box-shadow: 0 8px 24px rgba(11, 35, 55, .06);
}
.listing-card-sheet:hover {
  border-color: #9fb0bc;
  border-left-color: #9fb0bc;
  box-shadow: 0 12px 30px rgba(11, 35, 55, .1);
  transform: translateY(-1px);
}
.listing-card-header {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) 170px;
  min-height: 108px;
  color: #fff;
  background: #0c2942;
}
.listing-card-record,
.listing-card-identity,
.listing-card-sheet .listing-card-price {
  min-width: 0;
  padding: 22px 24px;
}
.listing-card-record {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  align-items: center;
  gap: 5px 7px;
  border-right: 1px solid rgba(255, 255, 255, .13);
}
.listing-card-record > span {
  color: #aebdca;
  font-size: 13px;
  font-weight: 750;
}
.listing-card-record > strong {
  color: #fff;
  font-size: 19px;
  font-weight: 850;
}
.listing-card-sheet .listing-card-badges {
  display: flex;
  width: 100%;
  min-height: 24px;
  align-items: center;
  gap: 5px;
  margin: 7px 0 0;
}
.listing-card-sheet .status {
  padding: 4px 7px;
  border: 1px solid rgba(255, 255, 255, .2);
  font-size: 11px;
  font-weight: 800;
}
.listing-card-sheet .status-open { color: #102f29; border-color: #91d6c2; background: #9fe0cd; }
.listing-card-sheet .status-done,
.listing-card-sheet .status-hold { color: #263746; background: #d5dde2; }
.listing-card-sheet .status-pick { color: #382900; border-color: #e4c36e; background: #f0cf78; }
.listing-card-sheet .status-urgent { color: #fff; border-color: #b84d45; background: #b84d45; }
.listing-card-identity {
  display: grid;
  align-content: center;
  gap: 9px;
}
.listing-card-sheet .listing-card-title {
  color: #fff;
  font-size: 24px;
  font-weight: 850;
  line-height: 1.3;
  white-space: normal;
}
.listing-card-sheet .listing-card-title:hover { color: #f0ce78; }
.listing-card-identity p {
  margin: 0;
  color: #b8c5cf;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.5;
}
.listing-card-sheet .listing-card-price {
  display: grid;
  align-content: center;
  justify-items: end;
  color: #fff;
  border: 0;
  border-left: 1px solid rgba(255, 255, 255, .13);
  background: rgba(0, 0, 0, .12);
}
.listing-card-sheet .listing-card-price > span {
  margin: 0 0 4px;
  color: #b8c5cf;
  font-size: 12px;
}
.listing-card-sheet .listing-card-price strong {
  color: #f0ce78;
  font-family: var(--sans);
  font-size: 27px;
  font-weight: 850;
}
.listing-card-sheet .listing-card-price a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 9px;
  color: #fff;
  font-size: 13px;
}
.listing-card-sheet .listing-card-price .ui-icon { width: 14px; height: 14px; color: #f0ce78; }
.listing-card-company-facts {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 0;
  border-bottom: 1px solid #d9e1e6;
  background: #f7f9fa;
}
.listing-card-company-facts div {
  min-width: 0;
  padding: 15px 18px;
  border-right: 1px solid #d9e1e6;
}
.listing-card-company-facts div:last-child { border-right: 0; }
.listing-card-company-facts dt {
  margin-bottom: 5px;
  color: #687987;
  font-size: 12px;
  font-weight: 750;
}
.listing-card-company-facts dd {
  overflow: hidden;
  margin: 0;
  color: #142f45;
  font-size: 15px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.listing-card-sheet .listing-card-yearly {
  padding: 0;
  border: 0;
  background: #fff;
}
.listing-card-sheet .listing-card-yearly-heading {
  min-height: 50px;
  margin: 0;
  padding: 0 20px;
  border-bottom: 1px solid #cdd8df;
  background: #e8f0f5;
}
.listing-card-sheet .listing-card-yearly-heading strong {
  color: #143653;
  font-size: 16px;
}
.listing-card-sheet .listing-card-yearly-heading span { color: #556a79; font-size: 12px; }
.listing-card-sheet .listing-card-yearly-licenses { gap: 0; }
.listing-card-sheet .listing-card-yearly-license {
  display: block;
  border: 0;
  border-bottom: 8px solid #eef2f4;
}
.listing-card-sheet .listing-card-yearly-license:last-child { border-bottom: 0; }
.listing-card-license-head {
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  border-bottom: 1px solid #d9e1e6;
}
.listing-card-sheet .listing-card-yearly-trade {
  display: grid;
  min-height: 84px;
  align-content: center;
  grid-template-columns: auto 1fr;
  gap: 3px 8px;
  padding: 13px 18px;
  border-right: 1px solid #d9e1e6;
  box-shadow: inset 4px 0 #557b98;
}
.listing-license-sequence {
  grid-row: span 2;
  align-self: center;
  padding: 4px 7px;
  color: #fff;
  background: #466f8d;
  font-size: 11px;
  font-weight: 850;
}
.listing-card-sheet .listing-card-yearly-trade small {
  color: #6a7a87;
  font-size: 11px;
  line-height: 1.25;
}
.listing-card-sheet .listing-card-yearly-trade strong {
  color: #122f46;
  font-size: 18px;
  line-height: 1.25;
}
.listing-card-license-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  background: #fbfcfc;
}
.listing-card-license-metrics div {
  display: grid;
  min-width: 0;
  align-content: center;
  justify-items: center;
  padding: 12px 8px;
  border-right: 1px solid #e0e6e9;
  text-align: center;
}
.listing-card-license-metrics div:last-child { border-right: 0; }
.listing-card-license-metrics dt {
  margin-bottom: 5px;
  color: #687985;
  font-size: 11px;
  font-weight: 700;
}
.listing-card-license-metrics dd {
  margin: 0;
  color: #173650;
  font-size: 16px;
  font-weight: 850;
}
.listing-card-sheet .listing-card-yearly-values {
  display: grid;
  overflow: visible;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  background: #fff;
}
.listing-card-sheet .listing-card-yearly-values div {
  min-height: 58px;
  padding: 8px 5px;
  border-right: 1px solid #e0e6e9;
}
.listing-card-sheet .listing-card-yearly-values div:last-child { border-right: 0; }
.listing-card-sheet .listing-card-yearly-values span { color: #687985; font-size: 11px; }
.listing-card-sheet .listing-card-yearly-values b { color: #183c58; font-size: 15px; }

@media (max-width: 760px) {
  .listing-card-sheet { border-color: #c9d4db; }
  .listing-card-header { grid-template-columns: minmax(0, 1fr) auto; }
  .listing-card-record { grid-column: 1 / -1; padding: 14px 16px 7px; border-right: 0; }
  .listing-card-record > strong { font-size: 16px; }
  .listing-card-sheet .listing-card-badges { width: auto; min-height: 0; margin: 0 0 0 5px; }
  .listing-card-identity { padding: 10px 16px 17px; }
  .listing-card-sheet .listing-card-title { padding: 0; font-size: 20px; line-height: 1.35; }
  .listing-card-identity p { font-size: 12px; }
  .listing-card-sheet .listing-card-price {
    min-width: 102px;
    justify-items: end;
    padding: 10px 15px 17px;
    border-left: 1px solid rgba(255, 255, 255, .13);
  }
  .listing-card-sheet .listing-card-price strong { font-size: 22px; }
  .listing-card-sheet .listing-card-price a { font-size: 12px; }
  .listing-card-company-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .listing-card-company-facts div { padding: 11px 13px; border-bottom: 1px solid #d9e1e6; }
  .listing-card-company-facts div:nth-child(2n) { border-right: 0; }
  .listing-card-company-facts div:last-child { grid-column: 1 / -1; border-bottom: 0; }
  .listing-card-company-facts dt { font-size: 11px; }
  .listing-card-company-facts dd { font-size: 14px; }
  .listing-card-sheet .listing-card-yearly-heading { min-height: 48px; align-items: flex-start; flex-direction: column; justify-content: center; gap: 1px; padding: 7px 13px; }
  .listing-card-sheet .listing-card-yearly-heading strong { font-size: 15px; }
  .listing-card-license-head { grid-template-columns: 1fr; }
  .listing-card-sheet .listing-card-yearly-trade {
    min-height: 62px;
    grid-template-columns: auto 1fr;
    padding: 10px 13px;
    border-right: 0;
    border-bottom: 1px solid #d9e1e6;
  }
  .listing-card-license-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .listing-card-license-metrics div { padding: 9px 3px; }
  .listing-card-license-metrics dt { font-size: 10px; }
  .listing-card-license-metrics dd { font-size: 13px; }
  .listing-card-sheet .listing-card-yearly-values { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .listing-card-sheet .listing-card-yearly-values div { min-height: 53px; padding: 7px 3px; border-bottom: 1px solid #e0e6e9; }
  .listing-card-sheet .listing-card-yearly-values div:nth-child(3n) { border-right: 0; }
  .listing-card-sheet .listing-card-yearly-values div:nth-last-child(-n + 3) { border-bottom: 0; }
  .listing-card-sheet .listing-card-yearly-values span { font-size: 10px; }
  .listing-card-sheet .listing-card-yearly-values b { font-size: 14px; }
}

/* Marketplace-style comparison table for fast scanning across many listings. */
.listing-market {
  overflow: hidden;
  border: 1px solid #cfd8df;
  background: #fff;
  box-shadow: 0 10px 28px rgba(12, 40, 64, .06);
}
.listing-market-guide {
  display: flex;
  min-height: 54px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 18px;
  border-bottom: 1px solid #cfd8df;
  background: #eef3f6;
}
.listing-market-guide strong {
  color: #102f49;
  font-size: 17px;
  font-weight: 850;
}
.listing-market-guide span {
  color: #5b6d7a;
  font-size: 13px;
  font-weight: 700;
}
.listing-market-table-wrap {
  position: relative;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-color: #8499a8 #eef2f4;
  scrollbar-width: auto;
}
.listing-market-table-wrap:focus-visible { outline: 3px solid rgba(57, 111, 151, .35); outline-offset: -3px; }
.listing-market-table {
  width: 100%;
  min-width: 1730px;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  color: #1b3448;
  background: #fff;
}
.listing-market-table .col-number { width: 76px; }
.listing-market-table .col-status { width: 88px; }
.listing-market-table .col-company { width: 94px; }
.listing-market-table .col-year { width: 72px; }
.listing-market-table .col-region { width: 76px; }
.listing-market-table .col-money { width: 92px; }
.listing-market-table .col-share { width: 78px; }
.listing-market-table .col-category { width: 102px; }
.listing-market-table .col-trade { width: 100px; }
.listing-market-table .col-performance { width: 72px; }
.listing-market-table .col-total { width: 78px; }
.listing-market-table .col-capacity { width: 80px; }
.listing-market-table th,
.listing-market-table td {
  border-right: 1px solid #dfe5e9;
  border-bottom: 1px solid #dfe5e9;
  text-align: center;
  vertical-align: middle;
}
.listing-market-table th:last-child,
.listing-market-table td:last-child { border-right: 0; }
.listing-market-table thead th {
  height: 40px;
  padding: 7px 5px;
  color: #465b6b;
  background: #f2f5f7;
  font-size: 12px;
  font-weight: 800;
}
.listing-market-table thead tr:first-child th[colspan] {
  color: #173e5e;
  background: #e4edf3;
}
.listing-market-table tbody td {
  min-height: 64px;
  padding: 11px 7px;
  font-size: 14px;
  font-weight: 700;
}
.listing-market-table .listing-market-row { cursor: pointer; }
.listing-market-table .listing-market-row:hover > td { background-color: #edf5f9; }
.listing-market-table .listing-market-row:focus-visible { outline: 3px solid #3b779f; outline-offset: -3px; }
.listing-market-table .listing-market-row-first > td { border-top: 3px solid #819bae; }
.listing-market-table tbody tr:first-child > td { border-top: 0; }
.market-number {
  color: #516777;
  background: #fbfcfd;
}
.market-number a {
  display: block;
  color: #163d5c;
  font-size: 15px;
  font-weight: 850;
}
.market-number small {
  display: block;
  margin-top: 4px;
  color: #83919b;
  font-size: 10px;
  font-weight: 700;
}
.market-status span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: #217151;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}
.market-status span::before {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: currentColor;
  content: "";
}
.market-status .is-done,
.market-status .is-hold { color: #71808b; }
.market-status b {
  display: table;
  margin: 5px auto 0;
  padding: 2px 5px;
  color: #795813;
  background: #f3dc9b;
  font-size: 10px;
  font-weight: 850;
}
.market-status b.urgent { color: #fff; background: #b94c48; }
.market-price {
  color: #be4e55;
  background: #fffafa;
  font-size: 16px !important;
  font-weight: 850 !important;
  white-space: nowrap;
}
.market-category {
  display: inline-block;
  padding: 4px 6px;
  color: #315f83;
  border: 1px solid #bfd0dc;
  background: #edf4f8;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}
.market-trade a {
  color: #132f46;
  font-size: 15px;
  font-weight: 850;
}
.market-trade a:hover { color: #9a721e; }
.market-performance span,
.market-performance strong { display: block; }
.market-performance span {
  margin-bottom: 4px;
  color: #88959e;
  font-size: 10px;
  font-weight: 700;
}
.market-performance strong {
  color: #354f63;
  font-size: 14px;
  font-weight: 800;
}
.market-total {
  color: #23825e;
  background: #f6fbf8;
  font-size: 15px !important;
  font-weight: 850 !important;
}
.market-capacity {
  color: #276aa0;
  background: #f5f9fc;
  font-size: 16px !important;
  font-weight: 850 !important;
}
.market-empty-license,
.listing-market-empty {
  color: #71808a;
  background: #fafbfc;
}
.listing-market-empty { padding: 70px 20px !important; font-size: 15px !important; line-height: 1.8; }
.listing-market-empty small { color: #94a0a8; }

@media (max-width: 760px) {
  .listing-market-guide { min-height: 50px; padding: 0 13px; }
  .listing-market-guide strong { font-size: 15px; }
  .listing-market-guide span { font-size: 11px; }
  .listing-market-table { min-width: 1690px; }
  .listing-market-table tbody td { padding: 10px 6px; font-size: 13px; }
  .listing-market-table thead th { font-size: 11px; }
  .listing-market-table .market-number,
  .listing-market-table thead tr:first-child th:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    box-shadow: 3px 0 7px rgba(18, 45, 65, .08);
  }
  .listing-market-table thead tr:first-child th:first-child { z-index: 4; }
}

/* Fit the comparison table to the desktop viewport; switch to labeled rows on mobile. */
@media (min-width: 761px) {
  .listing-search-page .content-shell.container {
    width: calc(100% - 32px);
    max-width: 1760px;
  }
  .listing-market-table-wrap { overflow-x: hidden; }
  .listing-market-table {
    width: 100%;
    min-width: 0;
  }
  .listing-market-table .col-number { width: 4.5%; }
  .listing-market-table .col-status { width: 5%; }
  .listing-market-table .col-company { width: 5%; }
  .listing-market-table .col-year { width: 4%; }
  .listing-market-table .col-region { width: 4%; }
  .listing-market-table .col-money { width: 5.5%; }
  .listing-market-table .col-share { width: 4.5%; }
  .listing-market-table .col-category { width: 5.5%; }
  .listing-market-table .col-trade { width: 5.5%; }
  .listing-market-table .col-performance { width: 4.1%; }
  .listing-market-table .col-total { width: 4.3%; }
  .listing-market-table .col-capacity { width: 4.5%; }
  .listing-market-table thead th {
    height: 38px;
    padding: 6px 2px;
    font-size: clamp(9px, .78vw, 12px);
    line-height: 1.25;
    word-break: keep-all;
  }
  .listing-market-table tbody td {
    padding: 9px 3px;
    font-size: clamp(10px, .84vw, 14px);
    line-height: 1.3;
    word-break: keep-all;
  }
  .market-number a,
  .market-trade a,
  .market-total,
  .market-capacity { font-size: clamp(11px, .9vw, 15px) !important; }
  .market-price { font-size: clamp(11px, .92vw, 16px) !important; }
  .market-status span { font-size: clamp(10px, .78vw, 13px); }
  .market-category { padding: 3px 2px; font-size: clamp(9px, .68vw, 11px); }
  .market-performance span { font-size: clamp(8px, .62vw, 10px); }
  .market-performance strong { font-size: clamp(10px, .82vw, 14px); }
}

@media (min-width: 1401px) {
  .listing-search-page .content-shell.container {
    width: calc(100% - 190px);
    max-width: none;
    margin-right: 174px;
    margin-left: 16px;
  }
}

@media (max-width: 760px) {
  .listing-market { overflow: visible; border: 0; background: transparent; box-shadow: none; }
  .listing-market-guide { border: 1px solid #cfd8df; background: #eef3f6; }
  .listing-market-table-wrap { overflow: visible; }
  .listing-market-table,
  .listing-market-table tbody,
  .listing-market-table tr,
  .listing-market-table td {
    display: block;
    width: 100%;
  }
  .listing-market-table {
    min-width: 0;
    background: transparent;
  }
  .listing-market-table colgroup,
  .listing-market-table thead { display: none; }
  .listing-market-table tbody { padding: 0 0 12px; }
  .listing-market-table tr {
    overflow: hidden;
    margin: 0;
    border: 1px solid #cfd8df;
    border-top: 6px solid #eaf0f4;
    background: #fff;
  }
  .listing-market-table tr.listing-market-row-first {
    margin-top: 13px;
    border-top: 3px solid #557b98;
  }
  .listing-market-table tbody tr:hover > td { background-color: #edf5f9; }
  .listing-market-table tbody td,
  .listing-market-table .market-number {
    position: static;
    display: grid;
    min-height: 42px;
    grid-template-columns: 104px minmax(0, 1fr);
    align-items: center;
    padding: 8px 11px;
    border: 0;
    border-bottom: 1px solid #e0e6e9;
    box-shadow: none;
    text-align: left;
  }
  .listing-market-table tbody td::before {
    color: #647684;
    font-size: 11px;
    font-weight: 750;
    content: attr(data-label);
  }
  .listing-market-table tbody td:last-child { border-bottom: 0; }
  .listing-market-table .listing-market-row-first > td { border-top: 0; }
  .market-number {
    color: #fff;
    background: #0d2d47;
  }
  .market-number::before { color: #aebdca !important; }
  .market-number a {
    display: inline;
    color: #fff;
    font-size: 17px;
  }
  .market-number small {
    grid-column: 2;
    margin-top: 2px;
    color: #b9c7d1;
  }
  .market-status { background: #f7faf8; }
  .market-status span { justify-content: flex-start; }
  .market-status b { display: inline-block; grid-column: 2; justify-self: start; margin: 4px 4px 0 0; }
  .market-price {
    color: #be4e55;
    background: #fff8f8;
    font-size: 18px !important;
  }
  .market-category { justify-self: start; }
  .market-trade a { font-size: 16px; }
  .market-performance span { display: none; }
  .market-performance strong { font-size: 15px; }
  .market-total { color: #23825e; background: #f4fbf7; font-size: 16px !important; }
  .market-capacity { color: #276aa0; background: #f3f8fc; font-size: 16px !important; }
  .market-empty-license { grid-template-columns: 104px minmax(0, 1fr) !important; }
}

/* The marketplace keeps the consultation dock compact so comparison columns stay readable. */
@media (min-width: 1401px) {
  .listing-market-body .consult-side-dock {
    right: 12px;
    width: 62px;
    overflow: visible;
    border-radius: 8px;
  }
  .listing-market-body .consult-side-heading { display: none; }
  .listing-market-body .consult-side-action {
    width: 62px;
    min-height: 68px;
    align-items: center;
    justify-content: center;
    padding: 8px 3px;
    overflow: visible;
    text-align: center;
  }
  .listing-market-body .consult-side-action:hover { transform: translateX(-2px); }
  .listing-market-body .consult-side-action span {
    margin-top: 4px;
    font-size: 0;
    line-height: 1;
  }
  .listing-market-body .consult-side-action span::after {
    display: block;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
  }
  .listing-market-body .consult-side-action.phone span::after { content: "전화"; }
  .listing-market-body .consult-side-action.primary span::after { content: "상담"; }
  .listing-market-body .consult-side-action.naver span::after { content: "톡톡"; }
  .listing-market-body .consult-side-action.kakao span::after { content: "카톡"; }
  .listing-market-body .consult-side-action.office span::after { content: "지도"; }
  .listing-market-body .consult-side-action b {
    position: static;
    order: -1;
    width: 26px;
    height: 26px;
    color: #9b752c;
  }
  .listing-market-body .consult-side-action b .ui-icon { width: 23px; height: 23px; }
  .listing-market-body .consult-side-action small {
    position: absolute;
    top: 50%;
    right: 72px;
    width: max-content;
    max-width: 180px;
    margin: 0;
    padding: 8px 10px;
    color: #fff;
    border-radius: 4px;
    background: #102d46;
    box-shadow: 0 8px 20px rgba(7, 25, 45, .2);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.3;
    opacity: 0;
    pointer-events: none;
    transform: translate(7px, -50%);
    transition: opacity .18s, transform .18s;
  }
  .listing-market-body .consult-side-action:hover small,
  .listing-market-body .consult-side-action:focus-visible small {
    opacity: 1;
    transform: translate(0, -50%);
  }
  .listing-market-body .listing-search-page .content-shell.container {
    width: calc(100% - 104px);
    margin-right: 88px;
    margin-left: 16px;
  }
  .listing-market-body .listing-market-table tbody td {
    font-size: clamp(11px, .84vw, 14px);
  }
}

/* Bright ivory public theme: preserve the existing layout and use navy only as a brand anchor. */
.public-site {
  --gold: #c49a32;
  --gold-light: #e1bb59;
  --gold-pale: #fff1c9;
  --teal-pale: #dff3ee;
  --blue-pale: #e3eff8;
  --violet-pale: #eee8f7;
  --coral-pale: #f7e9df;
  --green-pale: #e9f4ee;
  --muted: #596b78;
  --line: #dce2df;
  --paper: #fbf8f1;
}

.public-site .top-notice {
  color: #536675;
  background: #f3eddf;
  border-bottom: 1px solid #e1d8c5;
}
.public-site .top-notice a { color: #8b651d; }
.public-site .site-header { background: rgba(12, 39, 61, .98); }
.public-site .site-header.is-scrolled { background: rgba(9, 33, 53, .97); }

.public-site .home-hero {
  color: var(--navy);
  background:
    radial-gradient(circle at 78% 18%, rgba(225, 187, 89, .22), transparent 31%),
    radial-gradient(circle at 90% 78%, rgba(36, 121, 111, .09), transparent 28%),
    linear-gradient(135deg, #fffdf8 0%, #fbf6eb 54%, #f3ead8 100%);
}
.public-site .home-hero::before { background: linear-gradient(90deg, rgba(255, 253, 248, .82), transparent 64%); }
.public-site .blueprint-grid {
  opacity: .58;
  background-image:
    linear-gradient(rgba(23, 59, 87, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 59, 87, .055) 1px, transparent 1px);
}
.public-site .hero-orbit { border-color: rgba(167, 124, 36, .19); }
.public-site .hero-copy h1 { color: #132d43; }
.public-site .word-line.gold-line { color: #9d7423; }
.public-site .hero-lead { color: #526978; }
.public-site .button-ghost { color: #173b57; border-color: rgba(23, 59, 87, .34); background: rgba(255, 255, 255, .68); }
.public-site .button-ghost:hover { color: #173b57; border-color: var(--gold); background: #fff; }
.public-site .hero-services li { color: #5b491f; border-color: #e2c77f; background: #fff1c9; }
.public-site .hero-services li:nth-child(2) { color: #245f56; border-color: #a9d8cd; background: #dff3ee; }
.public-site .hero-services li:nth-child(3) { color: #315f83; border-color: #b7d2e5; background: #e3eff8; }
.public-site .hero-services li:nth-child(4) { color: #694c82; border-color: #d2c2df; background: #eee8f7; }
.public-site .hero-services li:nth-child(5) { color: #984f3a; border-color: #e6c5b6; background: #f7e9df; }
.public-site .quick-consult-card {
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 24px 58px rgba(52, 59, 55, .14);
}
.public-site .quick-consult-card select,
.public-site .quick-consult-card input:not([type=checkbox]),
.public-site .quick-consult-card textarea { background: #fffdfa; border-color: #d8d5cb; }
.public-site .hero-stats { border-top-color: #d9caa8; }
.public-site .hero-stats div { border-left-color: #d9caa8; }
.public-site .hero-stats strong,
.public-site .hero-stats div:nth-child(2) strong,
.public-site .hero-stats div:nth-child(3) strong { color: #8f691e; }
.public-site .hero-stats span { color: #5e707c; }

.public-site .quick-search,
.public-site .filter-panel,
.public-site .listing-search { box-shadow: 0 16px 42px rgba(42, 50, 47, .1); }
.public-site .quick-search input,
.public-site .quick-search select,
.public-site .listing-search input,
.public-site .listing-search select { background: #fffdfa; }

.public-site .service-hub { background: #fbf8f1; }
.public-site .service-grid { border-top-color: #d6d0c4; }
.public-site .service-card.feature {
  color: var(--navy);
  background: radial-gradient(circle at 85% 80%, rgba(196, 154, 50, .18), transparent 35%), linear-gradient(135deg, #fff1c9, #fffaf0 72%);
}
.public-site .service-card.feature::before { color: rgba(157, 116, 35, .08); }
.public-site .service-card.feature h3 { color: var(--navy); }
.public-site .service-card.feature > strong { color: #526473; }
.public-site .service-card.feature .service-index { color: #7f5c19; border-color: #d7b762; background: #fff8df; }
.public-site .service-card:not(.feature):hover { color: var(--navy); }

.public-site .expertise-section { color: var(--ink); background: #f7f2e8; }
.public-site .expertise-copy h2 { color: #173b57; }
.public-site .expertise-copy h2 em { color: #9d7423; }
.public-site .expertise-copy > p:not(.eyebrow) { color: #536775; }
.public-site .expertise-copy dl { border-top-color: #d9d2c4; }
.public-site .expertise-copy dl div { border-bottom-color: #ddd6c9; }
.public-site .expertise-copy dd strong { color: #18364e; }
.public-site .expertise-copy dd span { color: #5a6c78; }
.public-site .expertise-copy dl div:nth-child(1) dt { color: #267566; border-color: #9ccfc3; background: #dff3ee; }
.public-site .expertise-copy dl div:nth-child(2) dt { color: #356f9c; border-color: #b7d2e5; background: #e3eff8; }
.public-site .expertise-copy dl div:nth-child(3) dt { color: #74558f; border-color: #cfbfdd; background: #eee8f7; }

.public-site .latest-section { background: #fffdf8; }
.public-site .consult-strip { background: #173b57; }
.public-site .process-section { color: var(--ink); background: #f3eddf; }
.public-site .process-section .section-heading h2 { color: #173b57; }
.public-site .process-section .section-heading h2 em { color: #9d7423; }
.public-site .process-section .section-heading p:last-child { color: #5b6d79; }
.public-site .home-process::before { background: #d3c39e; }
.public-site .home-process li > span { color: var(--process-accent); }
.public-site .home-process li > i { border-color: #f3eddf; }
.public-site .home-process h3 { color: #173b57; }
.public-site .home-process p { color: #5b6d79; }
.public-site .home-process .process-contact { --process-accent: #9d7423; }
.public-site .home-process .process-review { --process-accent: #24796f; }
.public-site .home-process .process-execute { --process-accent: #356f9c; }
.public-site .home-process .process-complete { --process-accent: #74558f; }
.public-site .contact-channel-section { background: #fffaf0; }

.public-site .inner-main { background: #fbf8f1; }
.public-site .inner-hero,
.public-site .service-hero {
  color: #173b57;
  background:
    radial-gradient(circle at 82% 20%, rgba(225, 187, 89, .22), transparent 30%),
    linear-gradient(130deg, #fffdf8, #f4ecdc);
}
.public-site .inner-hero p:last-child,
.public-site .service-hero .container > p:not(.eyebrow) { color: #5a6d7a; }
.public-site .service-number { color: rgba(157, 116, 35, .1); }
.public-site .service-lines i { background: rgba(157, 116, 35, .13); }

.public-site .final-cta { background: linear-gradient(110deg, #173b57, #244f6e); }
.public-site .site-footer { background: #0b263c; }

.detail-contact-actions { display: grid; gap: 9px; }
.detail-contact-actions .button { width: 100%; min-width: 0; margin: 0; }
.detail-print-button { color: #fff; border: 1px solid rgba(255, 255, 255, .42); background: transparent; cursor: pointer; }
.detail-print-button:hover { color: var(--navy); border-color: #fff; background: #fff; }
.listing-print-sheet { display: none; }

@media (max-width: 700px) {
  .detail-compact-sheet .detail-contact-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .detail-compact-sheet .detail-contact-actions .button,
  .detail-compact-sheet .detail-contact-actions .button + .button { width: 100%; margin: 0; }
  .detail-compact-sheet .detail-print-button { grid-column: 1 / -1; }
}

@media print {
  @page { size: A4 portrait; margin: 7mm; }
  * { box-sizing: border-box; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  html, body { width: 196mm; min-width: 0; margin: 0; padding: 0; color: #142b3d; background: #fff; }
  .top-notice,
  .site-header,
  .scroll-progress,
  .consult-side-dock,
  .mobile-quick,
  .site-footer,
  .detail-page > :not(.listing-print-sheet) { display: none !important; }
  .public-site .inner-main,
  .detail-page { min-height: 0; padding: 0; background: #fff; }
  .listing-print-sheet {
    display: flex !important;
    width: 196mm;
    height: 283mm;
    margin: 0;
    overflow: hidden;
    flex-direction: column;
    gap: 3mm;
    color: #142b3d;
    background: #fff;
    font-family: "Pretendard", "Noto Sans KR", sans-serif;
  }
  .print-sheet-header {
    display: flex;
    height: 17mm;
    flex: 0 0 17mm;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 3mm;
    border-bottom: .7mm solid #173b57;
  }
  .print-sheet-brand { display: flex; align-items: center; gap: 2.2mm; }
  .print-sheet-brand-mark { display: block; width: 12mm; height: 12mm; overflow: hidden; flex: 0 0 12mm; }
  .print-sheet-brand-mark img { display: block; width: 49.8mm; max-width: none; height: 12mm; }
  .print-sheet-brand > span:last-child { display: block; }
  .print-sheet-brand b { display: block; color: #173b57; font-size: 12.5pt; font-weight: 900; letter-spacing: -.05em; }
  .print-sheet-brand small { display: block; margin-top: .7mm; color: #7b6851; font-size: 6pt; font-weight: 800; letter-spacing: .22em; }
  .print-sheet-document-title { text-align: right; }
  .print-sheet-document-title strong { display: block; color: #173b57; font-size: 14pt; letter-spacing: -.04em; }
  .print-sheet-document-title span { display: block; margin-top: 1mm; color: #72808a; font-size: 6.5pt; font-weight: 700; letter-spacing: .12em; }
  .print-sheet-title {
    display: grid;
    min-height: 27mm;
    grid-template-columns: minmax(0, 1fr) 42mm;
    align-items: stretch;
    color: #fff;
    background: #173b57;
  }
  .print-sheet-title > div { padding: 4mm 5mm; }
  .print-sheet-title p { display: flex; align-items: center; gap: 3mm; margin: 0 0 2mm; font-size: 7pt; }
  .print-sheet-title p b { color: #f1cf72; font-size: 9pt; }
  .print-sheet-title p span { padding: .8mm 2mm; color: #143b2d; background: #bde8cf; font-weight: 800; }
  .print-sheet-title p time { color: #c0ccd4; }
  .print-sheet-title h1 { margin: 0 0 1.5mm; font-size: 18pt; line-height: 1.1; }
  .print-sheet-title small { color: #c5d0d7; font-size: 7pt; }
  .print-sheet-title > dl { display: grid; align-content: center; justify-items: center; margin: 0; border-left: 1px solid rgba(255,255,255,.2); background: #0d2d47; }
  .print-sheet-title > dl dt { color: #c0cbd2; font-size: 7pt; font-weight: 700; }
  .print-sheet-title > dl dd { margin: 2mm 0 0; color: #ffd06a; font-size: 17pt; font-weight: 900; }
  .print-sheet-summary { display: grid; height: 16mm; flex: 0 0 16mm; grid-template-columns: repeat(5, 1fr); border: .3mm solid #ced8de; }
  .print-sheet-summary dl { display: grid; align-content: center; justify-items: center; margin: 0; border-right: .3mm solid #dce3e7; }
  .print-sheet-summary dl:last-child { border-right: 0; }
  .print-sheet-summary dt { color: #637480; font-size: 6.5pt; font-weight: 700; }
  .print-sheet-summary dd { margin: 1.2mm 0 0; color: #173b57; font-size: 11pt; font-weight: 900; }
  .print-sheet-block { break-inside: avoid; }
  .print-sheet-block h2 { display: flex; height: 8mm; align-items: center; gap: 2mm; margin: 0; padding: 0 3mm; color: #173b57; border: .3mm solid #cbd7de; border-bottom: 0; background: #edf3f6; font-size: 9pt; }
  .print-sheet-block h2 > span { display: inline-grid; width: 6mm; height: 5mm; place-items: center; color: #fff; background: #4f7997; font-size: 6pt; }
  .print-sheet-block h2 > small { margin-left: auto; color: #687986; font-size: 6pt; font-weight: 700; }
  .print-sheet-facts { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; border-top: .3mm solid #d6dfe4; border-left: .3mm solid #d6dfe4; }
  .print-sheet-facts div { display: grid; min-height: 11mm; grid-template-columns: 17mm minmax(0, 1fr); border-right: .3mm solid #d6dfe4; border-bottom: .3mm solid #d6dfe4; }
  .print-sheet-facts dt,
  .print-sheet-facts dd { display: flex; align-items: center; margin: 0; padding: 1.5mm 2mm; }
  .print-sheet-facts dt { color: #526977; background: #f4f7f8; font-size: 6.2pt; font-weight: 700; }
  .print-sheet-facts dd { color: #172f40; font-size: 7.2pt; font-weight: 800; }
  .print-license-block table { width: 100%; table-layout: fixed; border-collapse: collapse; }
  .print-license-block th,
  .print-license-block td { height: 9mm; padding: 1mm; border: .3mm solid #d3dde2; text-align: center; font-size: 6.2pt; }
  .print-license-block th { height: 7mm; color: #405b6c; background: #f1f5f7; font-weight: 800; }
  .print-license-block th:first-child { width: 28mm; }
  .print-license-block th:nth-child(2) { width: 11mm; }
  .print-license-block th:nth-child(3) { width: 12mm; }
  .print-license-block td:first-child { text-align: left; padding-left: 2mm; }
  .print-license-block td strong { display: block; color: #173b57; font-size: 7.5pt; }
  .print-license-block td small { display: block; margin-top: .5mm; color: #7a8992; font-size: 5.3pt; }
  .print-license-block td.total { color: #18714f; background: #f0f8f4; font-weight: 900; }
  .print-sheet-bottom { display: grid; grid-template-columns: 74mm minmax(0, 1fr); gap: 3mm; }
  .print-sheet-status { display: grid; grid-template-columns: repeat(2, 1fr); margin: 0; border-top: .3mm solid #d6dfe4; border-left: .3mm solid #d6dfe4; }
  .print-sheet-status div { display: grid; min-height: 10mm; grid-template-columns: 16mm minmax(0, 1fr); border-right: .3mm solid #d6dfe4; border-bottom: .3mm solid #d6dfe4; }
  .print-sheet-status dt,
  .print-sheet-status dd { display: flex; align-items: center; margin: 0; padding: 1mm 1.5mm; font-size: 6.2pt; }
  .print-sheet-status dt { color: #526977; background: #f4f7f8; font-weight: 700; }
  .print-sheet-status dd { font-weight: 800; }
  .print-sheet-notes p { height: 20mm; margin: 0; overflow: hidden; padding: 2.2mm 3mm; border: .3mm solid #d6dfe4; font-size: 6.6pt; font-weight: 650; line-height: 1.55; }
  .print-sheet-footer { display: grid; min-height: 17mm; grid-template-columns: 45mm minmax(0, 1fr); align-items: center; margin-top: auto; padding: 2.5mm 4mm; color: #fff; background: #173b57; }
  .print-sheet-footer > div strong,
  .print-sheet-footer > div span { display: block; }
  .print-sheet-footer > div strong { font-size: 11pt; }
  .print-sheet-footer > div span { margin-top: .7mm; color: #b9c8d2; font-size: 5.8pt; }
  .print-sheet-footer dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; }
  .print-sheet-footer dl div { padding-left: 3mm; border-left: .3mm solid rgba(255,255,255,.2); }
  .print-sheet-footer dt { color: #b9c8d2; font-size: 5.7pt; }
  .print-sheet-footer dd { margin: 1mm 0 0; font-size: 7pt; font-weight: 800; }
}

@media (max-width: 980px) {
  .public-site .mobile-nav { background: #0b263c; }
}
