/* ============================================================
 * Plaza Noble — auto-extracted classes (replaces inline style="..."
 * declarations from blade views). Generated 2026-05-23.
 * Class names are hash-based; the styles themselves are exact-equivalent.
 * ============================================================ */

.pn-x-d79ce2bc {
    margin-top:8px;
}

.pn-x-e0dd9147 {
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:rgba(16,185,129,.10);
    color:#047857;
    padding:4px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:600;
    letter-spacing:.02em;
}

.pn-x-f8caa0e8 {
    width:6px;
    height:6px;
    border-radius:999px;
    background:#10b981;
    box-shadow:0 0 0 0 rgba(16,185,129,.6);
    animation:pn-pulse 1.6s infinite;
}

.pn-x-770e8032 {
    width:100%;
    padding:8px 10px;
    border:1px solid var(--pn-divider);
    border-radius:8px;
    font-size:13px;
}

.pn-x-567fe722 {
    width:100%;
    background:var(--pn-ink);
    color:var(--pn-pearl);
    border:0;
    border-radius:8px;
    padding:10px;
    margin-top:10px;
    cursor:pointer;
    font-family:inherit;
    font-size:13px;
}

.pn-x-0b5e7715 {
    background:#fff;
    border:1px solid var(--pn-border, #e8e2d5);
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:6px;
    width:48px;
    height:48px;
}

.pn-x-f0d1bd04 {
    display:none;
    font-family:var(--pn-font-mono);
    font-size:11px;
    font-weight:600;
    color:var(--pn-ink);
}

.pn-x-9d55334c {
    font-family:var(--pn-font-mono);
    font-size:9px;
    letter-spacing:.08em;
    color:var(--pn-gold-deep);
    text-transform:uppercase;
}

.pn-x-1c6b7fe1 {
    left:50%;
}

.pn-x-d1906aaf {
    font-size:10px;
    text-align:right;
    margin-top:2px;
}

.pn-x-15d65a92 {
    padding:80px 20px;
    text-align:center;
    color:var(--pn-text-muted);
}

.pn-x-61a403fb {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pn-x-cdd8ca06 {
    text-align: center;
}

.pn-x-56a5e96c {
    display:inline-flex;
    margin-bottom:24px;
    color:var(--pn-emerald);
}

.pn-x-db088efe {
    font-family: var(--pn-font-display);
    font-size: clamp(36px, 5vw, 72px);
    color: var(--pn-emerald);
    margin: 0 0 24px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pn-x-eba03c2f {
    font-size: 17px;
    color: var(--pn-text-muted);
    margin-bottom: 32px;
}

.pn-x-4abfd728 {
    display:flex;
    gap:14px;
    justify-content:center;
    flex-wrap:wrap;
}

.pn-x-fcb9ebb3 {
    font-size:11px;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.pn-x-df8398ce {
    margin:10px 0 6px;
    font-size:30px;
}

.pn-x-e9073c54 {
    margin:0 0 28px;
    font-size:13px;
}

.pn-x-232b4cd3 {
    display:grid;
    grid-template-columns:1fr 320px;
    gap:24px;
    align-items:start;
}

.pn-x-183ff293 {
    font-size:11px;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--pn-gold-deep);
    margin-bottom:14px;
}

.pn-x-29d75438 {
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px;
    border:1px solid var(--pn-divider);
    border-radius:10px;
    cursor:pointer;
    margin-bottom:10px;
}

.pn-x-84c8d1a5 {
    accent-color:var(--pn-emerald);
}

.pn-x-d5e8c5f3 {
    flex:1;
}

.pn-x-e023a1ff {
    font-weight:500;
    font-size:14px;
}

.pn-x-327897d7 {
    font-size:11px;
    margin-top:2px;
}

.pn-x-85448885 {
    border-top:1px solid var(--pn-divider);
    margin:18px 0;
}

.pn-x-c715b57e {
    background:#fffceb;
    border:1px dashed #d4a017;
    border-radius:10px;
    padding:14px;
    margin-bottom:14px;
    font-size:12px;
    color:#7a5c00;
}

.pn-x-0490e553 {
    width:100%;
    padding:14px;
    font-size:14px;
    letter-spacing:.06em;
    text-transform:uppercase;
    border-radius:10px;
    border:0;
    background:var(--pn-ink);
    color:var(--pn-pearl);
    cursor:pointer;
    font-family:inherit;
}

.pn-x-b3f5a599 {
    border:1px solid var(--pn-divider);
    border-radius:14px;
    padding:20px;
    background:#fff;
    position:sticky;
    top:20px;
}

.pn-x-ecb1d92f {
    font-size:10px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.pn-x-8046fbfe {
    margin:14px 0 10px;
}

.pn-x-44265a69 {
    font-weight:500;
}

.pn-x-49f06467 {
    font-size:10px;
}

.pn-x-e20b38b6 {
    border-top:1px solid var(--pn-divider);
    padding-top:14px;
    display:flex;
    justify-content:space-between;
    align-items:baseline;
}

.pn-x-5c5e0857 {
    font-size:22px;
    font-weight:500;
    font-family:var(--pn-font-display);
}

.pn-x-258b479d {
    text-align:right;
    font-size:11px;
}

.pn-x-482a535a {
    text-align:center;
    padding:24px 0;
}

.pn-x-6656242e {
    width:72px;
    height:72px;
    margin:0 auto 14px;
    border-radius:50%;
    background:rgba(16,185,129,.10);
    display:flex;
    align-items:center;
    justify-content:center;
}

.pn-x-af080cc7 {
    font-size:34px;
    color:var(--pn-emerald);
}

.pn-x-0dcc9492 {
    margin:8px 0 4px;
    font-size:30px;
}

.pn-x-9bd93d36 {
    font-size:12px;
}

.pn-x-806ac380 {
    margin:14px auto 0;
    font-size:13px;
    max-width:480px;
}

.pn-x-3dca3508 {
    background:#fff;
    border:1px solid var(--pn-divider);
    border-radius:14px;
    padding:24px;
    margin-top:8px;
}

.pn-x-c70dad8d {
    font-size:10px;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.pn-x-cc55c566 {
    display:flex;
    align-items:center;
    gap:10px;
    margin:10px 0;
}

.pn-x-3c4ce4fd {
    width:36px;
    height:36px;
    border-radius:50%;
    background:#0F0B0A;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--pn-font-mono);
    font-size:11px;
}

.pn-x-2da65040 {
    font-size:14px;
    font-weight:500;
}

.pn-x-2124dd6a {
    display:flex;
    justify-content:space-between;
    gap:14px;
}

.pn-x-7e32f78b {
    font-size:20px;
    font-weight:500;
}

.pn-x-765ea511 {
    flex:1;
    text-align:center;
    align-self:center;
}

.pn-x-643a7cf5 {
    font-size:11px;
}

.pn-x-bf579e93 {
    font-size:10px;
    margin-top:2px;
}

.pn-x-08a0ed40 {
    text-align:right;
}

.pn-x-d9712029 {
    border-top:1px solid var(--pn-divider);
    margin:18px 0 0;
    padding-top:14px;
    display:flex;
    justify-content:space-between;
    align-items:baseline;
}

.pn-x-de074401 {
    font-size:13px;
    color:var(--pn-emerald);
    font-weight:500;
}

.pn-x-ded8d64a {
    display:flex;
    gap:10px;
    margin-top:18px;
    flex-wrap:wrap;
}

.pn-x-919dcbe5 {
    padding:12px 22px;
    border-radius:10px;
    background:var(--pn-ink);
    color:var(--pn-pearl);
    text-decoration:none;
    font-size:13px;
    letter-spacing:.04em;
}

.pn-x-bcebbb08 {
    padding:12px 22px;
    border-radius:10px;
    border:1px solid var(--pn-divider);
    color:var(--pn-ink);
    text-decoration:none;
    font-size:13px;
    letter-spacing:.04em;
}

.pn-x-cd17f657 {
    color: var(--pn-pearl);
}

.pn-x-2847b750 {
    font-size: 20px;
    letter-spacing: 0.01em;
    color: var(--pn-emerald);
}

.pn-x-91646931 {
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-top: 2px;
}

.pn-x-e350fcea {
    display: flex;
    align-items: center;
    gap: var(--pn-s4);
}

.pn-x-e48ea9fc {
    font-size: 16px;
    font-weight: 500;
}

.pn-x-7ef33787 {
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1;
    margin-top: var(--pn-s3);
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pn-x-4fe2327c {
    font-size: 14px;
    margin-top: var(--pn-s2);
}

.pn-x-7851dbc0 {
    text-align: right;
}

.pn-x-0909a631 {
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pn-x-943857f2 {
    font-size: 32px;
    font-weight: 500;
    letter-spacing: 0.02em;
    margin-top: var(--pn-s2);
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
}

.pn-x-dee1a4cb {
    margin-top: var(--pn-s3);
    justify-content: flex-end;
    font-size: 13px;
}

.pn-x-347bb3fe {
    font-size: 22px;
    line-height: 1.1;
    margin-top: var(--pn-s2);
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pn-x-4435f066 {
    font-size: 13px;
    margin-top: 4px;
}

.pn-x-066f734c {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: var(--pn-s3);
}

.pn-x-dc310e06 {
    margin-left: auto;
}

.pn-x-224b51a7 {
    display: none;
}

.pn-x-5991062e {
    font-size: 11px;
    padding: var(--pn-s4) 0;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.pn-x-14e3b77a {
    text-decoration: none;
    color: inherit;
    gap: var(--pn-s6);
}

.pn-x-695916a3 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.pn-x-b8738b98 {
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 0.04em;
    margin-top: var(--pn-s2);
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
    text-transform: uppercase;
}

.pn-x-697a3fa6 {
    gap: var(--pn-s3);
}

.pn-x-4d885f43 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
    padding-top: var(--pn-s3);
    border-top: 1px solid var(--pn-divider);
}

.pn-x-ee7032c9 {
    font-size: 24px;
    font-weight: 500;
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
}

.pn-x-69696506 {
    background: var(--pn-ink);
    color: var(--pn-pearl);
}

.pn-x-0a46b9f7 {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    opacity: 0.85;
}

.pn-x-7223d74d {
    font-size: clamp(28px, 3.5vw, 44px);
    line-height: 1;
    margin-top: var(--pn-s4);
    font-family: var(--pn-font-display);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pn-x-8fef49b8 {
    font-size: 14px;
    opacity: 0.85;
    margin-top: var(--pn-s2);
    max-width: 380px;
}

.pn-x-5a9861b7 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: var(--pn-s6);
}

.pn-x-8be47f9a {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    opacity: 0.7;
}

.pn-x-e27e7298 {
    font-size: 24px;
    font-weight: 500;
}

.pn-x-aa1abe98 {
    display: flex;
    flex-direction: column;
    gap: var(--pn-s4);
    text-decoration: none;
    color: inherit;
}

.pn-x-cf8c1b37 {
    font-size: 18px;
    line-height: 1.15;
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pn-x-8a9a6973 {
    font-size: 12px;
    margin-top: 4px;
}

.pn-x-c12bf7bf {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-top: auto;
}

.pn-x-7c831951 {
    font-size: 10px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.pn-x-984fb323 {
    font-size: 17px;
    font-weight: 500;
}

.pn-x-eebeb84a {
    font-size: 24px;
    letter-spacing: 0.03em;
    color: var(--pn-emerald);
    font-family: var(--pn-font-display);
    text-transform: uppercase;
}

.pn-x-628efcac {
    font-size: 12px;
    letter-spacing: 0.06em;
    margin-top: var(--pn-s2);
    text-transform: uppercase;
}

.pn-x-6d7c16e5 {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.pn-x-d421c747 {
    font-size: 13.5px;
}

.pn-x-69621a72 {
    line-height: 1.45;
}

.pn-x-99ad52cc {
    margin-top: 3px;
    opacity: 0.75;
}

.pn-x-58a25fc6 {
    color: var(--pn-pearl);
    border-color: rgba(245,243,238,0.3);
}

.pn-x-bbd0d52b {
    margin-top: var(--pn-s5);
    max-width: 920px;
}

.pn-x-a396a235 {
    font-size: 18px;
    line-height: 1.65;
    color: var(--pn-text);
    margin-top: var(--pn-s7);
    max-width: 720px;
}

.pn-x-28040664 {
    font-size: 11px;
    letter-spacing: 0.12em;
    margin-bottom: var(--pn-s4);
}

.pn-x-c156780d {
    font-size: 22px;
    letter-spacing: 0.02em;
    text-transform: none;
}

.pn-x-e7eedede {
    margin-top: var(--pn-s3);
    color: var(--pn-text);
    font-size: 14px;
}

.pn-x-a70f0e0e {
    border-radius: var(--pn-r-lg);
    overflow: hidden;
    aspect-ratio: 4 / 5;
    background: var(--pn-pearl-warm);
}

.pn-x-b694bcc1 {
    font-size: 16px;
    margin-top: var(--pn-s4);
    color: var(--pn-text);
}

.pn-x-6f275a57 {
    font-size: 12px;
    letter-spacing: 0.08em;
    margin-top: var(--pn-s1);
}

.pn-x-ae07be8e {
    background: #3a342d;
}

.pn-x-203bbac2 {
    background: #4a3d2a;
}

.pn-x-2b3963f4 {
    padding: 80px 0;
}

.pn-x-da7ecfaa {
    max-width: 760px;
}

.pn-x-1787e617 {
    font-size: 11px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--pn-emerald);
}

.pn-x-2929dd2b {
    font-family: var(--pn-font-display);
    font-size: clamp(32px, 4.5vw, 56px);
    color: var(--pn-emerald);
    margin: 12px 0 20px;
    letter-spacing: 0.02em;
}

.pn-x-3ace9d5c {
    font-size: 12px;
    margin-bottom: 32px;
}

.pn-x-77cab7f7 {
    font-size: 16px;
    line-height: 1.7;
    color: var(--pn-ink);
    margin-bottom: 40px;
}

.pn-x-5864237a {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.pn-x-4cb8ceeb {
    position:relative;
}

.pn-x-d24da144 {
    position:relative;
    flex:0 0 auto;
}

.pn-x-7095cc3f {
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:6px;
}

.pn-x-b43db7c9 {
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:none;
    border:0;
    color:inherit;
    cursor:pointer;
    font-size:13px;
    padding:4px 8px;
}

.pn-x-58757c5d {
    position:absolute;
    top:100%;
    right:0;
    margin-top:8px;
    background:#fff;
    border:1px solid var(--pn-border, #e8e2d5);
    border-radius:10px;
    padding:6px;
    min-width:140px;
    z-index:99999;
    box-shadow:0 12px 32px rgba(0,0,0,0.16);
    color:var(--pn-ink, #1a1a1a);
}

.pn-x-234a6e44 {
    opacity:0.5;
    font-family:var(--pn-font-mono);
    font-size:11px;
}

.pn-x-3e9fbe0d {
    flex:1 1 180px;
}

.pn-x-4535d9d2 {
    flex:1.2 1 280px;
}

.pn-x-bae43100 {
    flex:1 1 220px;
    position:relative;
}

.pn-x-a4ae16ee {
    font-size:11px;
    color:var(--pn-text-muted, #8a7d6f);
}

.pn-x-3ba00afd {
    margin-top:14px;
    width:100%;
    background:var(--pn-ink);
    color:var(--pn-pearl);
    border:0;
    border-radius:8px;
    padding:12px;
    cursor:pointer;
    font-family:inherit;
    font-size:13px;
    font-weight:500;
}

.pn-x-bc82ade2 {
    flex:0 0 200px;
    position:relative;
}

.pn-x-934e3bff {
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:2px;
}

.pn-x-5b47c018 {
    text-align:center;
    font-size:15px;
    width:auto;
    flex:1;
    min-width:0;
}

.pn-x-58aba575 {
    cursor:pointer;
}

.pn-x-36dfb2ca {
    border-top:1px solid var(--pn-divider, #e8e2d5);
    margin:14px 0 10px;
}

.pn-x-4f183b20 {
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    cursor:pointer;
    padding:6px 0;
}

.pn-x-59e5d812 {
    cursor:pointer;
    accent-color:var(--pn-emerald);
}

.pn-x-6c4dd576 {
    margin-top:14px;
    width:100%;
    background:var(--pn-ink);
    color:var(--pn-pearl);
    border:0;
    border-radius:8px;
    padding:12px;
    cursor:pointer;
    font-family:inherit;
    font-size:13px;
    font-weight:500;
    letter-spacing:.02em;
}

.pn-x-e8ec3eb1 {
    flex:1.4 1 240px;
}

.pn-x-6c10ddb0 {
    flex:1 1 240px;
    position:relative;
}

.pn-x-93b8ea5b {
    display:none;
}

.pn-x-831afa37 {
    margin: 32px 0;
}

.pn-x-e3e93acc {
    padding:60px 20px;
    text-align:center;
    color:var(--pn-text-muted);
}

.pn-x-ee579e7f {
    width:100%;
    padding:8px 10px;
    border:1px solid var(--pn-border);
    border-radius:8px;
    font-size:13px;
}

.pn-x-ba2a243b {
    background: var(--pn-ink);
    color: var(--pn-pearl);
    padding: 60px 0 40px;
}

.pn-x-dd10f8fd {
    font-size:11px;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--pn-gold);
    opacity:0.85;
    margin-bottom:12px;
}

.pn-x-495d9119 {
    font-family:var(--pn-font-display);
    font-size:clamp(28px,3.5vw,44px);
    color:var(--pn-pearl);
    margin:0 0 32px;
    font-weight:500;
    letter-spacing:0.02em;
}

.pn-x-6164a9bf {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
    gap:18px;
}

.pn-x-a7cbfac1 {
    background:rgba(245,243,238,0.04);
    border:1px solid rgba(245,243,238,0.10);
    border-radius:14px;
    padding:22px;
}

.pn-x-24dd29e4 {
    font-size:10px;
    letter-spacing:0.14em;
    color:var(--pn-gold);
    margin-bottom:10px;
}

.pn-x-ab721259 {
    font-family:var(--pn-font-display);
    font-size:22px;
    font-weight:500;
    margin-bottom:6px;
}

.pn-x-fd69919f {
    font-size:11px;
    letter-spacing:0.12em;
    color:rgba(245,243,238,0.6);
    text-transform:uppercase;
    margin-bottom:14px;
}

.pn-x-3eb60f34 {
    font-size:13px;
    line-height:1.55;
    color:rgba(245,243,238,0.78);
    margin:0;
    min-height:60px;
}

.pn-x-e2b85243 {
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid rgba(245,243,238,0.08);
    font-size:11px;
    color:var(--pn-gold);
}

.pn-x-e00555cb {
    display:flex;
    gap:18px;
    align-items:center;
    justify-content:space-between;
    margin-top:36px;
    padding-top:24px;
    border-top:1px solid rgba(245,243,238,0.08);
    font-size:12px;
}

.pn-x-d98e1f13 {
    display:flex;
    gap:24px;
    flex-wrap:wrap;
    color:rgba(245,243,238,0.7);
}

.pn-x-4feb8140 {
    padding:32px 0;
}

.pn-x-0a54a66d {
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:6px;
}

.pn-x-74e59404 {
    grid-template-columns:1fr 1fr;
}

.pn-x-05a97bd8 {
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:8px;
    font-size:12px;
    color:var(--pn-text-muted);
}

.pn-x-437baf29 {
    margin:0;
    width:auto;
}

.pn-x-9bb54a57 {
    padding:0 0 32px;
}

.pn-x-f25d56c9 {
    color:rgba(245,243,238,0.7);
}

.pn-x-f14f64b6 {
    text-decoration:none;
    font-size:11px;
    letter-spacing:.08em;
}

.pn-x-aed06169 {
    margin:18px 0 6px;
    font-size:32px;
}

.pn-x-fd3a5a6a {
    margin:0 0 24px;
    font-size:12px;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.pn-x-68e6dec5 {
    display:grid;
    grid-template-columns:1fr 360px;
    gap:28px;
    align-items:start;
}

.pn-x-bf3565ba {
    display:flex;
    flex-direction:column;
    gap:18px;
}

.pn-x-92275258 {
    border:1px solid var(--pn-divider);
    border-radius:14px;
    padding:20px;
    background:#fff;
}

.pn-x-129b43d1 {
    padding:0 8px;
    font-size:11px;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--pn-gold-deep);
}

.pn-x-1219a136 {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.pn-x-d2dd7a0a {
    font-size:12px;
    margin:0 0 10px;
}

.pn-x-28991212 {
    max-width:280px;
}

.pn-x-9954bb97 {
    font-size:12px;
    line-height:1.6;
}

.pn-x-7e4b8546 {
    padding:14px 28px;
    font-size:14px;
    letter-spacing:.06em;
    text-transform:uppercase;
    border-radius:10px;
    border:0;
    background:var(--pn-ink);
    color:var(--pn-pearl);
    cursor:pointer;
    align-self:flex-start;
}

.pn-x-bd8666f3 {
    border:1px solid var(--pn-divider);
    border-radius:14px;
    padding:22px;
    background:#fff;
    position:sticky;
    top:20px;
}

.pn-x-716e9bc6 {
    border-top:1px dashed var(--pn-divider);
    margin:14px 0;
}

.pn-x-68ebb89d {
    font-size:9px;
    letter-spacing:.1em;
    text-transform:uppercase;
    margin-top:14px;
}

.pn-x-87fbca5d {
    display:flex;
    align-items:center;
    gap:10px;
    margin:6px 0 8px;
}

.pn-x-72ffbb45 {
    width:32px;
    height:32px;
    border-radius:50%;
    background:#0F0B0A;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--pn-font-mono);
    font-size:10px;
}

.pn-x-0e4bdc38 {
    font-size:12px;
    font-weight:500;
}

.pn-x-30331507 {
    display:flex;
    justify-content:space-between;
    gap:10px;
    font-size:12px;
}

.pn-x-bef1c7ff {
    font-size:15px;
    font-weight:500;
}

.pn-x-6d8d6153 {
    font-size:9px;
}

.pn-x-a9572380 {
    font-size:9px;
    align-self:center;
}

.pn-x-6a67894b {
    border-top:1px solid var(--pn-divider);
    margin:14px 0 4px;
    padding-top:14px;
    display:flex;
    justify-content:space-between;
    align-items:baseline;
}

.pn-x-e99dd6e6 {
    font-size:24px;
    font-weight:500;
    font-family:var(--pn-font-display);
}

.pn-x-ba72b6c4 {
    font-size:10px;
    margin-top:14px;
    letter-spacing:.04em;
}





/* ---------------- Dynamic value bindings via CSS custom properties ---------------- */
.pn-home-section { order: var(--pn-order, 0); }
/* Universal CSS variable bindings — any element with --pn-bg-image gets it as background-image */
[style*="--pn-bg-image"] {
    background-image: var(--pn-bg-image);
    background-size: cover;
    background-repeat: no-repeat;
}
[style*="--pn-bg-position"] { background-position: var(--pn-bg-position, center center); }
.pn-res-map__pin[style*="--pn-pin-top"] {
    top: var(--pn-pin-top);
    left: var(--pn-pin-left);
}
.pn-map-frame {
    height: var(--pn-map-height, 420px);
    border-radius: 12px;
    overflow: hidden;
}
.pn-map-frame--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--pn-pearl-warm);
    border: 1px solid var(--pn-divider);
}
.pn-score-bar-fill { width: var(--pn-bar-width, 0%); }
.pn-fs-pill-flex { flex: var(--pn-pill-flex, 1.2) 1 200px; }
.pn-x-hidden-toggle { display: none; }


/* ---------------- Final cleanup utilities ---------------- */
.pn-u-no-decoration       { text-decoration: none; }
.pn-img-contain {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.pn-img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.pn-payment-form {
    background: #fff;
    border: 1px solid var(--pn-divider);
    border-radius: 14px;
    padding: 24px;
}
.pn-locale-switcher__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 12px;
    color: var(--pn-ink, #1a1a1a);
}
.pn-flights-list--hidden { display: none; }

.pn-locale-switcher__item {
    text-decoration: none;
    transition: background 0.15s;
    min-width: 160px;
}


/* ---------------- Map --missing placeholder (when API key absent) ---------------- */
.pn-map.pn-map--missing {
    height: var(--pn-map-height, 420px);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--pn-pearl-warm);
    border: 1px dashed var(--pn-divider);
    border-radius: 12px;
    color: var(--pn-text-muted);
    font-size: 13px;
}


/* ---------------- Locale switcher link ---------------- */
.pn-locale-switcher .pn-locale-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 12px;
    color: var(--pn-ink, #1a1a1a);
    text-decoration: none;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    transition: background 0.15s, color 0.15s;
}
.pn-locale-switcher .pn-locale-link:hover {
    background: rgba(0, 0, 0, 0.04);
    color: var(--pn-ink, #1a1a1a);
}
.pn-locale-switcher .pn-locale-link.is-current {
    background: rgba(15, 112, 77, 0.08);
    color: var(--pn-emerald, #0C5A37);
}


/* ---------------- Hero: segment tabs above search bar (Booking-style) ---------------- */
/* Spacing tuned for "breathing room" — generous gaps between text, segments, search, meta */
.pn-home-hero__text {
    margin-bottom: var(--pn-s7) !important; /* ~40px below h1/kicker */
}
.pn-home-hero__h1 {
    margin-top: var(--pn-s4) !important;    /* ~16px between kicker (divider-gold) and h1 */
}
.pn-home-hero__segments {
    display: flex;
    justify-content: center;
    gap: var(--pn-s6);
    margin-top: 0;
    margin-bottom: var(--pn-s5);            /* ~24px between segments and search bar */
    padding: var(--pn-s2) 0;                /* internal breathing room */
    flex-wrap: wrap;
}
/* Mobile: horizontal scroll instead of wrap (avoid 3-line stack) */
@media (max-width: 768px) {
    .pn-home-hero__segments {
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scroll-padding-left: 16px;
        gap: 8px !important;
        margin: 12px -16px !important;
        padding: 4px 16px !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .pn-home-hero__segments::-webkit-scrollbar { display: none; }
    .pn-home-hero__seg-btn {
        flex: 0 0 auto !important;
        scroll-snap-align: start;
        white-space: nowrap;
    }
}
.pn-home-hero__seg-btn {
    padding: var(--pn-s2) var(--pn-s2);     /* clickable area a bit larger */
}
.pn-home-hero__search {
    min-height: auto;
    margin-top: 0;
}
.pn-home-hero__meta {
    margin-top: var(--pn-s6);               /* ~32px between search and meta links */
}

/* Big hotel image — make sure it has dimensions to display */
.pn-hotels-grid__big-img {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
