.prices-page { color: #364440; background: #f6f5f3; }
.prices-header { background: white; border-bottom: 1px solid #ddd6d2; padding: 22px 0; }
.prices-nav { display:flex; gap:20px; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.prices-nav img { width:190px; max-width:100%; }
.prices-nav nav, .price-actions { display:flex; flex-wrap:wrap; gap:12px 24px; }
.prices-page:not(.prices-themed) a, .prices-themed .prices-main a { color:#514440; text-decoration:underline; text-underline-offset:4px; }
.prices-main { padding-top:60px; padding-bottom:70px; }
.prices-main h1 { font-size:clamp(32px,5vw,56px); }
.prices-themed .prices-main > h2, .prices-themed .prices-intro { color:#fff; }
.prices-themed .prices-main > p:not(.prices-intro) a { color:#fff; }
.prices-themed .breadcumb-wrapper { background-position:center; background-size:cover; }
@media(max-width:575px) { .prices-themed .breadcumb-wrapper { padding-top:180px; } }
.prices-intro { max-width:780px; margin-bottom:32px; }
.prices-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:32px 0 56px; }
.prices-card, .price-sheet, .prices-archive { background:white; border:1px solid #ded8d4; border-radius:16px; padding:28px; }
.prices-card h2 { font-size:23px; }
.price-sheet { margin-bottom:36px; scroll-margin-top:24px; }
.price-sheet h2 { font-size:clamp(26px,4vw,36px); }
.price-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 24px; margin:24px 0; }
.price-meta p { margin:0; color:#364440; overflow-wrap:anywhere; }
.price-table-wrap { overflow-x:auto; margin:24px 0; border-radius:8px; border:1px solid #d6d0cc; }
.price-table { width:100%; min-width:650px; border-collapse:collapse; margin:0; color:#364440; }
.price-table caption { caption-side:top; padding:14px; color:#364440; font-weight:600; }
.price-table th { background:#364440; color:white; text-align:left; font-weight:500; }
.price-table th, .price-table td { padding:18px 16px; border:1px solid #d6d0cc; vertical-align:top; }
.price-table td:nth-last-child(-n+2) { white-space:nowrap; }
.price-table tbody tr:nth-child(even) { background:#f6f5f3; }
.price-table small, .price-table em { display:block; font-size:13px; }
.price-table strong { font-size:21px; }
.price-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.price-notes h3 { font-size:21px; }
.price-notes ul { padding-left:20px; }
.price-notes li { margin-bottom:10px; }
.price-validity { border-top:1px solid #ddd6d2; padding-top:20px; }
.price-badge { display:inline-block; background:#ededed; color:#364440; border-radius:30px; padding:3px 14px; font-size:14px; }
.prices-page a:focus-visible, .price-table-wrap:focus-visible { outline:3px solid #79675f; outline-offset:5px; }
@media(max-width:767px) { .prices-main { padding-top:35px; } .prices-index, .price-notes, .price-meta { grid-template-columns:1fr; } .prices-card, .price-sheet, .prices-archive { padding:20px; } .prices-nav nav { gap:12px; } }
@media print { .prices-header, .prices-index, .price-actions, .footer-wrapper, .prices-themed .th-header, .prices-themed .th-menu-wrapper, .prices-themed .sidemenu-wrapper, .prices-themed .breadcumb-wrapper { display:none; } .prices-main { padding:0; } .price-sheet { break-before:page; border:0; padding:0; } .price-table-wrap { overflow:visible; } .price-table { min-width:0; } .price-notes { display:block; } }
