.pricing-page {
    --pricing-gold: #c7a740;
    --pricing-border: #e3dfd5;
    --pricing-header-offset: 0px;
    --pricing-scroll-offset: 240px;
    padding: 54px 0 90px;
    color: #20242b;
}
.pricing-hero {
    padding: 46px 30px;
    text-align: center;
    background: linear-gradient(130deg, #f7f1dc, #fff 62%, #f6f4ed);
    border: 1px solid #e6dfca;
    border-radius: 18px;
}
.pricing-eyebrow {font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#8a6a1b}
.pricing-hero h1 {margin:14px 0 10px;font-size:clamp(38px,5vw,68px);line-height:1.08;font-weight:800}
.pricing-hero p {font-size:18px;color:#555;margin:0}
.pricing-languages {display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:25px}
.pricing-languages a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 44px;
    padding: 10px 18px;
    background: #fff;
    border: 1px solid #c9b978;
    border-radius: 6px;
    color: #292929;
    text-decoration: none;
}
.pricing-languages img {width:25px;height:17px;object-fit:cover;border:0;border-radius:2px;flex-shrink:0}
.pricing-languages a.active {background:#252525;color:#fff;border-color:#252525}
.pricing-languages a:hover {border-color:#8a6a1b}
.pricing-languages a:focus-visible,.pricing-nav a:focus-visible {outline:3px solid #8a6a1b;outline-offset:3px}
.pricing-nav {
    position: sticky;
    top: var(--pricing-header-offset);
    z-index: 30;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0 30px;
    padding: 12px 0;
    background: #fff;
    border-bottom: 1px solid #ebe6d9;
    box-shadow: 0 14px 22px -24px #5b4c25;
}
.pricing-nav a {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) 14px;
    align-items: center;
    gap: 10px;
    padding: 15px 13px;
    min-height: 84px;
    border: 1px solid var(--pricing-border);
    border-radius: 8px;
    background: #faf9f5;
    color: #34332f;
    text-decoration: none;
    line-height: 1.4;
    font-size: 14px;
    font-weight: 600;
    transition: background-color .15s, border-color .15s;
}
.pricing-nav a:hover {background:#f4efdc;border-color:#c7a740}
.pricing-nav a[aria-current="location"] {background:#f2df94;border-color:#c3a13d;color:#27251b}
.pricing-nav-index {display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border:1px solid #e5ddc4;border-radius:50%;font-size:11px;font-weight:700;color:#896c25}
.pricing-nav svg {width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.pricing-section {margin-top:42px;scroll-margin-top:var(--pricing-scroll-offset)}
.pricing-section-heading {
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    align-items:start;
    gap:18px;
    padding:24px;
    margin-bottom:24px;
    border-left:3px solid var(--pricing-gold);
    border-radius:0 8px 8px 0;
    background:linear-gradient(110deg,#f8f5e9,#fcfbf8 70%,#fff);
}
.pricing-section-number {
    display:flex;
    align-items:center;
    justify-content:center;
    width:56px;
    height:56px;
    border-radius:8px;
    background:#efe1ac;
    color:#79601d;
    font-size:22px;
    line-height:1;
    font-weight:700;
    font-variant-numeric:tabular-nums;
}
.pricing-section-copy {min-width:0;align-self:center}
.pricing-section h2 {font-size:clamp(21px,2vw,27px);font-weight:700;line-height:1.4;letter-spacing:-.02em;margin:0;text-wrap:balance}
.pricing-section-heading p {margin:8px 0 0;max-width:960px;font-size:14px;line-height:1.75;color:#68665e;white-space:pre-line}
.pricing-group {margin:32px 0}
.pricing-group h3 {font-size:20px;margin-bottom:14px}
.pricing-table {width:100%;border-collapse:collapse;font-size:15px;font-weight:400}
.pricing-table th {background:#f3efe4;text-align:left;font-weight:600}
.pricing-table th,.pricing-table td {padding:15px;border:1px solid var(--pricing-border);vertical-align:top}
.pricing-table td:first-child {width:20%;font-weight:500}
.pricing-table td:last-child {width:23%;font-weight:600;white-space:normal}
.pricing-table tr:nth-child(even) td {background:#fbfaf7}
.pricing-bottom {display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:50px}
.pricing-note {padding:28px;background:#f8f6ee;border-radius:12px}
.pricing-note h2 {font-size:22px;margin:0 0 13px}
.pricing-note p {white-space:pre-line;line-height:1.7;margin:0}
.pricing-contact {text-align:center;margin-top:35px;color:#555}
.pricing-page[lang="ko"] {word-break:keep-all;overflow-wrap:anywhere}
@media (max-width:991px) {
    .pricing-nav {grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(210px,42%);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c7a740 #f4f1e7}
    .pricing-nav a {min-height:74px;font-size:13px;padding:11px}
}
@media (max-width:700px) {
    .pricing-page {padding:25px 0 55px}
    .pricing-hero {padding:32px 18px}
    .pricing-languages {gap:7px}
    .pricing-languages a {padding:9px 11px;font-size:13px;gap:7px}
    .pricing-section h2 {font-size:20px;line-height:1.45}
    .pricing-section-heading {grid-template-columns:40px minmax(0,1fr);gap:12px;padding:18px 14px}
    .pricing-section-number {width:40px;height:40px;font-size:18px;border-radius:6px}
    .pricing-section-heading p {font-size:13px;line-height:1.65}
    .pricing-table,.pricing-table tbody,.pricing-table tr,.pricing-table td {display:block;width:100%}
    .pricing-table thead {display:none}
    .pricing-table tr {border:1px solid #ddd7c8;margin-bottom:12px;border-radius:9px;overflow:hidden}
    .pricing-table td {border:0!important;width:100%!important;padding:9px 15px}
    .pricing-table td:before {content:attr(data-label);display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#777;margin-bottom:3px}
    .pricing-table td:last-child {background:#f3efe4!important;color:#6e5313}
    .pricing-bottom {grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce) {
    .pricing-nav a {transition:none}
}
