:root{--ky-wall:#f4f2ee;--ky-wall-2:#ebe7e0;--ky-paper:#fff;--ky-ink:#1f1a1d;--ky-soft:#675e63;--ky-line:#e3ddd5;--ky-gold:#b2914e;--ky-ebony:#241e21;--ky-serif:'Instrument Serif','Iowan Old Style',Georgia,serif;--ky-sans:'Instrument Sans',-apple-system,'Segoe UI',Roboto,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ky-wall) linear-gradient(180deg,#f8f6f2 0,var(--ky-wall) 420px);color:var(--ky-ink);font:16px/1.62 var(--ky-sans);overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:var(--ky-rose);text-underline-offset:3px}
a:hover{color:var(--ky-rose-deep)}
h1,h2,h3{font-family:var(--ky-serif);font-weight:400;line-height:1.08;letter-spacing:-.01em}
.ky-ic{flex:none}
.ky-skip{position:absolute;left:-999px;top:8px;background:var(--ky-ink);color:#fff;padding:8px 14px;z-index:99}
.ky-skip:focus{left:8px}
.ky-house{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:100vh}
.ky-guide{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--ky-paper);border-right:1px solid var(--ky-line);padding:22px 20px 28px;display:flex;flex-direction:column;gap:22px}
.ky-guide-top{display:flex;align-items:center;justify-content:space-between}
.ky-guide-x{display:none}
.ky-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ky-ink)}
.ky-word{display:inline-flex;flex-direction:column;line-height:1}
.ky-word span{font:600 11px/1 var(--ky-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ky-soft)}
.ky-word b{font:400 30px/1 var(--ky-serif);color:var(--ky-rose);letter-spacing:-.01em}
.ky-word i{font:italic 400 15px/1 var(--ky-serif);color:var(--ky-rose-deep);margin-top:1px}
.ky-guide-h{margin:0 0 8px;font:600 10.5px/1 var(--ky-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--ky-soft)}
.ky-rooms-nav{display:flex;flex-direction:column;margin-top:-12px}
.ky-rooms-nav a{display:flex;align-items:baseline;gap:12px;padding:7px 10px;margin:0 -10px;color:var(--ky-ink);text-decoration:none;border-left:2px solid transparent;font-size:15px}
.ky-rooms-nav i{width:26px;font:italic 400 17px/1 var(--ky-serif);color:var(--ky-gold);text-align:right}
.ky-rooms-nav a:hover{background:#faf6f8}
.ky-rooms-nav a[aria-current]{border-left-color:var(--ky-rose);background:#fdf1f7;color:var(--ky-rose-deep);font-weight:600}
.ky-nav-promo span{color:var(--ky-rose);font-weight:600}
.ky-justhung ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ky-justhung a{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ky-ink);font-size:13.5px;line-height:1.25}
.ky-justhung img,.ky-justhung a>span:first-child{width:42px;height:42px;flex:none;border:3px solid #fff;outline:1px solid var(--ky-line);object-fit:cover;background:var(--ky-wall-2)}
.ky-justhung a:hover span{color:var(--ky-rose)}
.ky-spotbox{padding:10px;margin:-10px;background:#fdf1f7;border:1px solid #f6cfe2}
.ky-justhung em{display:block;font:italic 400 13px/1.2 var(--ky-serif);color:var(--ky-gold)}
.ky-hours p:last-child{margin:0;font-size:13px;line-height:1.5;color:var(--ky-soft)}
.ky-hours b{color:var(--ky-ink)}
.ky-adult{margin:auto 0 0;font-size:12px;color:var(--ky-soft);display:flex;gap:8px;align-items:center;line-height:1.35}
.ky-adult span{flex:none;border:1.5px solid var(--ky-rose);color:var(--ky-rose);font-weight:700;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:11px}
.ky-shade{display:none}
.ky-hall{min-width:0;display:flex;flex-direction:column}
.ky-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;height:58px;padding:0 34px;background:rgba(246,244,240,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05)}
.ky-burger,.ky-brand--bar{display:none}
.ky-burger{background:none;border:0;padding:6px;color:var(--ky-ink);cursor:pointer}
.ky-where{margin:0;font:italic 400 18px/1 var(--ky-serif);color:var(--ky-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ky-topbar .ky-cta{margin-left:auto}
.ky-roomstrip{display:none}
.ky-main{flex:1}
.ky-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:2px;background:var(--ky-rose);color:#fff;text-decoration:none;font:600 15px/1.1 var(--ky-sans);letter-spacing:.01em;box-shadow:0 6px 16px -8px var(--ky-rose);border:0;cursor:pointer}
.ky-cta:hover{background:var(--ky-rose-deep);color:#fff}
.ky-cta--sm{padding:8px 13px;font-size:13.5px}
.ky-cta-ghost{background:transparent;color:var(--ky-rose-deep);box-shadow:inset 0 0 0 1.5px var(--ky-rose)}
.ky-cta-ghost:hover{background:#fdf1f7;color:var(--ky-rose-deep)}
.ky-promo-tag{background:#fff;color:var(--ky-rose-deep);border-radius:2px;padding:2px 6px;font-size:12px;font-weight:700}
.ky-inline{font-weight:600;white-space:nowrap}
.ky-frame{display:block;padding:7px;background:var(--ky-ebony);box-shadow:0 22px 34px -22px rgba(48,22,34,.55),0 2px 5px rgba(0,0,0,.14)}
.ky-frame--gilt{background:linear-gradient(135deg,#d6b56b,#8c6b30 38%,#e8cd8c 58%,#9a7838)}
.ky-frame--chalk{background:#fdfcf9;box-shadow:0 22px 34px -22px rgba(48,22,34,.5),0 0 0 1px #ddd6cc}
.ky-frame--rose{background:var(--ky-rose)}
.ky-mat{display:block;padding:9%;background:#fbfaf7;box-shadow:inset 0 1px 7px rgba(0,0,0,.13)}
.ky-canvas{display:block;position:relative;aspect-ratio:4 / 5;background:var(--ky-wall-2);overflow:hidden}
.ky-canvas img{width:100%;height:100%;object-fit:cover}
.ky-canvas video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
.ky-canvas video.ky-run{opacity:1}
.ky-blank{position:absolute;inset:0;display:grid;place-items:center;padding:12px;text-align:center;font-family:var(--ky-serif);font-size:20px;color:var(--ky-soft)}
.ky-veil{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);white-space:nowrap;display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.92);color:var(--ky-rose-deep);font:600 11.5px/1 var(--ky-sans);padding:6px 9px;border-radius:20px}
.ky-hang{display:block;text-decoration:none}
.ky-hang:hover .ky-frame{transform:translateY(-2px)}
.ky-frame{transition:transform .25s}
.ky-label{display:block;margin-top:13px;padding:9px 11px 10px;background:var(--ky-paper);border:1px solid var(--ky-line);font-size:12.5px;line-height:1.35}
.ky-label-t{display:block;font:400 18px/1.15 var(--ky-serif);color:var(--ky-ink)}
.ky-label-t a{color:inherit;text-decoration:none}
.ky-label-t a:hover{color:var(--ky-rose)}
.ky-label-m{display:block;margin-top:3px;color:var(--ky-soft)}
.ky-label-r{display:block;margin-top:3px;color:var(--ky-gold);font-style:italic;font-family:var(--ky-serif);font-size:14px}
.ky-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--ky-rose);margin:0 6px 2px 0;vertical-align:middle;box-shadow:0 0 0 3px #fde3f0}
.ky-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:34px 26px;margin:26px 0 36px}
.ky-piece{margin:0;min-width:0}
.ky-wall:not(.ky-wall--strip) .ky-piece:nth-child(3n+2){margin-top:22px}
.ky-wall--strip{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:178px;overflow-x:auto;padding:4px 4px 18px;scroll-snap-type:x mandatory}
.ky-wall--strip .ky-piece{scroll-snap-align:start}
.ky-piece[hidden]{display:none}
.ky-hero{position:relative;display:grid;grid-template-columns:minmax(230px,340px) minmax(0,1fr);gap:54px;align-items:center;padding:44px 46px 40px;background:radial-gradient(ellipse 360px 300px at 210px 30px,rgba(255,255,255,.95),rgba(255,255,255,0) 70%)}
.ky-spot{margin:0;position:relative}
.ky-spot::before{content:"";position:absolute;left:50%;top:-34px;width:70px;height:12px;transform:translateX(-50%);border-radius:0 0 40px 40px;background:#2b2427;box-shadow:0 18px 40px 10px rgba(255,248,225,.7)}
.ky-spot .ky-mat{padding:7%}
.ky-label--hero{margin-top:16px}
.ky-walltext{min-width:0}
.ky-kicker{margin:0 0 12px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font:600 11.5px/1.3 var(--ky-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ky-soft)}
.ky-k-room{background:var(--ky-ink);color:#fff;padding:4px 8px;letter-spacing:.16em}
.ky-hero h1{margin:0 0 16px;font-size:clamp(38px,4.4vw,62px)}
.ky-lead{margin:0 0 20px;font-size:18px;line-height:1.55;color:#3c3438;max-width:640px}
.ky-hero-go{margin:18px 0 0}
.ky-crumbs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px;font-size:13px;color:var(--ky-soft)}
.ky-crumbs a{color:var(--ky-soft)}
.ky-facts{display:flex;flex-wrap:wrap;gap:0;margin:0 0 6px;border-top:1px solid var(--ky-line);border-bottom:1px solid var(--ky-line)}
.ky-facts div{padding:10px 22px 10px 0;margin-right:22px;border-right:1px solid var(--ky-line)}
.ky-facts div:last-child{border-right:0}
.ky-facts dt{font:600 10.5px/1 var(--ky-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ky-soft)}
.ky-facts dd{margin:4px 0 0;font:400 26px/1 var(--ky-serif)}
.ky-pricecard{display:inline-flex;flex-direction:column;margin:4px 0 4px;padding:14px 20px;background:var(--ky-paper);border:1px solid var(--ky-line);border-top:3px solid var(--ky-rose)}
.ky-pricecard span{font:600 11px/1 var(--ky-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ky-soft)}
.ky-pricecard b{font:400 44px/1.1 var(--ky-serif);color:var(--ky-rose-deep)}
.ky-pricecard em{font-style:normal;color:var(--ky-soft);font-size:14px}
.ky-text{max-width:900px;padding:4px 46px 64px}
.ky-text h2{font-size:clamp(28px,3vw,38px);margin:46px 0 12px;display:flex;align-items:center;gap:14px}
.ky-text h2::after{content:"";flex:1;height:1px;background:var(--ky-line)}
.ky-text h3{font-size:24px;margin:28px 0 8px}
.ky-text p,.ky-text li{font-size:16.5px}
.ky-text ul,.ky-text ol{padding-left:22px}
.ky-small{font-size:13.5px !important;color:var(--ky-soft)}
.ky-note{font:400 22px/1.5 var(--ky-serif);color:#2c2528}
.ky-note::first-letter{float:left;font-size:68px;line-height:.8;padding:6px 10px 0 0;color:var(--ky-rose)}
.ky-aka{font-size:14px;color:var(--ky-soft)}
.ky-aka span{font:600 10.5px/1 var(--ky-sans);letter-spacing:.18em;text-transform:uppercase;margin-right:6px}
.ky-aka em{font-family:var(--ky-serif);font-size:17px;color:var(--ky-ink)}
.ky-aka a{text-decoration:none}
.ky-aka a:hover em{color:var(--ky-rose)}
.ky-cta-row{margin:28px 0}
.ky-steps{counter-reset:ky;list-style:none;padding:0 !important;display:grid;gap:12px}
.ky-steps li{counter-increment:ky;position:relative;padding:14px 16px 14px 62px;background:var(--ky-paper);border:1px solid var(--ky-line)}
.ky-steps li::before{content:counter(ky,upper-roman);position:absolute;left:16px;top:12px;font:italic 400 26px/1 var(--ky-serif);color:var(--ky-gold)}
.ky-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--ky-line);border:1px solid var(--ky-line);margin:26px 0}
.ky-figures div{background:var(--ky-paper);padding:16px 18px}
.ky-figures b{display:block;font:400 40px/1 var(--ky-serif);color:var(--ky-rose-deep)}
.ky-figures span{display:block;margin-top:6px;font-size:13px;color:var(--ky-soft);line-height:1.35}
.ky-quote{margin:28px 0;padding:4px 0 4px 22px;border-left:3px solid var(--ky-rose);font:italic 400 22px/1.45 var(--ky-serif);color:#3c3438}
.ky-box{margin:24px 0;padding:18px 22px;background:var(--ky-paper);border:1px solid var(--ky-line)}
.ky-box>:first-child{margin-top:0}
.ky-box>:last-child{margin-bottom:0}
.ky-ticket{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);margin:10px 0 30px;background:var(--ky-paper);border:1px solid var(--ky-line);box-shadow:0 16px 30px -24px rgba(48,22,34,.5)}
.ky-ticket::before,.ky-ticket::after{content:"";position:absolute;left:calc(55.5% - 11px);width:22px;height:22px;border-radius:50%;background:var(--ky-wall);border:1px solid var(--ky-line)}
.ky-ticket::before{top:-12px}
.ky-ticket::after{bottom:-12px}
.ky-ticket-main{padding:22px 26px;border-right:2px dashed var(--ky-line)}
.ky-ticket-k{margin:0;font:600 10.5px/1 var(--ky-sans);letter-spacing:.26em;text-transform:uppercase;color:var(--ky-rose)}
.ky-ticket h2{margin:8px 0 10px !important;font-size:30px !important}
.ky-ticket h2::after{display:none}
.ky-ticket-main p:last-child{margin:0;font-size:15.5px}
.ky-ticket-rows{list-style:none;margin:0;padding:18px 22px !important;display:grid;gap:8px;align-content:center}
.ky-ticket-rows li{display:flex;justify-content:space-between;gap:12px;font-size:14px !important;border-bottom:1px dotted var(--ky-line);padding-bottom:6px}
.ky-ticket-rows span{color:var(--ky-soft)}
.ky-ticket-rows b{text-align:right;font-weight:600}
.ky-tk-open b,.ky-tk-member b{color:var(--ky-rose-deep)}
.ky-tk-sum{border-bottom:0 !important;font-weight:700}
.ky-ticket-go{grid-column:1 / -1;margin:0;padding:14px 26px 18px;border-top:1px solid var(--ky-line)}
.ky-plates{list-style:none;margin:14px 0 8px;padding:6px 2px 16px !important;display:grid;grid-auto-flow:column;grid-auto-columns:112px;gap:16px;overflow-x:auto}
.ky-plate a{display:block;text-decoration:none;color:var(--ky-ink)}
.ky-plate img,.ky-plate-ph{width:100%;aspect-ratio:2 / 3;object-fit:cover;border:5px solid #fff;outline:1px solid var(--ky-line);background:var(--ky-wall-2);box-shadow:0 10px 18px -14px rgba(0,0,0,.5)}
.ky-plate--open img,.ky-plate--member img{outline:2px solid var(--ky-rose-2)}
.ky-plate-n{display:block;margin-top:7px;font:italic 400 15px/1.1 var(--ky-serif)}
.ky-plate-x{display:block;font-size:11.5px !important;color:var(--ky-soft)}
.ky-plate--open .ky-plate-x,.ky-plate--member .ky-plate-x{color:var(--ky-rose-deep);font-weight:600}
.ky-eps{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin:16px 0 26px}
.ky-ep{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:start;padding:12px;background:var(--ky-paper);border:1px solid var(--ky-line);scroll-margin-top:110px}
.ky-ep img,.ky-ep .ky-plate-ph{width:76px;aspect-ratio:2 / 3;object-fit:cover;border:4px solid #fff;outline:1px solid var(--ky-line);background:var(--ky-wall-2)}
.ky-ep.ky-plate--open img,.ky-ep.ky-plate--member img{outline:2px solid var(--ky-rose-2)}
.ky-ep h3{margin:0 0 4px !important;font-size:22px !important}
.ky-ep h3 span{display:block;font:500 11.5px/1.3 var(--ky-sans);color:var(--ky-soft);letter-spacing:.02em}
.ky-ep p{margin:0 0 6px;font-size:14.5px !important;line-height:1.45}
.ky-ep:target{border-color:var(--ky-rose);box-shadow:0 0 0 3px #fde3f0}
.ky-plate--more a{display:grid;place-items:center;height:168px;border:1px dashed var(--ky-line);font-size:13px;color:var(--ky-soft);text-align:center;padding:8px}
.ky-scroll{overflow-x:auto;margin:16px 0 24px;border:1px solid var(--ky-line);background:var(--ky-paper)}
.ky-table{width:100%;border-collapse:collapse;font-size:14px}
.ky-table th,.ky-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #efeae3;vertical-align:top}
.ky-table thead th{font:600 10.5px/1.2 var(--ky-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ky-soft);background:#faf8f5;white-space:nowrap}
.ky-table tbody th{font-weight:600}
.ky-table tbody th a{color:var(--ky-ink);text-decoration:none}
.ky-table tbody th a:hover{color:var(--ky-rose)}
.ky-spec th{width:34%;color:var(--ky-soft);font-weight:500 !important}
.ky-catalogue{list-style:none;margin:18px 0;padding:0 !important;border-top:1px solid var(--ky-line)}
.ky-catalogue a{display:flex;align-items:center;gap:14px;padding:10px 4px;border-bottom:1px solid var(--ky-line);text-decoration:none;color:var(--ky-ink)}
.ky-catalogue a:hover{background:var(--ky-paper)}
.ky-cat-n{width:54px;flex:none;font:italic 400 15px/1 var(--ky-serif);color:var(--ky-gold)}
.ky-catalogue img,.ky-cat-ph{width:52px;height:52px;flex:none;object-fit:cover;border:3px solid #fff;outline:1px solid var(--ky-line);background:var(--ky-wall-2)}
.ky-cat-t{flex:1 1 auto;min-width:0;display:grid;gap:1px}
.ky-cat-t strong{font:400 19px/1.2 var(--ky-serif)}
.ky-cat-t em{font-style:normal;font-size:12.5px;color:var(--ky-soft)}
.ky-rooms{list-style:none;padding:0 !important;margin:18px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.ky-rooms a{display:flex;flex-direction:column;padding:14px 16px;background:var(--ky-paper);border:1px solid var(--ky-line);text-decoration:none;color:var(--ky-ink)}
.ky-rooms a:hover{border-color:var(--ky-rose)}
.ky-rooms span{font:600 10px/1 var(--ky-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ky-gold)}
.ky-rooms b{font:400 23px/1.15 var(--ky-serif);margin-top:6px}
.ky-rooms em{font-style:normal;font-size:12.5px;color:var(--ky-soft)}
.ky-portraits{list-style:none;padding:0 !important;margin:20px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:26px 20px}
.ky-portraits a{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:var(--ky-ink)}
.ky-cameo{display:block;width:128px;aspect-ratio:4 / 5;border-radius:50%;padding:6px;background:linear-gradient(135deg,#d6b56b,#8c6b30 40%,#e8cd8c 60%,#9a7838);box-shadow:0 14px 24px -16px rgba(0,0,0,.55)}
.ky-cameo img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:5px solid #fbfaf7}
.ky-portraits strong{display:block;margin-top:12px;font:400 21px/1.1 var(--ky-serif)}
.ky-portraits em{font-style:normal;font-size:12.5px;color:var(--ky-soft)}
.ky-names{list-style:none;padding:0 !important;display:flex;flex-wrap:wrap;gap:10px}
.ky-names a{display:inline-block;padding:8px 14px;background:var(--ky-paper);border:1px solid var(--ky-line);text-decoration:none;color:var(--ky-ink);font-family:var(--ky-serif);font-size:18px}
.ky-names em{font-family:var(--ky-sans);font-style:normal;font-size:12px;color:var(--ky-rose)}
.ky-study{margin:30px 0;padding-top:4px}
.ky-study h2{margin-top:10px !important}
.ky-features{display:grid;gap:22px;margin:22px 0}
.ky-feature{display:grid;grid-template-columns:170px minmax(0,1fr);gap:24px;align-items:start;padding:20px;background:var(--ky-paper);border:1px solid var(--ky-line)}
.ky-feature .ky-label{display:none}
.ky-feature h3{margin:0 0 6px}
.ky-feature h3 a{color:var(--ky-ink);text-decoration:none}
.ky-feature p{margin:0 0 8px;font-size:15px !important}
.ky-feature-free{color:var(--ky-rose-deep);font-weight:600}
.ky-filter{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 6px}
.ky-filter button{font:500 13.5px/1 var(--ky-sans);padding:9px 13px;background:var(--ky-paper);border:1px solid var(--ky-line);color:var(--ky-ink);cursor:pointer}
.ky-filter button.ky-sel{background:var(--ky-ink);color:#fff;border-color:var(--ky-ink)}
.ky-filter-count{font-size:13px;color:var(--ky-soft);margin:4px 0 0}
.ky-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:22px 0 10px}
.ky-plan{padding:20px;background:var(--ky-paper);border:1px solid var(--ky-line);display:flex;flex-direction:column;gap:4px}
.ky-plan-pick{border:2px solid var(--ky-rose)}
.ky-plan p{margin:0}
.ky-plan-name{font:400 26px/1.1 var(--ky-serif)}
.ky-plan-name span{display:block;font:600 10.5px/1.4 var(--ky-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ky-rose)}
.ky-plan-off{font-size:13px !important;color:var(--ky-gold);font-weight:600}
.ky-plan-price{font:400 34px/1.1 var(--ky-serif);color:var(--ky-rose-deep);margin-top:6px !important}
.ky-plan-price small{font:400 14px var(--ky-sans);color:var(--ky-soft)}
.ky-plan-fine{font-size:13px !important;color:var(--ky-soft);margin-bottom:12px !important}
.ky-plan .ky-cta{margin-top:auto;justify-content:center}
.ky-plans-note,.ky-plans-none{font-size:13px !important;color:var(--ky-soft)}
.ky-perks{columns:2;gap:30px}
.ky-faq details{border-top:1px solid var(--ky-line);padding:4px 0}
.ky-faq details:last-child{border-bottom:1px solid var(--ky-line)}
.ky-faq summary{cursor:pointer;list-style:none;padding:12px 34px 12px 0;position:relative;font:400 21px/1.3 var(--ky-serif)}
.ky-faq summary::-webkit-details-marker{display:none}
.ky-faq summary::after{content:"+";position:absolute;right:4px;top:8px;font:300 26px/1 var(--ky-sans);color:var(--ky-rose)}
.ky-faq details[open] summary::after{content:"–"}
.ky-faq details p{margin:0 0 14px;color:#3c3438}
.ky-walk{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px}
.ky-walk a{padding:16px 18px;background:var(--ky-paper);border:1px solid var(--ky-line);text-decoration:none;color:var(--ky-ink);font:400 20px/1.2 var(--ky-serif)}
.ky-walk a:last-child{text-align:right}
.ky-walk span{display:block;font:600 10.5px/1 var(--ky-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ky-rose);margin-bottom:6px}
.ky-foot{margin-top:auto;background:var(--ky-paper);border-top:1px solid var(--ky-line);padding:34px 46px 22px;font-size:14px;color:var(--ky-soft)}
.ky-foot-grid{display:grid;grid-template-columns:1.1fr 1.3fr .8fr;gap:36px}
.ky-foot-h{margin:0 0 8px;font:600 10.5px/1 var(--ky-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ky-ink)}
.ky-brand--foot{margin:0 0 8px}
.ky-foot-nav{display:flex;flex-direction:column;gap:4px}
.ky-foot-nav a{color:var(--ky-soft);text-decoration:none}
.ky-foot-nav a:hover{color:var(--ky-rose)}
.ky-foot-line{margin:26px 0 0;padding-top:14px;border-top:1px solid var(--ky-line);font-size:12.5px}
.ky-desk{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px;background:rgba(36,28,32,.55);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.ky-desk[hidden]{display:none}
.ky-desk-card{max-width:420px;background:var(--ky-paper);padding:28px 28px 22px;border-top:4px solid var(--ky-rose);text-align:center;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.ky-desk-k{margin:0 0 8px;font:600 11px/1 var(--ky-sans);letter-spacing:.26em;text-transform:uppercase;color:var(--ky-rose)}
.ky-desk-card p{font-size:15px}
#ky-desk-h{font:400 23px/1.3 var(--ky-serif);margin:0 0 18px}
.ky-desk-do{display:flex;flex-direction:column;align-items:center;gap:12px;margin:0}
.ky-desk-do a{color:var(--ky-soft);font-size:13px}
.ky-promo-on .ky-topbar{border-bottom:2px solid var(--ky-rose)}
.ky-promo-on .ky-brand img{filter:hue-rotate(-20deg) saturate(1.3)}
@media (max-width:1100px){.ky-hero{gap:34px;padding:36px 30px}
.ky-text{padding:4px 30px 56px}
.ky-foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:960px){.ky-house{display:block}
.ky-guide{position:fixed;z-index:60;left:0;top:0;width:min(310px,86vw);transform:translateX(-102%);transition:transform .28s;box-shadow:0 0 40px rgba(0,0,0,.2)}
.ky-open .ky-guide{transform:none}
.ky-guide-x{display:block;background:none;border:0;color:var(--ky-ink);padding:6px;cursor:pointer}
.ky-shade{display:block;position:fixed;inset:0;z-index:55;background:rgba(30,20,25,.4)}
.ky-shade[hidden]{display:none}
.ky-topbar{height:52px;padding:0 12px 0 6px;gap:6px}
.ky-burger,.ky-brand--bar{display:inline-flex}
.ky-brand--bar .ky-word span{font-size:9px}
.ky-brand--bar .ky-word b{font-size:23px}
.ky-brand--bar .ky-word i{display:none}
.ky-where{display:none}
.ky-roomstrip{display:flex;gap:6px;position:sticky;top:52px;z-index:25;overflow-x:auto;scrollbar-width:none;padding:6px 12px;background:rgba(246,244,240,.95);border-bottom:1px solid var(--ky-line)}
.ky-roomstrip::-webkit-scrollbar{display:none}
.ky-roomstrip a{flex:none;padding:5px 11px;font-size:13px;line-height:1.2;color:var(--ky-ink);text-decoration:none;border:1px solid var(--ky-line);background:var(--ky-paper);border-radius:20px}
.ky-roomstrip a[aria-current]{background:var(--ky-rose);border-color:var(--ky-rose);color:#fff}
.ky-hero{grid-template-columns:1fr;gap:20px;padding:12px 16px 26px;background:none}
.ky-spot{width:min(290px,78vw);margin:0 auto}
.ky-spot::before{display:none}
.ky-label--hero{text-align:center}
.ky-hero h1{font-size:clamp(32px,9vw,44px)}
.ky-lead{font-size:16.5px}
.ky-text{padding:0 16px 48px}
.ky-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
.ky-wall:not(.ky-wall--strip) .ky-piece:nth-child(3n+2){margin-top:0}
.ky-wall:not(.ky-wall--strip) .ky-piece:nth-child(even){margin-top:18px}
.ky-wall--strip{grid-template-columns:none;grid-auto-columns:150px}
.ky-label{padding:7px 8px}
.ky-label-t{font-size:16px}
.ky-ticket{grid-template-columns:1fr}
.ky-ticket::before,.ky-ticket::after{display:none}
.ky-ticket-main{border-right:0;border-bottom:2px dashed var(--ky-line);padding:18px}
.ky-ticket-rows{padding:14px 18px !important}
.ky-ticket-go{padding:12px 18px 16px}
.ky-feature{grid-template-columns:110px minmax(0,1fr);gap:14px;padding:14px}
.ky-walk{grid-template-columns:1fr}
.ky-walk a:last-child{text-align:left}
.ky-foot{padding:28px 16px 20px}
.ky-foot-grid{grid-template-columns:1fr;gap:22px}
.ky-perks{columns:1}
.ky-facts div{padding-right:14px;margin-right:14px}
.ky-facts dd{font-size:22px}
.ky-note{font-size:20px}
}
@media (prefers-reduced-motion:reduce){.ky-frame,.ky-guide,.ky-canvas video{transition:none}
}

