/* Components for the standalone public pages */
.nav-links-desk{display:none;gap:1.5rem;align-items:center;margin-left:auto;margin-right:1.5rem}
.nav-links-desk a{color:rgba(255,255,255,.7);text-decoration:none;font-size:14px;font-weight:500}
.nav-links-desk a:hover{color:#fff}
.nav-links-desk .nav-cta{background:var(--coral);color:#fff;padding:8px 16px;border-radius:8px}
@media(min-width:1000px){.nav-links-desk{display:flex}}
.pg-hero{background:var(--navy);color:#fff;padding:4.5rem 0 3.5rem;position:relative;overflow:hidden;border-bottom:4px solid var(--coral)}
.pg-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(24,95,165,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(24,95,165,.09) 1px,transparent 1px);background-size:56px 56px}
.pg-hero .section-inner{position:relative}
.pg-hero .crumb{font-family:var(--font-mono);font-size:11px;letter-spacing:2px;color:#F4A27A;text-transform:uppercase;margin-bottom:1rem}
.pg-hero h1{font-family:var(--font-display);font-size:clamp(48px,8vw,92px);line-height:.95;letter-spacing:2px;margin-bottom:1rem}
.pg-hero h1 span{color:var(--blue-mid)}
.pg-hero p.lead{color:rgba(255,255,255,.72);font-size:18px;line-height:1.7;max-width:720px;font-weight:300}
.pg-stats{display:flex;flex-wrap:wrap;gap:2.5rem;margin-top:2.25rem}
.pg-stat b{display:block;font-family:var(--font-display);font-size:44px;letter-spacing:1px;line-height:1}
.pg-stat span{font-family:var(--font-mono);font-size:11px;letter-spacing:1.5px;color:rgba(255,255,255,.5);text-transform:uppercase}
.pg-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2rem}
.pg-sec{padding:4.5rem 0}
.pg-sec.alt{background:var(--sky)}
.pg-sec.dark{background:var(--navy);color:#fff}
.pg-sec h2{font-family:var(--font-display);font-size:clamp(34px,4.5vw,54px);letter-spacing:1px;line-height:1;color:var(--navy);margin-bottom:.75rem}
.pg-sec.dark h2{color:#fff}
.pg-sec .intro{color:var(--gray);font-size:16px;line-height:1.75;max-width:760px;margin-bottom:2rem}
.pg-sec.dark .intro{color:rgba(255,255,255,.65)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{padding:7px 15px;border-radius:20px;border:1px solid var(--gray-light);background:#fff;color:var(--gray);font:600 12.5px var(--font-body);cursor:pointer;transition:var(--transition)}
.chip:hover,.chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.tool-bar{position:sticky;top:68px;z-index:40;background:#fff;border-bottom:1px solid var(--gray-light);padding:1rem 0;box-shadow:0 4px 16px rgba(11,24,41,.05)}
.tool-row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin-bottom:.75rem}
.tool-row input,.tool-row select{padding:10px 14px;border:1.5px solid var(--gray-light);border-radius:8px;font:14px var(--font-body);background:#fff;min-width:0}
.tool-row input[type=search]{flex:1 1 240px}
.result-count{font-family:var(--font-mono);font-size:12px;color:var(--gray)}
.grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1.25rem}
.pcard{background:#fff;border:1px solid var(--gray-light);border-radius:12px;padding:1.4rem;display:flex;flex-direction:column;gap:.7rem;transition:var(--transition);position:relative}
.pcard:hover{border-color:var(--blue);box-shadow:var(--shadow-card);transform:translateY(-2px)}
.pcard .cat{font-family:var(--font-mono);font-size:10px;letter-spacing:1.2px;color:var(--blue);text-transform:uppercase}
.pcard h3{font-size:17px;color:var(--navy);line-height:1.3}
.pcard .tag{font-size:13px;color:var(--gray);line-height:1.5}
.pcard .price{font-family:var(--font-display);font-size:34px;color:var(--navy);letter-spacing:1px;line-height:1}
.pcard .meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:12px;color:var(--gray);font-family:var(--font-mono)}
.mixbar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--gray-light)}
.mixbar i{display:block;height:100%}
.pcard .row{display:flex;gap:.5rem;margin-top:auto;align-items:center;flex-wrap:wrap}
.pcard label.cmp{font-size:12px;color:var(--gray);display:flex;gap:6px;align-items:center;cursor:pointer;margin-left:auto}
.btn-ghost{border:1.5px solid var(--gray-light);background:#fff;color:var(--navy);padding:8px 16px;border-radius:8px;font:600 13px var(--font-body);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
.btn-solid{border:0;background:var(--blue);color:#fff;padding:9px 18px;border-radius:8px;font:600 13px var(--font-body);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.btn-solid:hover{background:var(--blue-mid)}
.tray{position:fixed;left:0;right:0;bottom:0;background:var(--navy);color:#fff;padding:.9rem 1.25rem;display:none;gap:1rem;align-items:center;z-index:120;flex-wrap:wrap;justify-content:center}
.tray.show{display:flex}
.modal-bg{position:fixed;inset:0;background:rgba(11,24,41,.7);z-index:300;display:none;align-items:flex-start;justify-content:center;overflow:auto;padding:2rem 1rem}
.modal-bg.show{display:flex}
.modal-card{background:#fff;border-radius:14px;max-width:760px;width:100%;padding:2rem;position:relative}
.modal-card h3{font-family:var(--font-display);font-size:34px;letter-spacing:1px;color:var(--navy);line-height:1.05;margin-bottom:.25rem}
.modal-x{position:absolute;right:14px;top:10px;background:none;border:0;font-size:28px;cursor:pointer;color:var(--gray)}
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0}
.kv div{background:var(--off-white);border:1px solid var(--gray-light);border-radius:10px;padding:.75rem 1rem}
.kv b{display:block;font-size:20px;color:var(--navy)}
.kv span{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;color:var(--gray);text-transform:uppercase}
.tbl-wrap{overflow-x:auto;border:1px solid var(--gray-light);border-radius:12px;background:#fff}
table.t{border-collapse:collapse;width:100%;font-size:14px}
table.t th{background:var(--navy);color:#fff;text-align:left;padding:11px 14px;font:600 12px var(--font-mono);letter-spacing:.8px;text-transform:uppercase;white-space:nowrap}
table.t td{padding:11px 14px;border-top:1px solid var(--gray-light);vertical-align:top}
table.t tr:nth-child(even) td{background:var(--off-white)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.info-card{background:#fff;border:1px solid var(--gray-light);border-radius:12px;padding:1.5rem}
.info-card h3{font-size:17px;color:var(--navy);margin-bottom:.5rem}
.info-card p,.info-card li{font-size:14px;color:var(--gray);line-height:1.65}
.info-card ul{padding-left:1.1rem}
.pg-sec.dark .info-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}
.pg-sec.dark .info-card h3{color:#fff}
.pg-sec.dark .info-card p,.pg-sec.dark .info-card li{color:rgba(255,255,255,.65)}
.faq details{background:#fff;border:1px solid var(--gray-light);border-radius:10px;margin-bottom:.6rem;padding:0 1.2rem}
.faq summary{padding:1rem 0;font-weight:600;color:var(--navy);cursor:pointer;font-size:15px}
.faq details[open]{border-color:var(--blue)}
.faq p{padding:0 0 1.1rem;color:var(--gray);font-size:14.5px;line-height:1.7}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.steps div{counter-increment:s;background:#fff;border:1px solid var(--gray-light);border-radius:12px;padding:1.25rem 1.25rem 1.25rem 3.6rem;position:relative;font-size:14px;color:var(--gray);line-height:1.6}
.steps div::before{content:counter(s);position:absolute;left:1rem;top:1rem;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font:600 14px var(--font-mono)}
.steps b{display:block;color:var(--navy);font-size:15px;margin-bottom:.2rem}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}
.field label{font:600 12px var(--font-mono);letter-spacing:.8px;color:var(--gray);text-transform:uppercase}
.field input,.field select,.field textarea{padding:12px 14px;border:1.5px solid var(--gray-light);border-radius:8px;font:15px var(--font-body);background:#fff;width:100%}
.field input:focus,.field select:focus,.field textarea:focus,.tool-row input:focus,.tool-row select:focus{outline:none;border-color:var(--blue)}
.note{background:var(--sky);border-left:4px solid var(--blue);padding:1rem 1.25rem;border-radius:0 10px 10px 0;font-size:14px;color:var(--navy);line-height:1.65}
.status{display:inline-block;padding:2px 10px;border-radius:12px;font:600 11px var(--font-mono);letter-spacing:.5px}
.status.available{background:#DCFCE7;color:#166534}.status.in-use{background:#DBEAFE;color:#1E40AF}.status.booked{background:#FEF3C7;color:#92400E}.status.maintenance{background:#FEE2E2;color:#991B1B}
.amount{font-family:var(--font-display);font-size:30px;color:var(--navy);letter-spacing:1px}
@media(max-width:900px){.two-col,.three-col{grid-template-columns:1fr}.pg-sec{padding:3rem 0}.tool-bar{top:68px}.pg-stats{gap:1.5rem}}
@media(max-width:600px){.section-inner{padding:0 16px}.grid-auto{grid-template-columns:1fr}.modal-card{padding:1.25rem}}
