/* Welcasa — guest page (2.3). Scoped to .qpp-guest; no external libraries. */
.qpp-guest{--qpp-card2:#F3ECDC;--qpp-sos:#FEECEC;--qpp-sos-line:#F5D0D0;--qpp-sos-ink:#B42318;--qpp-ok:#1F6F49;--qpp-r:18px;--qpp-shadow:0 1px 2px rgba(23,37,31,.05),0 6px 18px rgba(23,37,31,.06);
	margin:0;background:var(--qpp-bg);color:var(--qpp-ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}
.qpp-guest.qpp-theme-minimal{--qpp-card2:#ECECE9}
.qpp-guest.qpp-theme-coastal{--qpp-card2:#EEE5D2}
body.qpp-indic{line-height:1.65}
.qpp-guest *,.qpp-guest *::before,.qpp-guest *::after{box-sizing:border-box}
.qpp-guest img,.qpp-guest svg{max-width:100%}
.qpp-guest h1,.qpp-guest h2,.qpp-guest h3,.qpp-guest p{margin:0}
:where(.qpp-guest) a{color:inherit}
:where(.qpp-guest) button{font:inherit;color:inherit;cursor:pointer}
.qpp-guest [tabindex="-1"]:focus{outline:none}
.qpp-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}
.qpp-guest :focus-visible{outline:3px solid var(--qpp-accent);outline-offset:2px}
.qpp-nojs .qpp-js-only{display:none!important}
.qpp-press{transition:transform .12s ease,background-color .2s ease,box-shadow .2s ease}
.qpp-press:active{transform:scale(.97)}
.qpp-serif,.qpp-title,.qpp-display,.qpp-h2,.qpp-acc-title,.qpp-welcome h2,.qpp-time strong{font-family:var(--qpp-head);font-weight:var(--qpp-headw)}
.qpp-muted,.qpp-sub{color:var(--qpp-muted)}
.qpp-text{color:var(--qpp-ink);font-size:15.5px;margin:0 0 10px}
.qpp-text:last-child{margin-bottom:0}
.qpp-note{font-size:13.5px;color:var(--qpp-muted);margin:0 0 12px}
.qpp-break{word-break:break-word;overflow-wrap:anywhere}

/* ---------- Screen 1: hero ---------- */
.qpp-hero{position:relative;min-height:clamp(470px,68svh,580px);color:#fff;overflow:hidden;background:var(--qpp-primary);isolation:isolate}
.qpp-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;display:block}
.qpp-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,22,17,.62) 0%,rgba(6,22,17,.18) 26%,rgba(6,22,17,.10) 44%,rgba(6,22,17,.55) 72%,rgba(6,22,17,.86) 100%)}
.qpp-topbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(14px + env(safe-area-inset-top)) 18px 0 22px}
.qpp-brand{height:30px;width:auto;display:block}
.qpp-hostlogo{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:14px;padding:6px;max-width:150px;height:52px;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.qpp-hostlogo img{max-height:40px;width:auto;display:block;border-radius:8px}
.qpp-glass{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.38);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.qpp-glass:hover{background:rgba(255,255,255,.24)}
.qpp-hero-text{position:absolute;left:22px;right:22px;bottom:58px}
.qpp-kicker{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;opacity:.95;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.qpp-indic .qpp-kicker{letter-spacing:.02em;text-transform:none;font-size:13.5px}
.qpp-kicker-dark{color:var(--qpp-accent-text);text-shadow:none;opacity:1}
.qpp-title{font-size:clamp(40px,12vw,56px);line-height:1.04;letter-spacing:-.01em;max-width:11ch;text-wrap:balance;overflow-wrap:anywhere;text-shadow:0 2px 18px rgba(0,0,0,.28)}
.qpp-indic .qpp-title{font-size:clamp(32px,9vw,44px);line-height:1.2;max-width:none}
.qpp-rule{display:block;width:46px;height:3px;border-radius:2px;background:var(--qpp-accent);margin:16px 0 14px}
.qpp-desc{font-size:16px;line-height:1.5;max-width:32ch;opacity:.95;text-shadow:0 1px 10px rgba(0,0,0,.35)}
.qpp-sharebtn{margin-top:16px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 14px;border-radius:999px;font-size:14.5px;font-weight:600;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.38);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.qpp-sharebtn:hover{background:rgba(255,255,255,.24)}

/* ---------- Screen 1: sheet ---------- */
.qpp-sheet{position:relative;margin-top:-30px;background:var(--qpp-bg);border-radius:28px 28px 0 0;padding:22px 18px 4px}
.qpp-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.qpp-quick.qpp-n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.qpp-quick.qpp-n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.qpp-quick.qpp-n1{grid-template-columns:1fr}
.qpp-qa{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:94px;padding:12px 4px;border-radius:var(--qpp-r);background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:var(--qpp-shadow);text-decoration:none;color:var(--qpp-primary);text-align:center}
.qpp-qa span{color:var(--qpp-ink);font-size:13px;font-weight:600;line-height:1.25;overflow-wrap:break-word;word-break:normal}
.qpp-qa:hover{border-color:var(--qpp-accent)}

.qpp-welcome{margin-top:18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 16px 18px 18px;border-radius:20px;color:#fff;background:var(--qpp-primary);background:linear-gradient(135deg,var(--qpp-primary) 0%,color-mix(in srgb,var(--qpp-primary) 78%,#000) 100%);box-shadow:0 10px 28px color-mix(in srgb,var(--qpp-primary) 28%,transparent)}
.qpp-host-photo{width:68px;height:68px;border-radius:50%;object-fit:cover;border:2px solid color-mix(in srgb,var(--qpp-accent) 70%,#fff);display:block}
.qpp-host-init{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.14);font-weight:700;font-size:22px}
.qpp-welcome h2{font-size:24px;line-height:1.15;margin-bottom:4px}
.qpp-welcome p{font-size:14.5px;line-height:1.45;opacity:.92}
.qpp-host-name{margin-top:6px!important;font-weight:600;color:#F1DDA8;color:color-mix(in srgb,var(--qpp-accent) 55%,#fff);opacity:1!important}
.qpp-welcome-go{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff}
.qpp-welcome-go:hover{background:rgba(255,255,255,.26)}

.qpp-times{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;align-items:center;border-radius:20px;background:var(--qpp-card2);border:1px solid color-mix(in srgb,var(--qpp-line) 70%,transparent);padding:16px 8px;text-decoration:none;color:var(--qpp-ink)}
.qpp-time{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;padding:0 8px}
.qpp-time+.qpp-time{border-left:1px solid color-mix(in srgb,var(--qpp-accent) 35%,var(--qpp-line))}
.qpp-time svg{flex-shrink:0}
.qpp-time small{display:block;font-size:13px;color:#56625B;font-weight:500}
.qpp-time strong{display:block;font-size:22px;line-height:1.2;white-space:nowrap}

.qpp-explore{margin-top:26px}
.qpp-h2{font-size:26px;line-height:1.2;color:var(--qpp-ink);margin:0 0 4px 2px}
.qpp-h2-sub{font-size:15px;color:var(--qpp-muted);margin:0 0 14px 2px!important}
.qpp-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.qpp-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;min-height:112px;padding:16px 6px 12px;border-radius:var(--qpp-r);background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:var(--qpp-shadow);text-decoration:none;text-align:center}
.qpp-tile:hover{border-color:var(--qpp-accent)}
.qpp-tile-go{position:absolute;top:9px;right:9px;display:flex;color:var(--qpp-muted);opacity:.75}
.qpp-tile.is-sos .qpp-tile-go{color:var(--qpp-sos-ink)}
.qpp-tile.is-current{border-color:var(--qpp-primary);box-shadow:0 0 0 1px var(--qpp-primary),var(--qpp-shadow)}
.qpp-tile.is-current .qpp-tile-ico{background:var(--qpp-primary);color:var(--qpp-on-primary)}
.qpp-guidecta{margin-top:14px;display:flex;align-items:center;gap:14px;min-height:76px;padding:14px 16px;border-radius:var(--qpp-r);background:var(--qpp-surface);border:1.5px solid var(--qpp-primary);text-decoration:none;color:var(--qpp-ink);box-shadow:var(--qpp-shadow)}
.qpp-guidecta:hover{background:var(--qpp-soft)}
.qpp-guidecta-ico{flex-shrink:0;width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--qpp-primary);color:var(--qpp-on-primary)}
.qpp-guidecta-text{flex:1;min-width:0;display:flex;flex-direction:column}
.qpp-guidecta-text strong{font-size:16.5px;font-weight:600;line-height:1.3;color:var(--qpp-primary)}
.qpp-guidecta-text small{font-size:13.5px;color:var(--qpp-muted);line-height:1.4}
.qpp-guidecta-go{flex-shrink:0;display:flex;color:var(--qpp-primary)}
.qpp-tile-ico{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--qpp-soft);color:var(--qpp-primary)}
.qpp-tile-label{font-size:13.5px;font-weight:600;line-height:1.25;color:var(--qpp-ink);overflow-wrap:break-word}
.qpp-tile.is-sos{background:var(--qpp-sos);border-color:var(--qpp-sos-line)}
.qpp-tile.is-sos .qpp-tile-ico{background:#fff;color:var(--qpp-sos-ink)}
.qpp-tile.is-sos .qpp-tile-label{color:var(--qpp-sos-ink)}

.qpp-scene{display:block;width:100%;height:110px}
.qpp-scene-home{margin-top:18px}

/* ---------- Screen 2: guide ---------- */
.qpp-guide{outline:none}
.qpp-guide-in{position:relative;max-width:600px;margin:0 auto;padding:0 18px}
.qpp-nojs .qpp-guide-in{padding-top:24px}
.qpp-guidebar{position:sticky;top:0;z-index:5;display:flex;justify-content:flex-start;margin:0 -18px;padding:calc(10px + env(safe-area-inset-top)) 14px 8px;pointer-events:none;transition:background-color .2s ease,box-shadow .2s ease}
.qpp-guidebar>*{pointer-events:auto}
.qpp-guidebar.is-stuck{background:var(--qpp-bg);background:color-mix(in srgb,var(--qpp-bg) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 1px 0 var(--qpp-line)}
.qpp-close{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:var(--qpp-shadow);color:var(--qpp-ink)}
.qpp-backbtn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px 0 10px;border-radius:999px;background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:var(--qpp-shadow);font-size:14.5px;font-weight:600;color:var(--qpp-ink)}
.qpp-backbtn:hover{border-color:var(--qpp-primary)}
.qpp-ghead{padding-top:4px}
.qpp-ghead .qpp-display{margin-top:6px!important}
.qpp-nojs .qpp-ghead{padding-top:0}
.qpp-wifi-title{font-family:var(--qpp-head);font-weight:var(--qpp-headw);font-size:26px;line-height:1.2;color:var(--qpp-ink);margin:14px 0 0}
.qpp-picked{margin-top:20px}
.qpp-picked:empty{display:none}
.qpp-picked .qpp-acc{border-color:var(--qpp-accent);box-shadow:0 0 0 1px var(--qpp-accent),var(--qpp-shadow)}
.qpp-picked .qpp-sos{margin-top:0;border-color:var(--qpp-sos-ink);box-shadow:0 0 0 1px var(--qpp-sos-ink)}
.qpp-picked .qpp-card{margin:0}
.qpp-other-head{margin-top:30px;padding-top:22px;border-top:1px solid var(--qpp-line)}
.qpp-other-head[hidden]{display:none}
.qpp-other-head .qpp-h2{font-size:23px}
.qpp-items{margin-top:20px}
.qpp-other-head+.qpp-items{margin-top:0}
.qpp-items>.qpp-accs:first-child{margin-top:0}
.qpp-catnav{display:none}
.qpp-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:1fr 1fr;padding:4px 12px env(safe-area-inset-bottom);background:var(--qpp-surface);background:color-mix(in srgb,var(--qpp-surface) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--qpp-line)}
.qpp-tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:58px;text-decoration:none;color:var(--qpp-muted);font-size:12.5px;font-weight:600;border-radius:12px}
.qpp-tab[aria-current]{color:var(--qpp-primary)}
.qpp-tab[aria-current]::before{content:"";position:absolute;top:-5px;left:50%;width:36px;height:3px;margin-left:-18px;border-radius:0 0 3px 3px;background:var(--qpp-accent)}
.qpp-js .qpp-page{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
.qpp-wifi-badge{width:76px;height:76px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:var(--qpp-soft);color:var(--qpp-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--qpp-primary) 10%,transparent)}
.qpp-display{font-size:32px;line-height:1.15;color:var(--qpp-ink);margin-top:18px!important}
.qpp-sub{font-size:16px;margin-top:6px!important}
.qpp-guide-head{padding-top:6px}
.qpp-guide-head .qpp-display{margin-top:4px!important}

.qpp-wcard{margin-top:20px;padding:4px 18px 18px;border-radius:20px;background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:var(--qpp-shadow)}
.qpp-wrow{display:flex;align-items:center;gap:8px;padding:14px 0;border-bottom:1px solid var(--qpp-line)}
.qpp-field{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.qpp-label{font-size:13.5px;color:var(--qpp-muted);font-weight:500;display:inline-flex;align-items:center;gap:6px}
.qpp-ssid{font-size:19px;font-weight:600;color:var(--qpp-ink);overflow-wrap:anywhere}
.qpp-pw{font-size:19px;font-weight:600;color:var(--qpp-ink);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.qpp-dots{letter-spacing:.18em}
.qpp-nojs .qpp-dots{display:none}
.qpp-ibtn{flex-shrink:0;width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--qpp-bg);border:1px solid var(--qpp-line);color:var(--qpp-ink)}
.qpp-ibtn:hover{border-color:var(--qpp-primary)}
.qpp-ibtn.is-done{color:var(--qpp-ok);border-color:var(--qpp-ok)}
.qpp-copy{margin-top:16px;width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;border:0;background:var(--qpp-primary);color:var(--qpp-on-primary);font-size:16px;font-weight:600}
.qpp-copy:hover{filter:brightness(1.12)}
.qpp-copy.is-done{background:var(--qpp-ok)}
.qpp-nopw{padding-top:12px}
.qpp-wnote{margin-top:12px;font-size:14px}

.qpp-qrcard{margin-top:14px;display:flex;align-items:center;gap:16px;padding:16px;border-radius:20px;background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:var(--qpp-shadow)}
.qpp-qrbox{background:#fff;border-radius:12px;padding:8px;border:1px solid var(--qpp-line);line-height:0}
.qpp-qrbox svg{width:100%;height:auto;display:block}
.qpp-qrbox-sm{flex-shrink:0;width:112px}
.qpp-qrtext{min-width:0}
.qpp-qrtext h3{font-size:18px;font-weight:600;color:var(--qpp-ink)}
.qpp-qrtext p{font-size:14px;color:var(--qpp-muted);line-height:1.45;margin-top:2px}
.qpp-linkbtn{margin-top:4px;margin-left:-8px;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;border:0;background:none;color:var(--qpp-primary);font-weight:600;font-size:14.5px;border-radius:10px}
.qpp-linkbtn:hover{background:var(--qpp-soft)}
.qpp-wifiqr{margin-top:12px;padding:20px;border-radius:20px;background:var(--qpp-surface);border:1px solid var(--qpp-line);text-align:center;animation:qpp-in .25s ease}
.qpp-wifiqr .qpp-qrbox{width:min(250px,100%);margin:0 auto}
.qpp-wifiqr p{font-size:14px;color:var(--qpp-muted);margin-top:12px}

/* Accordions */
.qpp-accs{margin-top:22px;display:flex;flex-direction:column;gap:10px}
.qpp-acc{border-radius:16px;background:var(--qpp-surface);border:1px solid var(--qpp-line);box-shadow:0 1px 2px rgba(23,37,31,.04);scroll-margin-top:80px}
.qpp-acc-h{margin:0;font-size:inherit}
.qpp-acc-btn{width:100%;min-height:60px;display:flex;align-items:center;gap:14px;padding:8px 14px 8px 16px;border:0;background:none;text-align:left;border-radius:16px}
.qpp-acc-ico{flex-shrink:0;color:var(--qpp-primary);display:flex}
.qpp-acc-title{flex:1;min-width:0;font-size:18px;line-height:1.3;color:var(--qpp-ink)}
.qpp-indic .qpp-acc-title{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:16.5px}
.qpp-chev{flex-shrink:0;display:flex;color:var(--qpp-ink);transition:transform .25s ease}
.qpp-acc.is-open .qpp-chev{transform:rotate(180deg)}
.qpp-acc-panel>.qpp-acc-body{padding:2px 18px 18px}
.qpp-js .qpp-acc-panel{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .3s ease,visibility 0s linear .3s}
.qpp-js .qpp-acc.is-open .qpp-acc-panel{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .3s ease,visibility 0s}
.qpp-js .qpp-acc-panel>.qpp-acc-body{overflow:hidden;min-height:0}
.qpp-js .qpp-acc:not(.is-open) .qpp-acc-panel>.qpp-acc-body{padding-top:0;padding-bottom:0}
.qpp-js .qpp-acc-panel>.qpp-acc-body{transition:padding .3s ease}
.qpp-acc.is-flash{box-shadow:0 0 0 3px color-mix(in srgb,var(--qpp-accent) 55%,transparent)}

.qpp-kv2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.qpp-kv2 div{background:var(--qpp-card2);border-radius:14px;padding:12px 14px}
.qpp-kv2 span{display:block;font-size:13px;color:#56625B}
.qpp-kv2 strong{display:block;font-size:18px}
.qpp-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid var(--qpp-line);font-size:15px}
.qpp-row:first-child{border-top:0;padding-top:4px}
.qpp-row strong{font-weight:600}
.qpp-row span{color:var(--qpp-muted);text-align:right;overflow-wrap:anywhere}
.qpp-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.qpp-chips li{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:var(--qpp-soft);font-size:14px;font-weight:500}
.qpp-item{padding:11px 0;border-top:1px solid var(--qpp-line)}
.qpp-item:first-child{border-top:0;padding-top:4px}
.qpp-item strong{display:block;font-weight:600;font-size:15.5px}
.qpp-item span{display:block;color:var(--qpp-muted);font-size:15px}
.qpp-near{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--qpp-line)}
.qpp-near:first-child{border-top:0;padding-top:4px}
.qpp-near-main{min-width:0;display:flex;flex-direction:column;gap:2px}
.qpp-near-cat{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--qpp-accent-text)}
.qpp-near-name{font-weight:600;font-size:15.5px;overflow-wrap:anywhere}
a.qpp-near-name{color:var(--qpp-primary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--qpp-primary) 35%,transparent);min-height:44px;display:inline-flex;align-items:center}
.qpp-near-dist{flex-shrink:0;font-size:14px;color:var(--qpp-muted);background:var(--qpp-bg);border-radius:999px;padding:4px 10px}
.qpp-list{margin:0;padding:0;list-style:none}
.qpp-list li{position:relative;padding:8px 0 8px 20px;font-size:15.5px;border-top:1px solid var(--qpp-line)}
.qpp-list li:first-child{border-top:0;padding-top:2px}
.qpp-list li::before{content:"";position:absolute;left:3px;top:17px;width:7px;height:7px;border-radius:50%;background:var(--qpp-accent)}
.qpp-list li:first-child::before{top:11px}
.qpp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:14px;background:var(--qpp-primary);color:var(--qpp-on-primary)!important;text-decoration:none;font-weight:600;font-size:15px;border:0}
.qpp-btn-line{background:transparent;color:var(--qpp-primary)!important;border:1px solid var(--qpp-line);width:100%}
.qpp-contact{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 14px;margin-top:8px;border-radius:14px;background:var(--qpp-bg);text-decoration:none;font-weight:600;font-size:15px}
.qpp-contact:first-child{margin-top:0}

/* Emergency */
.qpp-sos{margin-top:14px;background:var(--qpp-sos);border-color:var(--qpp-sos-line)}
.qpp-sos .qpp-acc-ico,.qpp-sos .qpp-acc-title,.qpp-sos .qpp-chev{color:var(--qpp-sos-ink)}
.qpp-sos .qpp-note{color:#7A2A20}
.qpp-em{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
.qpp-em a{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:68px;padding:10px 14px;border-radius:14px;background:#fff;border:1px solid var(--qpp-sos-line);text-decoration:none}
.qpp-em span{font-size:13px;color:#6B3A33;line-height:1.3}
.qpp-em strong{display:flex;align-items:center;gap:6px;font-size:21px;color:var(--qpp-sos-ink);font-weight:700}
.qpp-sos .qpp-text{color:#4A2520;font-size:14.5px}

/* Cards: featured + custom */
.qpp-card{border-radius:18px;background:var(--qpp-surface);border:1px solid var(--qpp-line);overflow:hidden;box-shadow:var(--qpp-shadow);scroll-margin-top:80px}
.qpp-pad{padding:18px}
.qpp-promo-img{display:block;width:100%;height:170px;object-fit:cover}
.qpp-promo h3{font-size:22px;line-height:1.25;margin:4px 0 6px}
.qpp-promo .qpp-kicker{margin-bottom:2px;font-size:12px}
.qpp-promo-notice{background:var(--qpp-card2)}
.qpp-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--qpp-primary);text-decoration:none}
.qpp-rich{font-size:15.5px}
.qpp-rich p{margin:0 0 10px}
.qpp-rich a{color:var(--qpp-primary)}

/* Gallery */
.qpp-gallery{margin-top:24px}
.qpp-gallery-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}
.qpp-gallery-head span{color:var(--qpp-muted);font-size:14px}
.qpp-strip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch}
.qpp-strip figure{margin:0;flex:0 0 74%;max-width:300px;scroll-snap-align:start}
.qpp-strip img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;background:var(--qpp-soft)}
.qpp-strip figcaption{font-size:13.5px;color:var(--qpp-muted);margin-top:6px}

/* Footer */
.qpp-foot{margin:32px -18px 0;text-align:center;padding-top:6px}
.qpp-foot-logo{height:30px;width:auto;display:inline-block}
.qpp-foot-msg{font-size:15.5px;color:var(--qpp-muted);margin-top:8px!important}
.qpp-foot-by{font-size:13px;color:var(--qpp-muted);margin-top:2px!important}
.qpp-scene-foot{margin-top:14px;height:120px}

/* ---------- Menu ---------- */
.qpp-menu{position:fixed;inset:0;z-index:60}
.qpp-menu[hidden]{display:none}
.qpp-menu-scrim{position:absolute;inset:0;background:rgba(10,24,19,.45);animation:qpp-fade .2s ease}
.qpp-menu-panel{position:absolute;top:0;right:0;bottom:0;width:min(360px,88vw);background:var(--qpp-surface);border-radius:24px 0 0 24px;padding:calc(14px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom));overflow-y:auto;display:flex;flex-direction:column;gap:16px;animation:qpp-slide .26s ease;box-shadow:-10px 0 40px rgba(0,0,0,.18)}
.qpp-menu-top{display:flex;align-items:center;justify-content:space-between;padding-left:6px}
.qpp-menu-top img{height:24px;width:auto}
.qpp-menu-list{display:flex;flex-direction:column;gap:2px}
.qpp-menu-list a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 12px;border-radius:12px;text-decoration:none;color:var(--qpp-ink);font-weight:500;font-size:15.5px}
.qpp-menu-list a svg{color:var(--qpp-primary);flex-shrink:0}
.qpp-menu-list a:hover{background:var(--qpp-soft)}
.qpp-menu-list a.is-sos,.qpp-menu-list a.is-sos svg{color:var(--qpp-sos-ink)}
.qpp-menu-langs{border-top:1px solid var(--qpp-line);padding-top:14px}
.qpp-menu-langs>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.qpp-langbtn{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--qpp-line);text-decoration:none;font-weight:500}
.qpp-langbtn.is-on{background:var(--qpp-primary);border-color:var(--qpp-primary);color:var(--qpp-on-primary)}

.qpp-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translate(-50%,20px);z-index:70;background:var(--qpp-ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:14.5px;font-weight:500;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;max-width:calc(100vw - 32px);text-align:center}
.qpp-toast.is-on{opacity:1;transform:translate(-50%,0)}

@keyframes qpp-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes qpp-fade{from{opacity:0}to{opacity:1}}
@keyframes qpp-slide{from{transform:translateX(100%)}to{transform:none}}

/* ---------- Two screens (with JavaScript) ---------- */
.qpp-js .qpp-guide{display:none}
.qpp-js.qpp-on-guide .qpp-home{display:none}
.qpp-js.qpp-on-guide .qpp-guide{display:block;animation:qpp-in .28s ease}
.qpp-nojs .qpp-guide{border-top:1px solid var(--qpp-line);margin-top:10px}

/* Tablet */
@media (min-width:640px){
	.qpp-home{max-width:600px;margin:0 auto}
	.qpp-hero{border-radius:0 0 28px 28px}
	.qpp-page{padding-top:0}
	.qpp-sheet{padding-left:22px;padding-right:22px}
	.qpp-tile{min-height:120px}
	.qpp-foot{margin-left:0;margin-right:0}
}

/* Desktop: both screens side by side */
@media (min-width:1024px){
	.qpp-guest{background:linear-gradient(180deg,var(--qpp-soft) 0,var(--qpp-bg) 420px)}
	.qpp-page{display:grid;grid-template-columns:minmax(380px,440px) minmax(0,600px);justify-content:center;align-items:start;gap:40px;padding:32px 28px 0}
	.qpp-home{max-width:none;margin:0;border-radius:28px;overflow:hidden;background:var(--qpp-bg);box-shadow:0 20px 50px rgba(23,37,31,.12);border:1px solid var(--qpp-line)}
	.qpp-hero{border-radius:0;min-height:500px}
	.qpp-title{font-size:48px}
	.qpp-scene-home{display:none}
	.qpp-sheet{padding-bottom:22px}
	.qpp-js .qpp-guide,.qpp-js.qpp-on-guide .qpp-guide{display:block;animation:none}
	.qpp-js.qpp-on-guide .qpp-home{display:block}
	.qpp-js .qpp-guidebar,.qpp-tabbar{display:none}
	.qpp-js .qpp-page{padding-bottom:0}
	.qpp-toast{bottom:28px}
	.qpp-catnav{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;position:sticky;top:0;z-index:4;margin:14px -8px 0;padding:12px 8px;background:var(--qpp-bg);border-bottom:1px solid var(--qpp-line)}
	.qpp-catnav a{flex-shrink:0;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--qpp-line);background:var(--qpp-surface);text-decoration:none;font-size:14px;font-weight:500;color:var(--qpp-ink)}
	.qpp-catnav a svg{color:var(--qpp-primary)}
	.qpp-catnav a:hover{border-color:var(--qpp-primary)}
	.qpp-catnav a.is-current{background:var(--qpp-primary);border-color:var(--qpp-primary);color:var(--qpp-on-primary)}
	.qpp-catnav a.is-current svg{color:currentColor}
	.qpp-catnav a.is-sos{color:var(--qpp-sos-ink);background:var(--qpp-sos);border-color:var(--qpp-sos-line)}
	.qpp-catnav a.is-sos svg{color:currentColor}
	.qpp-catnav a.is-sos.is-current{background:var(--qpp-sos-ink);color:#fff}
	.qpp-ghead{padding-top:6px}
	.qpp-ghead .qpp-display{font-size:38px}
	.qpp-acc,.qpp-card,.qpp-wifi{scroll-margin-top:90px}
	.qpp-guide-in{padding:12px 0 0;max-width:none}
	.qpp-nojs .qpp-guide{border-top:0;margin-top:0}
	.qpp-js .qpp-home{position:sticky;top:var(--qpp-stick,24px)}
}

@media (prefers-reduced-motion:reduce){
	.qpp-guest *,.qpp-guest *::before,.qpp-guest *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Owner preview bar */
.qpp-preview-bar{position:sticky;top:0;z-index:40;background:#17251F;color:#fff;padding:10px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;font-size:14px;grid-column:1/-1}
.qpp-preview-actions{display:flex;gap:8px;flex-wrap:wrap}
.qpp-preview-actions form{margin:0}
.qpp-pbtn{min-height:44px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;font-weight:700;display:inline-flex;align-items:center;font-size:14px;text-decoration:none}
.qpp-pbtn-primary{background:#fff;color:#17251F;border-color:#fff}
/* Indian scripts: long words, so slightly smaller labels instead of mid-word breaks */
.qpp-indic .qpp-qa span{font-size:12px;line-height:1.35}
.qpp-indic .qpp-qa{padding-left:2px;padding-right:2px}
.qpp-indic .qpp-tile-label{font-size:12.5px;line-height:1.35}
.qpp-indic .qpp-tile{padding-left:3px;padding-right:3px}
.qpp-indic .qpp-h2{font-size:23px}
/* Wi-Fi shown among "other information": compact, without the large badge */
.qpp-other-head:not([hidden])+.qpp-items .qpp-wifi-badge,.qpp-other-head:not([hidden])+.qpp-items .qpp-wifi>.qpp-sub{display:none}
.qpp-other-head:not([hidden])+.qpp-items .qpp-wifi-title{margin-top:0;font-size:20px}
.qpp-other-head:not([hidden])+.qpp-items .qpp-wifi .qpp-wcard{margin-top:10px}
.qpp-other-head:not([hidden])+.qpp-items .qpp-wifi{margin-bottom:22px}
