@charset "UTF-8";:root{--green:#173f35;--cream:#f7f2e8;--card:#fffdf7;--line:#d7ddd5;--muted:#66756d;--accent:#b76343}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--green);font:16px/1.6 Arial,sans-serif}header{padding:22px max(24px,5vw);border-bottom:1px solid var(--line);background:var(--card)}header a{color:inherit;text-decoration:none}header strong{display:block;font:700 1.5rem Georgia,serif}header span{font-size:.68rem;letter-spacing:.16em}main{width:min(1050px,calc(100% - 40px));margin:45px auto 80px}.guest-hero{padding:35px;border-radius:20px;background:var(--green);color:var(--card)}.guest-hero small{letter-spacing:.14em}.guest-hero h1{font:400 clamp(2.5rem,6vw,4.5rem)/1 Georgia,serif;margin:10px 0}.guest-hero p{margin:0;color:#d8e0cf}.guest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:18px}.guest-card{padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.guest-card h2{font:400 1.8rem Georgia,serif;margin:0 0 14px}.guest-card dl{display:grid;grid-template-columns:1fr auto;gap:10px;margin:0}.guest-card dt{color:var(--muted)}.guest-card dd{margin:0;font-weight:700}.status{display:inline-block;padding:5px 9px;border-radius:99px;background:#e6eadc;font-size:.78rem}.contract{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-top:1px solid var(--line)}.contract a{background:var(--green);color:white;padding:9px 12px;border-radius:6px;text-decoration:none;font-weight:700;font-size:.82rem}.practical{grid-column:1/-1}.practical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.practical-grid article{padding:15px;background:#f4f3eb;border-radius:10px}.practical-grid strong{display:block}.guest-error{padding:30px;background:var(--card);border:1px solid var(--line);border-radius:16px}footer{text-align:center;padding:30px;color:var(--muted);font-size:.8rem}@media(max-width:700px){.guest-grid,.practical-grid{grid-template-columns:1fr}.guest-hero{padding:26px}.practical{grid-column:auto}}.guide-text{white-space:pre-wrap;overflow-wrap:anywhere}.practical article h3{font-size:1.1rem}
#guide-language{font:inherit;padding:8px;margin:8px;border:1px solid #d7ddd5;border-radius:5px}
.payment-links{border-color:#a4b9a6}.payment-links p{margin:0 0 14px}.payment-links a{display:inline-block;margin-top:6px;padding:10px 15px;border-radius:7px;background:var(--green);color:#fff;text-decoration:none;font-weight:700}.payment-links a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

.keyholder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.keyholder-grid article{display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:10px}.keyholder-grid span{color:#718078}.keyholder-grid a{color:var(--ink)}@media(max-width:600px){.keyholder-grid{grid-template-columns:1fr}}

.service-request-card form{display:grid;gap:14px;margin-top:18px}.service-request-card select,.service-request-card textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:8px;font:inherit}.service-request-card button{justify-self:start;padding:12px 18px;border:0;border-radius:7px;background:var(--ink);color:#fff;font-weight:700}.service-request-history p{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 0;border-bottom:1px solid var(--line)}.service-request-history small{grid-column:1/-1;color:#718078}

.route-action{display:inline-flex;align-items:center;margin-top:16px;padding:11px 15px;border-radius:7px;background:var(--green);color:#fff;text-decoration:none;font-weight:700}.route-action:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

.local-guide{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.local-guide>h3{font:400 1.6rem Georgia,serif}.local-guide-category{margin-top:20px}.local-guide-category h4{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.local-guide-place{padding:18px!important;margin-top:10px;border:1px solid var(--line);border-radius:10px;background:#f9f8f2!important}.local-guide-place h5{margin:0;font:400 1.35rem Georgia,serif}.local-guide-place>strong{display:block;margin:4px 0 10px;color:var(--muted)}.local-guide-place div{display:flex;flex-wrap:wrap;gap:10px}.local-guide-place .route-action{margin-top:0}.source-action{display:inline-flex;align-items:center;padding:10px 14px;color:var(--green);font-weight:700}.source-action:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
