body:has(.tp){margin:0;-webkit-font-smoothing:antialiased}:where(.tp) a{color:inherit}:where(.tp) button{cursor:pointer;font:inherit;color:inherit}.tp [hidden]{display:none!important}.tp .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tp :focus-visible{outline:2px solid var(--hb-violet);outline-offset:2px}.tp .tp-main{max-width:calc(1320px + 2*clamp(16px,4.8vw,72px));margin:0 auto;padding-bottom:72px}.tp-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:24px 0 18px;font-size:14px;color:var(--hb-soft)}.tp-crumb a{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--hb-text)}.tp-crumb a:hover{color:var(--hb-violet-dark)}.tp-notice{display:flex;align-items:center;gap:8px;margin:0 0 18px;padding:12px 16px;border-radius:14px;background:#fff8eb;border:1px solid #f6d9a4;color:#8a5300;font-size:14px}.tp-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:36px;align-items:start}.tp-content{min-width:0}.tp-card{background:#fff;border:1px solid #ebe8f4;border-radius:24px;box-shadow:0 1px 2px #15132e0a}.tp-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--hb-tint);color:var(--hb-violet-dark);font-size:13px;font-weight:600}.tp-chip.is-plain{background:#fff;border:1px solid var(--hb-line);color:var(--hb-text)}.tp-chip.is-mint{background:#e5f8f0;color:#08775e}.tp-tabs{position:sticky;top:12px;z-index:20;display:flex;gap:4px;margin:22px 0 18px;padding:6px;overflow-x:auto;scrollbar-width:none;border-radius:16px;background:#ffffffeb;border:1px solid #ebe8f4;box-shadow:0 10px 30px -22px #15132e66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tp-tabs::-webkit-scrollbar{display:none}.tp-tabs a{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:11px;font-weight:600;font-size:14px;color:var(--hb-muted);text-decoration:none;transition:background-color .15s ease,color .15s ease}.tp-tabs a:hover{background:#f4f2fb;color:var(--hb-ink)}.tp-tabs a[aria-current=true]{background:var(--hb-ink);color:#fff}.tp-tabs a span{padding:0 7px;border-radius:999px;background:#6a4cf024;font-size:12px}.tp-tabs a[aria-current=true] span{background:#fff3}.tp-section{padding:28px;margin-bottom:18px;scroll-margin-top:84px}.tp-section h2{margin:0 0 14px;font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--hb-ink)}.tp-section h3{font-family:var(--font-display);color:var(--hb-ink);letter-spacing:-.01em}.tp-section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.tp-section-head h2{margin:0}.tp-about p{margin:0 0 10px;font-size:15.5px;line-height:1.75;color:var(--hb-text);overflow-wrap:anywhere}.tp-about.is-clamped{max-height:12em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,transparent);mask-image:linear-gradient(#000 60%,transparent)}.tp-link{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--hb-violet);font-weight:700;font-size:14px;text-decoration:none}.tp-link:hover{color:var(--hb-violet-dark)}.tp-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.tp-facts div{padding:16px;border-radius:16px;background:#faf9fd;border:1px solid #efedf6;font-size:13.5px;color:var(--hb-muted)}.tp-facts b{display:block;margin:8px 0 2px;font-size:14px;color:var(--hb-ink)}.tp-facts .icon{font-size:18px;color:var(--hb-violet)}.tp-empty{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:20px;border-radius:18px;background:#faf9fd;border:1px dashed #dcd5f5}.tp-empty>.icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--hb-tint);color:var(--hb-violet);font-size:20px}.tp-empty>div{flex:1 1 260px}.tp-empty h3{margin:0 0 4px;font-size:16px}.tp-empty p{margin:0;font-size:14px;color:var(--hb-muted)}.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:14px;border:1px solid var(--hb-line);background:#fff;color:var(--hb-ink);font-family:var(--font-display);font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap;transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.tp-btn:hover{border-color:#c9bff2}.tp-btn:active{transform:scale(.98)}.tp-btn.tp-primary{background:var(--hb-violet);border-color:var(--hb-violet);color:#fff;box-shadow:0 12px 24px -12px #6a4cf0e6}.tp-btn.tp-primary:hover{background:var(--hb-violet-dark)}.tp-btn.tp-ghost{border-color:transparent;background:transparent;min-height:42px}.tp-btn.tp-ghost[aria-pressed=true],.tp-btn.tp-ghost[aria-pressed=true] .icon{color:#e1306c}.tp-btn:disabled{opacity:.55;cursor:not-allowed}.tp-tz{display:inline-flex;align-items:center;gap:8px;padding:0 6px 0 14px;border:1px solid var(--hb-line);border-radius:999px;font-size:13px;color:var(--hb-text)}.tp-tz select{max-width:220px;height:36px;border:0;background:transparent;font:inherit;color:var(--hb-ink);font-weight:600;cursor:pointer}.tp-week-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tp-week-nav strong{font-family:var(--font-display);font-size:15px}.tp-week-nav button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--hb-line);border-radius:12px;background:#fff}.tp-week-nav button:disabled{opacity:.35;cursor:default}.tp-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;min-height:120px}.tp-day{display:grid;align-content:start;gap:6px;min-width:0}.tp-day header{text-align:center;font-size:12px;color:var(--hb-soft);margin-bottom:2px}.tp-day header b{display:block;font:800 18px var(--font-display);color:var(--hb-ink)}.tp-day.is-today header b{color:var(--hb-violet)}.tp-slot{height:38px;border:0;border-radius:10px;background:var(--hb-tint);color:var(--hb-violet-dark);font-weight:700;font-size:13px;transition:background-color .15s ease,color .15s ease}.tp-slot:hover{background:#e3dbff}.tp-slot[aria-pressed=true]{background:var(--hb-violet);color:#fff}.tp-none{display:grid;place-items:center;height:38px;color:#c9c6d8}.tp-more-slots{height:30px;border:0;background:none;color:var(--hb-violet);font-size:12.5px;font-weight:700}.tp-week.is-loading .tp-day{opacity:.45}.tp-hint{margin:14px 0 0;font-size:13.5px;color:var(--hb-muted)}.tp-hint[data-error=true],.tp-status[data-error=true]{color:#b23a3a}.tp-checkout{margin-top:18px;padding:20px;border-radius:18px;background:#faf9fd;border:1px solid #e3dcfb}.tp-checkout h3{margin:0 0 10px;font-size:17px}.ep-checkout-summary{display:grid;gap:4px;font-size:14.5px;color:var(--hb-text)}.ep-checkout-summary div:first-child{font-weight:700;color:var(--hb-ink)}.tp-checkout-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.tp-lengths{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;margin:16px 0 0;padding:0;border:0}.tp-lengths legend{margin-bottom:8px;font-size:13.5px;font-weight:700;color:var(--hb-ink)}.tp-lengths label{display:flex;cursor:pointer}.tp-lengths input{position:absolute;opacity:0;pointer-events:none}.tp-lengths label>span{display:grid;gap:2px;width:100%;padding:10px 12px;border:1px solid var(--hb-line);border-radius:14px;background:#fff}.tp-lengths b{font-size:14px;color:var(--hb-ink)}.tp-lengths small{font-size:12.5px;color:var(--hb-muted)}.tp-lengths input:checked+span{border-color:var(--hb-violet);box-shadow:inset 0 0 0 1px var(--hb-violet);background:#f6f3ff}.tp-lengths input:focus-visible+span{outline:2px solid var(--hb-violet);outline-offset:2px}.tp-lengths input:disabled+span{opacity:.45;cursor:not-allowed}.tp-lengths input[value=trial]+span,.tp-lengths input[value=package]+span{background:#f1fbf7;border-color:#bfe9d8}.tp-lengths input[value=trial]:checked+span,.tp-lengths input[value=package]:checked+span{border-color:#08775e;box-shadow:inset 0 0 0 1px #08775e}.tp-checkout [hidden]{display:none!important}.tp-alert{margin-top:14px;font-size:14px;color:var(--hb-text)}.tp-alert p{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0}.tp-alert .tp-link{display:inline-flex;align-items:center;gap:6px;font-weight:700}.tp-alert-on{padding:10px 12px;border-radius:12px;background:#e5f8f0;color:#08775e;font-weight:600}.tp-alert-on .icon{color:#08775e}.tp-empty+.tp-alert .tp-alert-off .tp-link{padding:8px 14px;border:1px solid var(--hb-line);border-radius:12px;background:#fff}.tp-add-time{margin-top:12px}.tp-picked{display:grid;gap:6px;margin:12px 0 0;padding:0;list-style:none}.tp-picked li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 12px;border:1px solid #e3dcfb;border-radius:12px;background:#fff;font-size:14px;font-weight:600;color:var(--hb-ink)}.tp-unpick{flex:none;width:30px;height:30px;border:0;border-radius:9px;background:#f2f1f7;color:var(--hb-text);font-size:13px;cursor:pointer}.tp-unpick:hover{background:#fdecec;color:#a32b2b}.tp-picked-total{margin:10px 0 0;font-size:15px;font-weight:800;color:var(--hb-ink)}.tp-cost{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 0;margin:12px 0 0;padding:12px 14px;border:1px solid var(--hb-line, #e6e8f0);border-radius:12px;background:#fafbff;font-size:14px}.tp-cost[hidden]{display:none}.tp-cost dt{margin:0;color:var(--hb-muted, #5b6680);font-weight:600}.tp-cost dd{margin:0;padding-left:16px;text-align:right;color:var(--hb-ink);font-weight:700;font-variant-numeric:tabular-nums}.tp-cost .is-total{padding-top:8px;border-top:1px solid var(--hb-line, #e6e8f0);color:var(--hb-ink);font-size:15px;font-weight:800}.tp-cost dt:last-of-type:not(.is-total),.tp-cost dd:last-of-type:not(.is-total){font-size:13px;font-weight:600;color:var(--hb-muted, #5b6680)}.tp-add-hint{margin:6px 0 0!important}.tp-weekly{margin-top:12px}.tp-weekly-toggle{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--hb-line);border-radius:14px;background:#fff;cursor:pointer}.tp-weekly-toggle input{width:18px;height:18px;accent-color:var(--hb-violet);flex:none}.tp-weekly-toggle span{display:grid;gap:2px}.tp-weekly-toggle b{font-size:14px;color:var(--hb-ink)}.tp-weekly-toggle small{font-size:12.5px;color:var(--hb-muted)}.tp-weekly-toggle:has(input:checked){border-color:var(--hb-violet);box-shadow:inset 0 0 0 1px var(--hb-violet);background:#f6f3ff}.tp-weekly-body{display:grid;gap:10px;margin-top:10px}.tp-weeks-count{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--hb-text)}.tp-weeks-count select{height:36px;padding:0 10px;border:1px solid var(--hb-line);border-radius:10px;background:#fff;font:inherit;color:var(--hb-ink)}.tp-weeks{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;margin:0;padding:0;list-style:none}.tp-weeks li{padding:6px 10px;border-radius:10px;font-size:13px}.tp-weeks li.is-free{background:#e5f8f0;color:#08775e}.tp-weeks li.is-free:before{content:"\2713  ";font-weight:700}.tp-weeks li.is-busy{background:#f2f1f7;color:var(--hb-soft);text-decoration:line-through}.tp-weekly-sum{margin:0;font-size:14px;font-weight:700;color:var(--hb-ink)}.tp-weekly-sum[data-error=true]{color:#b23a3a}.tp-code{margin-top:12px}.tp-code[hidden]{display:none}.tp-code summary{display:inline-flex;color:var(--hb-violet, #5844eb);font-size:14px;font-weight:700;cursor:pointer;list-style:none}.tp-code summary::-webkit-details-marker{display:none}.tp-code-row{display:flex;gap:8px;margin-top:8px}.tp-code-row input{flex:1 1 auto;min-width:0;height:42px;padding:0 12px;border:1px solid var(--hb-line, #e6e8f0);border-radius:12px;font:600 15px/1 ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.5px}.tp-code-note{margin:6px 0 0;color:#0b8f62;font-size:13.5px}.tp-code-note:empty{display:none}.tp-code-note[data-error=true]{color:#b23a3a}.tp-move{display:flex;gap:12px;align-items:flex-start;margin:0 0 18px;padding:14px 16px;border-radius:16px;background:var(--hb-tint);border:1px solid #d9cffb;color:var(--hb-ink)}.tp-move .icon{margin-top:2px;color:var(--hb-violet)}.tp-move p{margin:4px 0 0;font-size:14px;color:var(--hb-text)}.tp-move a{color:var(--hb-violet);font-weight:600}.tp-packages-intro{margin:0 0 14px}.tp-packages{display:grid;gap:10px}.tp-package{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid var(--hb-line);border-radius:16px;background:#fff}.tp-package>div{display:grid;gap:2px}.tp-package b{font-size:15.5px;color:var(--hb-ink)}.tp-package small{font-size:13px;color:var(--hb-muted)}.tp-save{color:#08775e;font-weight:700}#packages .tp-perk{margin-top:12px}a.tp-perk.is-link{text-decoration:none}a.tp-perk.is-link:hover{background:#d6f3e7}.tp-fine{margin:12px 0 0;font-size:12.5px;line-height:1.55;color:var(--hb-soft)}.tp-fine.is-warning{color:#8a5300}.tp-status{margin:10px 0 0;font-size:14px;color:var(--hb-text)}.tp-status:empty{display:none}.tp-score{display:grid;grid-template-columns:180px minmax(0,1fr);gap:28px;align-items:center;margin-bottom:18px}.tp-score-big strong{display:block;font:800 54px/1 var(--font-display);letter-spacing:-.04em;color:var(--hb-ink)}.tp-stars{display:flex;gap:2px;margin:6px 0 2px;color:#ddd9ea}.tp-stars .on{color:#f5a623}.tp-score-big small{color:var(--hb-muted);font-size:13px}.tp-dist div{display:grid;grid-template-columns:14px minmax(0,1fr) 30px;gap:10px;align-items:center;margin:5px 0;font-size:12px;color:var(--hb-muted)}.tp-bar{height:6px;border-radius:999px;background:#eeebf8;overflow:hidden}.tp-bar b{display:block;height:100%;border-radius:inherit;background:var(--hb-gradient)}.tp-review-tools{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.tp-review-tools label{display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--hb-line);border-radius:12px;background:#fff;color:var(--hb-soft)}.tp-review-tools input,.tp-review-tools select{height:40px;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--hb-ink)}.tp-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tp-review{padding:18px;border:1px solid #efedf6;border-radius:18px}.tp-review[hidden]{display:none}.tp-review header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.tp-review header div{min-width:0}.tp-review header b{display:block;font-size:14.5px;color:var(--hb-ink)}.tp-review header small{font-size:12px;color:var(--hb-soft)}.tp-review-av{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border-radius:50%;background:var(--hb-tint);color:var(--hb-violet-dark);font-weight:800;text-transform:uppercase}.tp-review-rate{margin-left:auto;display:inline-flex;align-items:center;gap:4px;color:#c27a00;font-weight:700;font-size:13.5px}.tp-review p{margin:0;font-size:14px;line-height:1.65;color:var(--hb-text);overflow-wrap:anywhere}.tp-show-all{margin-top:14px}.tp-review-form{display:grid;gap:12px;margin-top:20px;padding:20px;border-radius:18px;background:#faf9fd;border:1px solid #efedf6}.tp-review-form h3{margin:0;font-size:17px}.tp-review-form label{display:grid;gap:6px;font-size:13.5px;font-weight:600;color:var(--hb-text)}.tp-review-form select,.tp-review-form textarea{padding:10px 12px;border:1px solid #d9d5e8;border-radius:12px;background:#fff;font:inherit;font-weight:400;color:var(--hb-ink)}.tp-review-form textarea{min-height:110px;resize:vertical}.tp-review-form .tp-btn{justify-self:start}.tp-top-tags{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 18px}.tp-top-tags b{margin-left:4px;color:var(--hb-violet-dark)}.tp-booked{display:inline-flex;align-items:center;gap:4px;margin-left:8px;color:#08775e;font-weight:600}.tp-review-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tp-review-tags span{padding:3px 10px;border-radius:999px;background:var(--hb-tint);color:var(--hb-violet-dark);font-size:12px;font-weight:600}.tp-reply{margin-top:12px;padding:12px 14px;border-radius:14px;background:#faf9fd;border-left:3px solid var(--hb-violet)}.tp-reply b{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--hb-ink)}.tp-reply p{margin:4px 0 0;font-size:13.5px}.tp-reply-edit{margin-top:10px}.tp-reply-edit summary{display:inline-flex;font-size:13px;font-weight:700;color:var(--hb-violet);cursor:pointer;list-style:none}.tp-reply-edit summary::-webkit-details-marker{display:none}.tp-reply-form{display:grid;gap:8px;margin-top:8px}.tp-reply-form textarea{min-height:80px;padding:10px 12px;border:1px solid #d9d5e8;border-radius:12px;font:inherit;font-size:14px;resize:vertical}.tp-reply-form .tp-btn{justify-self:start;min-height:40px}.tp-tag-choice{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}.tp-tag-choice legend{width:100%;margin-bottom:6px;font-size:13.5px;font-weight:600;color:var(--hb-text)}.tp-tag-choice label{display:inline-flex;cursor:pointer}.tp-tag-choice input{position:absolute;opacity:0;pointer-events:none}.tp-tag-choice span{padding:7px 12px;border:1px solid var(--hb-line);border-radius:999px;background:#fff;font-size:13px;font-weight:600;color:var(--hb-text)}.tp-tag-choice input:checked+span{background:var(--hb-violet);border-color:var(--hb-violet);color:#fff}.tp-tag-choice input:focus-visible+span{outline:2px solid var(--hb-violet);outline-offset:2px}.tp-timeline{list-style:none;margin:0;padding:0;display:grid;gap:16px}.tp-timeline li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding-left:16px;border-left:2px solid #e3dcfb}.tp-when{font-size:13.5px;color:var(--hb-muted)}.tp-timeline b{display:block;font-size:15px;color:var(--hb-ink)}.tp-timeline span:not(.tp-when){font-size:14px;color:var(--hb-muted)}.tp-timeline p{margin:6px 0 0;font-size:13.5px;color:var(--hb-text)}.tp-subjects{display:grid;gap:10px}.tp-subjects article{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:16px 18px;border:1px solid #efedf6;border-radius:18px}.tp-subjects article>div{flex:1 1 220px;min-width:0}.tp-subjects small{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--hb-soft)}.tp-subjects h3{margin:2px 0 0;font-size:17px}.tp-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tp-tags span{padding:3px 10px;border-radius:999px;background:#f4f2fb;font-size:12.5px;color:var(--hb-text)}.tp-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.tp-gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:14px;display:block}.tp-faq{display:grid;gap:8px}.tp-faq details{border:1px solid #efedf6;border-radius:16px;padding:0 18px}.tp-faq summary{padding:16px 0;font-weight:700;font-size:15px;color:var(--hb-ink);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}.tp-faq summary::-webkit-details-marker{display:none}.tp-faq summary:after{content:"+";color:var(--hb-violet);font-size:20px;line-height:1}.tp-faq details[open] summary:after{content:"\2013"}.tp-faq p{margin:0 0 16px;font-size:14.5px;line-height:1.65;color:var(--hb-text)}.tp-book{position:sticky;top:18px;overflow:hidden;box-shadow:0 2px 4px #15132e0a,0 30px 60px -28px #4632b461}.tp-book-body{display:grid;gap:10px;padding:22px}.tp-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.tp-price strong{font:800 36px var(--font-display);letter-spacing:-.03em;color:var(--hb-ink)}.tp-price>span{color:var(--hb-muted)}.tp-unset{font-size:24px!important}.tp-perk,.tp-next,.tp-state{display:flex;align-items:center;gap:8px;margin:0;padding:11px 14px;border-radius:14px;font-size:13.5px;font-weight:600}.tp-perk,.tp-next{background:#e5f8f0;color:#08775e}.tp-perk[hidden],.tp-next[hidden]{display:none}.tp-state{background:#f4f2fb;color:var(--hb-text)}.tp-trust{list-style:none;margin:6px 0 0;padding:14px 0 0;border-top:1px solid #efedf6;display:grid;gap:9px;font-size:13.5px;color:var(--hb-text)}.tp-trust li{display:flex;align-items:center;gap:9px}.tp-trust .icon{color:var(--hb-mint)}.tp-sheet{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:16px;background:#15132e66;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.tp-sheet[hidden]{display:none}.tp-sheet-card{width:min(560px,100%);padding:24px;border-radius:24px;background:#fff;box-shadow:0 30px 80px -24px #15132e73}.tp-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.tp-sheet-head h2{margin:0;font-family:var(--font-display);font-size:20px}.tp-sheet-head button{width:38px;height:38px;border:0;border-radius:12px;background:#f4f2fb}.tp-sheet textarea{width:100%;min-height:150px;padding:14px;border:1px solid #d9d5e8;border-radius:14px;font:inherit;font-size:15px;resize:vertical;color:var(--hb-ink)}.tp-sheet textarea:focus{outline:none;border-color:#b9a9ff;box-shadow:0 0 0 4px #6a4cf01f}.tp-sheet .tp-btn{margin-top:12px}.tp-toast{position:fixed;z-index:450;left:50%;bottom:24px;transform:translate(-50%);margin:0;padding:12px 18px;border-radius:14px;background:var(--hb-ink);color:#fff;font-size:14px;font-weight:600;box-shadow:0 20px 40px -16px #15132e80}.tp-toast[data-error=true]{background:#b23a3a}.tp-toast[hidden]{display:none}.tp-strength{margin-bottom:18px;padding:22px 24px;border-color:#e3dcfb;background:linear-gradient(135deg,#fbfaff,#f3efff)}.tp-strength-head{display:flex;align-items:center;gap:18px}.tp-strength-ring{--p: 0;flex:0 0 auto;display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:radial-gradient(closest-side,#fff 78%,transparent 80%),conic-gradient(var(--hb-violet) calc(var(--p) * 1%),#e6e2f3 0)}.tp-strength-ring strong{font:800 17px var(--font-display);color:var(--hb-ink)}.tp-strength h2{margin:0 0 4px;font-family:var(--font-display);font-size:19px;color:var(--hb-ink)}.tp-strength p{margin:0;font-size:14px;color:var(--hb-muted)}.tp-strength-steps{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.tp-strength-steps a{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:14px;background:#fff;border:1px solid #ebe8f4;font-size:14px;font-weight:600;color:var(--hb-ink);text-decoration:none}.tp-strength-steps a:hover{border-color:#c9bff2;color:var(--hb-violet-dark)}.tp-strength-steps .icon{color:var(--hb-violet)}.tp-strength-steps span{flex:1}.tp-strength-steps small{color:#08775e;font-weight:700}.tp-share{position:relative;margin-left:auto}.tp-share summary{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid var(--hb-line);border-radius:999px;background:#fff;color:var(--hb-text);font-size:13.5px;font-weight:600;cursor:pointer;list-style:none}.tp-share summary::-webkit-details-marker{display:none}.tp-share summary:hover,.tp-share[open] summary{border-color:#c9bff2;color:var(--hb-violet-dark)}.tp-share-menu{position:absolute;z-index:60;right:0;top:calc(100% + 8px);display:grid;min-width:210px;padding:6px;background:#fff;border:1px solid var(--hb-line);border-radius:16px;box-shadow:0 24px 48px -16px #15132e47}.tp-share-menu a,.tp-share-menu button{display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;border-radius:10px;background:none;font-size:14px;font-weight:600;color:var(--hb-ink);text-decoration:none;text-align:left}.tp-share-menu a:hover,.tp-share-menu button:hover{background:var(--hb-tint);color:var(--hb-violet-dark)}.tp-share-menu .icon{width:18px;color:var(--hb-violet)}.tp-local{margin:-4px 0 0;font-size:13px;color:var(--hb-muted)}.tp-quick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.tp-quick button{padding:7px 12px;border:1px solid var(--hb-line);border-radius:999px;background:#faf9fd;font-size:13px;font-weight:600;color:var(--hb-text)}.tp-quick button:hover{border-color:#c9bff2;background:#fff;color:var(--hb-violet-dark)}.tp-next-free{font-size:13.5px}.tp-similar{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.tp-similar-card{display:grid;gap:4px;align-content:start;padding:14px;border:1px solid #efedf6;border-radius:18px;text-decoration:none;transition:border-color .15s ease,box-shadow .2s ease,transform .2s ease}.tp-similar-card:hover{border-color:#d9d1f6;box-shadow:0 18px 36px -24px #4632b473;transform:translateY(-2px)}.tp-similar-photo{display:block;aspect-ratio:4 / 3;margin-bottom:8px;border-radius:14px;overflow:hidden;background:var(--hb-gradient)}.tp-similar-photo img{width:100%;height:100%;object-fit:cover;display:block}.tp-similar-photo span{display:grid;place-items:center;height:100%;color:#fff;font:800 30px var(--font-display)}.tp-similar-card b{font-family:var(--font-display);font-size:15.5px;color:var(--hb-ink)}.tp-similar-card small{font-size:13px;color:var(--hb-muted)}.tp-similar-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:13.5px}.tp-similar-meta .icon{color:#f5a623}.tp-similar-meta strong{font-family:var(--font-display);color:var(--hb-ink)}.tp-similar-new{font-weight:700;color:var(--hb-violet-dark)}.tp-mobilebar{display:none}.tp-time-chip{min-height:40px;padding:0 14px;border:1px solid #d9d1f6;border-radius:12px;background:#fff;color:var(--hb-violet-dark);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;transition:background .15s ease,border-color .15s ease,transform .15s ease}.tp-time-chip:hover{border-color:var(--hb-violet);background:var(--hb-tint);transform:translateY(-1px)}.tp-fit{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;margin-top:18px;padding:22px 24px;background:linear-gradient(110deg,#f5f2ff,#fff 60%);border-color:#e3dbfb}.tp-fit-ring{--p: 0;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--hb-violet) calc(var(--p) * 1%),#e8e3f8 0)}.tp-fit-ring strong{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#fff;font:800 19px var(--font-display);color:var(--hb-ink)}.tp-fit h2{margin:0 0 8px;font:800 19px var(--font-display);letter-spacing:-.02em}.tp-fit ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 18px;margin:0 0 10px;padding:0;list-style:none}.tp-fit li{display:grid;grid-template-columns:20px auto 1fr;gap:6px;align-items:baseline;font-size:14px;list-style:none}.tp-fit li::marker{content:none}.tp-fit li i{font-style:normal;font-weight:800}.tp-fit li.is-yes i{color:#0b8a5c}.tp-fit li.is-partly i{color:#b7791f}.tp-fit li.is-no i{color:#c0392b}.tp-fit li.is-unknown i{color:var(--hb-soft)}.tp-fit li b{color:var(--hb-ink);white-space:nowrap}.tp-fit li span{color:var(--hb-muted)}.tp-badges{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.tp-badges li{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid #ebe8f4;border-radius:12px;background:#fbfaff;font-size:13.5px;font-weight:600;color:var(--hb-text);list-style:none}.tp-badges li::marker{content:none}.tp-badges li .icon{color:var(--hb-violet)}.tp-badges li.is-ok{border-color:#c9eedd;background:#f1fbf6;color:#08775e}.tp-badges li.is-ok .icon{color:#0b8a5c}.tp-owner-tip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;border-style:dashed}.tp-owner-tip>.icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--hb-tint);color:var(--hb-violet);font-size:20px}.tp-owner-tip h2{margin:0 0 2px;font-size:17px}.tp-owner-tip p{margin:0;color:var(--hb-muted);font-size:14px}.tp-standout{position:relative;margin:18px 0;padding:20px 22px 18px 58px;border-radius:18px;background:linear-gradient(120deg,#faf8ff,#fff);border:1px solid #ece7fb}.tp-standout>.icon{position:absolute;left:20px;top:20px;color:var(--hb-violet);font-size:22px}.tp-standout blockquote{margin:0 0 10px;font:600 17px/1.55 var(--font-display);letter-spacing:-.01em;color:var(--hb-ink)}.tp-standout figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13.5px;color:var(--hb-muted)}.tp-standout figcaption b{color:var(--hb-ink)}.tp-standout .tp-stars .icon{color:#f5a623;font-size:13px}.tp-perk.is-plain{color:var(--hb-muted)}.tp-similar-card,.tp-similar-photo{position:relative}.tp-similar-link{text-decoration:none}.tp-similar-link:after{content:"";position:absolute;inset:0;border-radius:inherit}.tp-similar-play{position:absolute;z-index:1;right:8px;bottom:8px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#fffffff2;color:var(--hb-violet);font-size:16px;box-shadow:0 6px 16px #00000040}.tp-similar-play .icon{margin-left:2px}.tp-similar-play:hover{transform:scale(1.06)}.tp-zone-search{width:100%;margin:8px 0 0;padding:10px 12px;border:1px solid var(--hb-line);border-radius:12px;font:inherit;font-size:14px}@media (max-width: 1100px){.tp-layout{grid-template-columns:minmax(0,1fr) 330px;gap:24px}.tp-facts,.tp-reviews{grid-template-columns:minmax(0,1fr)}}@media (max-width: 900px){.tp-layout{display:flex;flex-direction:column-reverse;gap:18px}.tp-layout>*{width:100%}.tp-book{position:static}.tp-book:not(:has(.tp-video)){display:none}.tp-book-body{display:none}.tp-tabs{top:8px}.tp .tp-main{padding-bottom:110px}.tp-mobilebar{position:fixed;z-index:300;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid #efedf6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tp-mobilebar>div{margin-right:auto;display:grid;line-height:1.2}.tp-mobilebar strong{font:800 22px var(--font-display);color:var(--hb-ink)}.tp-mobilebar small{font-size:12px;color:var(--hb-muted)}.tp-mobilebar .tp-btn{min-height:46px}.tp-mobilebar .tp-icon{width:46px;padding:0}}@media (max-width: 640px){.tp-fit{grid-template-columns:minmax(0,1fr);padding:18px}.tp-fit-ring{width:64px;height:64px}.tp-fit-ring strong{width:50px;height:50px;font-size:15px}.tp-owner-tip{grid-template-columns:minmax(0,1fr)}.tp-standout{padding:18px 18px 16px}.tp-standout>.icon{display:none}.tp-section{padding:20px;border-radius:20px}.tp-score{grid-template-columns:minmax(0,1fr);gap:12px}.tp-timeline li{grid-template-columns:minmax(0,1fr);gap:4px}.tp-week{grid-template-columns:repeat(7,84px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -20px;padding:0 20px}.tp-week::-webkit-scrollbar{display:none}.tp-day{scroll-snap-align:start}.tp-checkout-actions .tp-btn{flex:1 1 100%}.tp-package{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion: reduce){.tp-btn,.tp-slot,.tp-similar-card,.tp-time-chip{transition:none}.tp-similar-card:hover{transform:none}}.tp-section>.tp-lengths{margin:0 0 14px}.tp-lengths small .money{display:block;margin-top:2px;font-size:16px;font-weight:800;letter-spacing:-.01em;color:var(--hb-ink)}.tp-lengths small .money-sub{display:block;margin-top:1px;font-size:12px;font-weight:600;color:var(--hb-muted)}.tp-lengths input:checked+span small .money{color:var(--hb-violet-dark, #4b37d6)}
