@import url('https://fonts.googleapis.com/css2?family=Black+Han+Sans&family=Noto+Sans+KR:wght@400;500;600;700;800;900&family=Noto+Serif+KR:wght@600;800;900&display=swap');
:root{--red:#bc1123;--red-deep:#720810;--paper:#e7d6bd;--white:#eee9df;--muted:#bca8a2;--line:#572023;--black:#0a0808;--max:1460px;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090708;color:var(--white);font-family:'Noto Sans KR','Apple SD Gothic Neo',sans-serif;overflow-x:hidden;line-height:1.65}
body:before{content:"";position:fixed;inset:0;background:linear-gradient(#090708e6,#090708e6),url('../assets/wall.jpg') center / 900px;z-index:-2;pointer-events:none}body:after{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 50% 35%,transparent 0 33%,#0008 95%);z-index:-1;pointer-events:none}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto}.shell{width:min(calc(100% - 84px),var(--max));margin-inline:auto}.skip{position:absolute;transform:translateY(-150%);z-index:300;background:var(--paper);color:#211;padding:7px 15px}.skip:focus{transform:translateY(0)}.visually-hidden{position:absolute!important;overflow:hidden!important;height:1px!important;width:1px!important;clip:rect(0 0 0 0)!important}
.site-header{position:sticky;top:0;z-index:100;background:linear-gradient(180deg,#060506f7,#0c0709f2);border-bottom:1px solid #5a131c;box-shadow:0 3px 30px #000b}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{width:300px;max-width:29vw;display:block;flex-shrink:0;line-height:0}.brand img{width:100%;mix-blend-mode:screen}.main-nav{display:flex;align-items:center;gap:0;margin-left:auto}.main-nav a{position:relative;padding:13px 20px;font-size:15px;font-weight:900;letter-spacing:-.02em;white-space:nowrap;text-shadow:0 1px 1px black}.main-nav a+a:before{content:"";position:absolute;left:0;top:18px;height:16px;width:1px;background:#6b5655}.main-nav a:hover,.main-nav a[aria-current="page"]{color:#fff}.main-nav a[aria-current="page"]:after,.main-nav a:hover:after{content:"";position:absolute;inset:6px 8px;background:#8e0c1cd4;clip-path:polygon(2% 28%,93% 0,98% 15%,95% 65%,100% 76%,8% 100%,0 74%);z-index:-1}.nav-toggle{display:none;width:48px;height:46px;align-items:center;justify-content:center;background:#200b0e;border:1px solid #7d1b25;color:#fff;font-size:27px}.header-cta{border:1px solid #9b2330;background:#770b17;color:#fff;font-size:13px;padding:11px 15px;font-weight:900;white-space:nowrap;transition:.2s}.header-cta:hover,.blood-button:hover{filter:brightness(1.35);transform:translateY(-2px)}
.hero{min-height:625px;position:relative;overflow:hidden;isolation:isolate;border-bottom:2px solid #4e1419;display:flex;align-items:center;justify-content:center;background:#0b0809}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0009 0%,#0002 27%,#0003 73%,#000c 100%),linear-gradient(0deg,#080607 0%,transparent 29%,#09060720 65%,#07060699 100%),url('../assets/corridor-cinematic.jpg') center 46% / cover no-repeat;z-index:-2;transform:scale(1.02)}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 68% 58%,#8a06101a,transparent 48%),url('../assets/blood-splatter.png') top left/480px auto no-repeat;opacity:.75;z-index:-1;pointer-events:none}.hero-main{position:relative;text-align:center;padding:65px 10px 88px;width:100%;max-width:920px}.eyebrow{font-size:12px;letter-spacing:.36em;font-weight:800;color:#d1bbb3;text-transform:uppercase}.hero-main .eyebrow{margin-bottom:12px}.hero-title-image{display:block;width:min(760px,92%);margin:auto;mix-blend-mode:screen;filter:drop-shadow(0 10px 24px #000)}.hero-subtitle-image{display:block;width:min(630px,86%);mix-blend-mode:screen;margin:0 auto 18px}.hero-line{font:800 clamp(13px,1.5vw,16px)/2 'Noto Serif KR',serif;letter-spacing:.08em;color:#d5c5bb;margin:0 0 20px;text-shadow:0 1px 10px #000}.image-cta{display:block;margin:auto;width:320px;max-width:75%;transition:.2s;line-height:0}.image-cta:hover{transform:scale(1.06);filter:brightness(1.15)}.image-cta img{mix-blend-mode:screen;width:100%}.hero-side{position:absolute;color:#c4afa2;right:4.5%;top:32%;text-align:center;font:800 25px/2.1 'Noto Serif KR',serif;transform:rotate(-8deg);opacity:.8;text-shadow:2px 2px 2px #000}.hero-side strong{color:#b74249}.hero-side:after{content:"";display:block;width:100%;height:2px;transform:rotate(-7deg);background:#ae0b1b}.hero-evidence{position:absolute;bottom:15%;left:5%;width:14%;height:155px;transform:rotate(-11deg);border:8px solid #bcad9b;box-shadow:0 8px 12px #000b;overflow:hidden;opacity:.7;filter:sepia(.3)}.hero-evidence img{width:100%;height:100%;object-fit:cover}.hero-bottom{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);color:#c9aba0;letter-spacing:.3em;font-size:10px}.hero-bottom:after{content:' ↓';color:var(--red)}
.section{padding:80px 0}.section-header{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:30px;padding-bottom:13px;border-bottom:1px solid #55252b}.section-label{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.heading-art{width:min(290px,50vw);mix-blend-mode:screen}.section-kicker{color:#baa8a2;font-size:14px}.text-link{font-size:13px;font-weight:800;color:#e8d3c7;letter-spacing:.01em;border-bottom:1px solid #a71221;padding:7px 0}.text-link span{color:var(--red)}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.theme-card{display:block;position:relative;transition:.26s;filter:drop-shadow(0 10px 14px #000a)}.theme-card img{display:block;width:100%;height:auto;object-fit:contain}.theme-card:hover{transform:translateY(-9px) rotate(-1deg);filter:drop-shadow(0 18px 12px #000) brightness(1.07)}.theme-card:focus-visible,.blood-button:focus-visible{outline:3px solid #e33443;outline-offset:3px}.theme-card .card-action{position:absolute;bottom:9%;right:9%;font-size:11px;color:#551014;font-weight:900;background:#d7c3a6;padding:2px 8px;transform:rotate(-3deg);opacity:0;transition:.2s}.theme-card:hover .card-action{opacity:1}.fine-print{color:#9d8580;font-size:11px;line-height:1.8}.fine-print strong{color:#c5a5a0}.intro-banner{margin-top:50px;padding:42px 48px;border:1px solid #4b2022;background:linear-gradient(90deg,#0b070ad9,#0b070993),url('../assets/ghostkey-hero.jpg') center/cover;display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px}.intro-banner h3{font:900 clamp(26px,3.5vw,47px)/1.45 'Noto Serif KR',serif;margin:8px 0}.intro-banner h3 em{font-style:normal;color:#db192b}.intro-banner p{color:#c9b4ae;font-size:14px;margin-bottom:0}.blood-button{display:inline-flex;gap:14px;align-items:center;justify-content:center;border:0;background:linear-gradient(100deg,#a60b1b,#720a17);clip-path:polygon(5% 3%,100% 0%,96% 92%,0 100%,2% 53%);padding:19px 30px;color:#fff!important;font-weight:900;transition:.2s;min-width:180px;text-align:center}.blood-button.ghost{background:#1a0c0e;border:1px solid #8c2931;clip-path:none}.section-dark{border-top:1px solid #3d161c;border-bottom:1px solid #3d161c;background:linear-gradient(#080609c9,#080609b9),url('../assets/wall.jpg') center/680px}.booking-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.booking-steps a,.booking-steps div{display:block}.booking-steps img{width:100%;display:block;mix-blend-mode:screen;transition:.2s}.booking-steps img:hover{transform:translateY(-5px)}.red-tape{height:13px;background:repeating-linear-gradient(105deg,#350b12 0 28px,#8f1021 28px 33px,#350b12 33px 60px);opacity:.7;transform:skewY(-.2deg)}.split-preview{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.split-preview img{box-shadow:18px 18px 0 #26090e,0 35px 50px #0009;filter:grayscale(.3) contrast(1.2);width:100%}.split-preview h2{font:900 clamp(32px,4vw,60px)/1.25 'Noto Serif KR',serif;margin:8px 0 24px}.split-preview p{font-size:15px;color:#c6b3ae;line-height:2;word-break:keep-all}.stamp{font:900 12px/1.5 monospace;letter-spacing:.2em;color:#ba192b;transform:rotate(-3deg);display:inline-block;border:2px solid #a21b29;padding:6px 11px;margin-bottom:12px}.section-footer{display:flex;justify-content:center;margin-top:32px}
.subhero{min-height:325px;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid #642027;background:#0e0809}.subhero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080608 5%,#07060875 65%,#080607b8 100%),linear-gradient(0deg,#080607 0%,transparent 80%),var(--sub-bg,url('../assets/corridor-cinematic.jpg')) center/cover no-repeat;z-index:-1;filter:contrast(1.2)}.subhero:after{content:"";position:absolute;inset:0;background:url('../assets/blood-splatter.png') right top/440px no-repeat;opacity:.55;pointer-events:none}.subhero-inner{position:relative;padding-block:65px}.breadcrumb{font:800 11px/1.5 monospace;color:#ad8a88;letter-spacing:.15em}.breadcrumb a:hover{color:white}.subhero h1{margin:6px 0 13px;font:900 clamp(40px,6.3vw,90px)/1.16 'Black Han Sans','Arial Black',sans-serif;letter-spacing:-.06em;text-shadow:4px 5px #4c080f,0 3px 12px #000;word-break:keep-all}.subhero p{color:#dfbfb6;max-width:650px;font-size:15px}.subhero .eyebrow{color:#c7464e}.page-layout{padding:65px 0 110px}.poster-box{background:linear-gradient(#200f1266,#180c0ec7),url('../assets/paper.jpg') center/cover;border:1px solid #78534c;position:relative;padding:25px;color:#2c1215;box-shadow:8px 15px 0 #110708}.poster-box:before{content:"";position:absolute;inset:8px;border:1px solid #3118193b;pointer-events:none}.poster-box h2,.poster-box h3{font-family:'Black Han Sans','Arial Black',sans-serif;line-height:1.25;letter-spacing:-.035em}.poster-box p{color:#4c3130}.paper-content{background:linear-gradient(105deg,#e5d4b8,#efe0c7 52%,#d0b598);color:#2c1616;box-shadow:0 12px 32px #0007;clip-path:polygon(0 1%,16% 0,60% .5%,100% 0,99.6% 100%,63% 99%,23% 100%,0 99.3%);padding:32px}.paper-content h2{color:#261012;font:900 clamp(23px,3vw,38px)/1.3 'Black Han Sans',sans-serif;margin:0 0 12px}.paper-content h3{color:#361515}.paper-content p,.paper-content li{color:#513d39;line-height:1.9}.theme-list{display:grid;gap:22px}.theme-feature{display:grid;grid-template-columns:minmax(220px,430px) 1fr;gap:35px;align-items:center;border:1px solid #492026;background:#10090bc7;padding:22px;transition:.2s}.theme-feature:hover{border-color:#af2330;transform:translateX(4px)}.theme-feature img{width:100%;height:245px;object-fit:cover;filter:contrast(1.15) grayscale(.12)}.feature-index{color:#bd2433;font:900 12px monospace;letter-spacing:.2em}.theme-feature h2{font:900 clamp(28px,3vw,44px)/1.25 'Black Han Sans',sans-serif;margin:9px 0 13px}.theme-feature p{font-size:14px;line-height:1.9;color:#c5b3a9;max-width:670px}.tag-row{display:flex;gap:8px;flex-wrap:wrap}.tag{color:#c1a7a1;font-size:11px;border:1px solid #64333a;padding:5px 10px}.theme-feature .text-link{display:inline-block;margin-top:18px}.theme-detail{display:grid;grid-template-columns:1.15fr .85fr;gap:38px;align-items:start}.detail-image{display:block;width:100%;height:390px;object-fit:cover;box-shadow:18px 18px 0 #190a0b}.detail-caption{color:#8f7670;font-size:11px;margin-top:24px}.detail-copy .paper-content{margin-bottom:24px}.detail-quote{font:800 clamp(20px,2.5vw,31px)/1.6 'Noto Serif KR',serif;color:#ecd6c3;margin:25px 0}.detail-quote:before{content:'“';color:#bd1424;font-size:65px;line-height:0;vertical-align:-.3em;margin-right:10px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.alert-panel{border-left:3px solid #a8101e;padding:18px 22px;background:#2a0c11;color:#ddc4bd;font-size:13px;line-height:1.9;margin-top:22px}.alert-panel strong{color:#f6e2d6}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.info-grid .paper-content{min-height:220px}.info-grid h2{font-size:27px}.info-grid a{color:#7e0714;text-decoration:underline;font-weight:900}.rule-list{padding-left:19px}.rule-list li+li{margin-top:7px}.text-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.faq{border-bottom:1px solid #4a2325;padding:15px 0}.faq summary{font-size:16px;font-weight:800;cursor:pointer}.faq p{color:#bda9a3;line-height:1.8;padding-left:12px}.location-layout{display:grid;grid-template-columns:1fr .85fr;gap:28px}.map-frame{height:350px;background:linear-gradient(140deg,#261111,#10090b 60%);border:1px solid #66262b;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.map-frame:before{content:"";position:absolute;inset:0;opacity:.21;background:repeating-linear-gradient(0deg,transparent 0 28px,#a06d67 29px 30px),repeating-linear-gradient(90deg,transparent 0 28px,#a06d67 29px 30px)}.map-frame>*{z-index:1}.map-frame .map-pin{font-size:44px;color:#d9152a}.map-frame p{font-size:12px;color:#a8a0a0;max-width:250px}.contact-line{display:grid;grid-template-columns:95px 1fr;gap:16px;margin:20px 0;padding-bottom:14px;border-bottom:1px solid #b29f8e}.contact-line dt{font-weight:900;color:#7f111a}.contact-line dd{margin:0;font-weight:700}.contact-line dd a{color:#68151b;text-decoration:underline}.booking-ui{display:grid;grid-template-columns:1fr .85fr;gap:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-row{display:flex;flex-direction:column;gap:8px}.form-row.full{grid-column:1/-1}.form-row label{font-size:13px;color:#5a2828;font-weight:900}.form-row input,.form-row select,.form-row textarea{width:100%;border:1px solid #ac8a79;color:#2c1818;background:#f2e6d4;border-radius:0;padding:12px 14px;outline:none;min-height:48px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#8b0c1b;box-shadow:0 0 0 2px #b50c1a22}.form-row textarea{min-height:140px;resize:vertical}.summary-panel{border:1px solid #6d222d;background:#11090b;padding:27px}.summary-panel h3{font:900 25px 'Black Han Sans',sans-serif;margin:0 0 20px}.summary-panel .summary-list{margin:0}.summary-panel .summary-list div{padding:12px 0;border-bottom:1px dashed #4b2327;display:flex;gap:18px;justify-content:space-between;font-size:13px}.summary-panel dt{color:#9b7977}.summary-panel dd{margin:0;text-align:right;color:#f3e0cf;font-weight:800}.summary-panel .blood-button{margin-top:23px;width:100%}.muted{font-size:12px;color:#9f8986;line-height:1.7}.copy-result{display:none;margin-top:18px;background:#2a0c11;padding:18px;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #9e2934;font-size:12px;line-height:1.9}.copy-result.show{display:block}.simple-list{margin:0;padding-left:22px}.simple-list li+li{margin-top:12px}.empty-notice{padding:55px 25px;border:1px solid #4b2326;text-align:center;background:#110b0d}.empty-notice span{color:#bf1d31;font:900 12px monospace;letter-spacing:.25em}.empty-notice h2{font:900 30px 'Black Han Sans',sans-serif;margin:12px 0}.empty-notice p{color:#b5a09b}.site-footer{border-top:2px solid #71202a;background:linear-gradient(150deg,#17090d,#070506 60%);padding:52px 0 24px}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr auto;gap:48px;align-items:start}.footer-logo{width:280px;mix-blend-mode:screen}.footer-copy{color:#ab9690;font-size:12px;line-height:2}.footer-links{display:flex;gap:15px;flex-wrap:wrap;font-size:13px;font-weight:700}.footer-links a:hover{color:#e23b47}.footer-bottom{border-top:1px solid #33181b;color:#806f69;font-size:11px;margin-top:34px;padding-top:17px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.back-top{border:1px solid #4b2629;padding:8px 12px;color:#e1b9b4;background:#180b0d;font-size:12px}
@media(max-width:1250px){.main-nav a{padding:13px 10px;font-size:13px}.brand{max-width:230px}.header-cta{display:none}.hero-side{display:none}.hero-evidence{display:none}}@media(max-width:930px){.shell{width:min(calc(100% - 38px),var(--max))}.header-inner{height:70px}.brand{width:235px;max-width:72%}.nav-toggle{display:flex}.main-nav{display:none;position:absolute;left:0;top:70px;right:0;background:#12080bdc;backdrop-filter:blur(16px);border-bottom:1px solid #80232f;flex-direction:column;align-items:stretch;padding:15px 19px 25px;box-shadow:0 20px 40px #000d}.main-nav.open{display:flex}.main-nav a{font-size:17px;padding:13px;border-bottom:1px solid #391b20}.main-nav a+a:before{display:none}.main-nav a[aria-current="page"]:after{inset:5px 2px}.hero{min-height:490px}.hero-main{padding-block:55px}.section{padding:56px 0}.theme-grid{grid-template-columns:repeat(2,1fr);max-width:800px;margin:auto}.booking-steps{grid-template-columns:repeat(2,1fr)}.split-preview{gap:29px}.intro-banner{padding:28px}.theme-detail{grid-template-columns:1fr}.detail-image{height:380px}.location-layout,.booking-ui{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.shell{width:calc(100% - 30px)}.site-header{position:sticky}.header-inner{height:67px}.main-nav{top:67px}.brand{width:226px}.hero{min-height:430px}.hero:before{background-position:center center}.hero-main{padding:50px 4px 65px}.hero-line{font-size:12px;line-height:1.8}.hero-title-image{width:100%}.hero-subtitle-image{width:100%}.hero-bottom{font-size:9px;white-space:nowrap}.section-header{align-items:start}.section-label{gap:3px}.heading-art{width:190px}.section-kicker{display:block;width:100%;font-size:11px}.text-link{font-size:11px;white-space:nowrap}.theme-grid{grid-template-columns:1fr;max-width:420px;gap:6px}.theme-card .card-action{opacity:1}.intro-banner{grid-template-columns:1fr;padding:24px}.intro-banner h3{font-size:28px}.booking-steps{grid-template-columns:1fr;max-width:370px;margin:auto;gap:3px}.split-preview{grid-template-columns:1fr;gap:35px}.split-preview h2{font-size:34px}.subhero{min-height:255px}.subhero h1{font-size:clamp(39px,10vw,57px)}.subhero-inner{padding:44px 0}.subhero p{font-size:13px}.page-layout{padding:44px 0 65px}.theme-feature{grid-template-columns:1fr;gap:12px;padding:13px}.theme-feature img{height:190px}.theme-feature h2{font-size:27px}.detail-image{height:240px}.paper-content{padding:23px}.info-grid,.text-columns,.form-grid{grid-template-columns:1fr}.form-row.full{grid-column:auto}.contact-line{grid-template-columns:70px 1fr;font-size:14px}.footer-grid{grid-template-columns:1fr;gap:15px}.footer-logo{width:230px}.footer-bottom{flex-direction:column}.map-frame{height:280px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


.theme-meta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.theme-meta span{border:1px solid #7f4d53;padding:6px 10px;font-size:12px;color:#d7bcbc;background:#1a0c10}.pricing-table-wrap{overflow:auto;border:1px solid #4a1c22;background:#0f090b;box-shadow:0 18px 40px #0008}.pricing-table{width:100%;border-collapse:collapse;min-width:980px}.pricing-table th,.pricing-table td{border:1px solid #2b1719;padding:18px 16px;vertical-align:top}.pricing-table thead th{background:#c81020;color:#fff;font-size:20px;font-weight:900}.pricing-table tbody td{background:#0c0a0b;color:#f3ebeb;font-size:16px}.pricing-table tbody tr:nth-child(even) td{background:#090809}.pricing-table .theme-name{font-weight:900;font-size:22px}.price-lines{display:grid;gap:8px}.price-lines span{display:flex;justify-content:space-between;gap:18px;color:#ded1d1}.price-lines strong{font-size:20px;color:#fff;white-space:nowrap}.rules-grid{display:grid;gap:26px}.rule-card{display:grid;grid-template-columns:140px 1fr;gap:28px;align-items:center;padding:30px;border:1px solid #452025;background:#0d090b}.rule-card h3{font:900 clamp(24px,3vw,40px)/1.25 'Black Han Sans',sans-serif;margin:0 0 15px}.rule-card p{color:#d7c7c1;line-height:1.9}.muted-light{color:#a79490;font-size:13px}.rule-icon{width:120px;height:120px;border-radius:999px;background:#333 center/55% no-repeat;margin:auto;position:relative}.rule-icon.camera{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='10' y='18' width='44' height='30' rx='4' fill='none' stroke='white' stroke-width='3'/%3E%3Ccircle cx='32' cy='33' r='9' fill='none' stroke='white' stroke-width='3'/%3E%3Cpath d='M22 18l4-6h12l4 6' fill='none' stroke='white' stroke-width='3'/%3E%3C/svg%3E")}.rule-icon.camera:after{content:'✕';position:absolute;right:10px;top:8px;color:#df111d;font:900 38px/1 sans-serif}.rule-icon.warning{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M32 8c11 0 20 9 20 20 0 8-5 16-12 20v8H24v-8C17 44 12 36 12 28 12 17 21 8 32 8z' fill='none' stroke='white' stroke-width='3'/%3E%3Cline x1='32' y1='22' x2='32' y2='36' stroke='white' stroke-width='4'/%3E%3Ccircle cx='32' cy='44' r='2.5' fill='white'/%3E%3C/svg%3E")}.booking-page-grid{display:grid;grid-template-columns:minmax(0,1.3fr) .8fr;gap:26px;align-items:start}.booking-main-card{background:#0d090b;border:1px solid #4a1d24;padding:26px}.section-header.inner{margin-bottom:26px}.calendar-booking-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:24px}.calendar-panel,.form-card{background:#130b0d;border:1px solid #402127;padding:22px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.calendar-toolbar h2{font:900 31px 'Black Han Sans',sans-serif;margin:0}.eyebrow.small{font-size:10px}.calendar-nav{width:44px;height:44px;border:1px solid #7a2531;background:#180b0e;color:#fff;font-size:28px;cursor:pointer}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-weekdays span{font-size:12px;color:#9d8784;text-align:center;padding-bottom:4px}.calendar-day{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border:1px solid #33181c;background:#0c090a;color:#e8d8d3;cursor:pointer;font-weight:800}.calendar-day.is-muted{opacity:.33;cursor:default}.calendar-day.is-today{border-color:#c81323}.calendar-day.is-selected{background:#c81323;color:#fff;border-color:#ef4151}.booking-form-full{grid-template-columns:1fr 1fr}.time-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.time-slot{border:1px solid #7b3b43;background:#1c0d11;color:#f5e8e3;padding:12px;cursor:pointer;font-weight:800}.time-slot.active{background:#c81421;border-color:#ff5f71}.booking-result{display:none;margin-top:18px;padding:18px;border:1px solid #8c1d28;background:#200b10;line-height:1.8}.booking-result.show{display:block}.booking-summary-panel{position:sticky;top:96px}.admin-shell{display:grid;gap:22px}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.admin-stat{background:#11090b;border:1px solid #58212a;padding:24px}.admin-stat span{display:block;color:#9f8885;font-size:12px;margin-bottom:8px}.admin-stat strong{font:900 clamp(34px,5vw,56px)/1 'Black Han Sans',sans-serif;color:#fff}.admin-controls{display:flex;gap:12px;flex-wrap:wrap}.admin-controls select{background:#120a0d;border:1px solid #60242c;color:#f5e7e3;padding:12px 14px;min-width:180px}.small-btn{padding:12px 16px;font-size:13px}.admin-table-wrap{overflow:auto;border:1px solid #4b1f26}.admin-table{width:100%;border-collapse:collapse;min-width:1200px}.admin-table th,.admin-table td{border-bottom:1px solid #2e171a;padding:14px 12px;text-align:left;font-size:13px;vertical-align:top;background:#0e090a}.admin-table th{background:#190b0f;color:#c5a3a0;font-size:12px}.status-pill{display:inline-flex;padding:6px 10px;border:1px solid #81464c;font-size:11px;font-weight:800}.status-pill.pending{background:#261014;color:#ffdcdc}.status-pill.complete{background:#102017;color:#d6ffe3;border-color:#35684a}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.row-actions button{border:1px solid #5e2830;background:#180b0d;color:#fff;padding:8px 10px;cursor:pointer;font-size:11px}.admin-empty{text-align:center;color:#9f8d89;padding:40px 20px}.hidden{display:none!important}
@media(max-width:930px){.booking-page-grid,.calendar-booking-layout,.admin-stats,.rules-grid{grid-template-columns:1fr}.rule-card{grid-template-columns:1fr;text-align:center}.time-slots{grid-template-columns:repeat(2,1fr)}.booking-summary-panel{position:static}}
@media(max-width:600px){.pricing-table thead th{font-size:16px}.pricing-table tbody td{font-size:14px}.pricing-table .theme-name{font-size:18px}.price-lines strong{font-size:16px}.time-slots{grid-template-columns:1fr 1fr}.calendar-day{min-height:42px}.admin-controls{flex-direction:column}.admin-controls select,.small-btn{width:100%}}

/* ---- GHOSTKEY 2026 / atmospheric revision ---- */
:root{--ink:#0b080a;--red-hot:#c71529;--paper-ink:#2e1717;--paper-edge:#c6a485}
body{font-family:'Noto Sans CJK KR','Noto Sans KR','Apple SD Gothic Neo',sans-serif;background:#080607}
h1,h2,h3,.section-type-title,.theme-feature h2,.intro-banner h3{word-break:keep-all}
.section{padding:clamp(64px,8vw,118px) 0}
.section-header{border-bottom-color:#321417;padding-bottom:22px}
.section-label{align-items:flex-start;flex-direction:column;gap:9px}
.section-type-title{font-family:'Noto Serif CJK KR','Noto Serif KR',serif;font-size:clamp(34px,3.5vw,56px);letter-spacing:-.06em;line-height:1.2;font-weight:900;color:#f5e9d9;margin:0;position:relative;display:inline-block;text-shadow:0 3px 15px #000}
.section-type-title:after{content:'';position:absolute;bottom:-11px;left:0;width:min(70%,160px);height:3px;background:linear-gradient(90deg,#c20a22,transparent);transform:rotate(-1deg)}
.section-kicker{font-size:13px;letter-spacing:.02em;color:#aa9995;margin-top:5px}
/* Use the user-supplied Da[e]jeon corridor, cropped to the visual half to avoid
   duplicating the embedded words already visible in the reference screenshot. */
.hero-redesign{min-height:730px;background:radial-gradient(circle at 81% 50%,#250205 0%,transparent 52%),#070607;justify-content:flex-start}
.hero-redesign:before{display:none}
.hero-redesign:after{background:linear-gradient(0deg,#070607 0%,transparent 22%,#03030321 75%,#060405bb 100%),radial-gradient(circle at 75% 56%,transparent 20%,#07040585 82%);opacity:1;z-index:-1}
.hero-media{position:absolute;inset:0 0 0 28%;overflow:hidden;z-index:-2;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 83%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 83%,transparent 100%)}
.hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:93% 47%;filter:contrast(1.05) saturate(.97)}
.hero-redesign .hero-main{max-width:1240px;box-sizing:border-box;width:min(92%,1240px);text-align:left;padding:105px 0 130px;margin:auto;z-index:2}
.hero-redesign .hero-title-image{margin:16px 0 10px;width:min(760px,74vw);max-width:100%;mix-blend-mode:screen;filter:drop-shadow(0 10px 24px #000)}
.hero-redesign .hero-subtitle-image{margin:0 0 16px;width:min(580px,58vw);max-width:100%;mix-blend-mode:screen}
.hero-redesign .image-cta{margin:16px 0 0;width:min(356px,62%)}
.hero-redesign .image-cta img{width:100%}
.hero-redesign .hero-line{max-width:560px}
@media(max-width:600px){.hero-redesign .hero-title-image{width:min(100%,520px)}.hero-redesign .hero-subtitle-image{width:min(100%,420px)}.hero-redesign .image-cta{width:min(260px,72%)}}

.hero-redesign .hero-main .eyebrow{color:#e94b59;letter-spacing:.32em;font-size:11px;max-width:470px}
.hero-site-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(68px,8.8vw,156px);line-height:.95;font-weight:700;letter-spacing:-.055em;color:#f8e5da;margin:15px 0 20px;text-shadow:0 3px 2px #5b0714,0 20px 40px #000}
.hero-site-subtitle{font:900 clamp(23px,2.6vw,42px)/1.44 'Noto Serif CJK KR','Noto Serif KR',serif;color:#f4e1d7;letter-spacing:-.075em;text-shadow:0 8px 20px #000}
.hero-redesign .hero-line{max-width:560px;font-size:14px;color:#c5b3af;margin-top:14px}
.hero-primary-action{margin-top:30px;min-width:220px;box-shadow:0 17px 45px #000c}
/* Seamless hero-like picture panels: no visible photograph/paragraph seam */
.blend-feature{position:relative;min-height:505px;display:flex;align-items:center;isolation:isolate;overflow:hidden;padding:32px 28px;gap:0;box-sizing:border-box}
.blend-feature>img{position:absolute;inset:0 auto 0 0;width:70%;height:100%;object-fit:cover;object-position:center;z-index:-1;box-shadow:none;filter:contrast(1.08) brightness(.84) saturate(.93);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 55%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 55%,transparent 100%)}
.blend-feature>div{z-index:1;position:relative;flex:0 0 46%;box-sizing:border-box}
.blend-feature.visual-left{justify-content:flex-end;background:linear-gradient(90deg,transparent 6%,#080607 85%)}
.blend-feature.visual-left>div{padding:22px 0 22px 5%}
.blend-feature.visual-right{justify-content:flex-start;background:linear-gradient(90deg,#080607 20%,transparent 95%)}
.blend-feature.visual-right>div{padding:22px 5% 22px 0}
.blend-feature.visual-right>img{left:auto;right:0;width:72%;object-position:90% center;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 46%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 46%,#000 100%)}
.blend-feature h2{color:#f7e9d8;text-shadow:0 10px 25px #000;letter-spacing:-.065em}
.blend-feature p{color:#cabdb4;font-size:14px}
.blend-feature .stamp{font-size:12px}
/* Fog banner / sixth supplied shot */
.fog-banner{position:relative;isolation:isolate;min-height:380px;overflow:hidden;padding:60px clamp(26px,5vw,72px);border:0;background:linear-gradient(90deg,#0b0609 0%,#0b0609ef 35%,#0b0609a9 58%,#0b06091c 98%),url('../assets/uploaded-fog.png') center right / cover no-repeat;box-shadow:inset 0 -48px 60px #090607, inset 0 42px 56px #090607;margin-top:74px}
.fog-banner:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 38%,#09060770 100%);z-index:-1;pointer-events:none}
.fog-banner>div{max-width:730px}
.fog-banner h3{font-family:'Noto Serif CJK KR','Noto Serif KR',serif;font-weight:900;font-size:clamp(32px,3.6vw,58px);line-height:1.35;text-shadow:0 6px 25px #000}
.fog-banner .blood-button{box-shadow:0 15px 35px #000a}
/* Uncropped archival cards: display all rips, pin, corners and paper edges */
.theme-grid{align-items:stretch;gap:clamp(12px,1.7vw,30px);overflow:visible;padding:12px 3px 20px}
.theme-card.uncropped-paper-card{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;aspect-ratio:1.30;overflow:visible;filter:drop-shadow(0 18px 14px #000c)}
.theme-card.uncropped-paper-card img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;max-width:100%;max-height:100%;image-rendering:auto;clip-path:none!important}
.theme-card.uncropped-paper-card:hover{filter:drop-shadow(0 25px 18px #000) brightness(1.08)}
.theme-card .card-action{bottom:-6px;right:8%;transform:rotate(-2deg);z-index:2}
/* The same uncropped treatment extends to full-size theme visuals */
.theme-feature{position:relative;isolation:isolate;border:0;border-bottom:1px solid #35171b;background:linear-gradient(90deg,#080607a3 0%,#090607 70%);gap:25px;padding:30px 16px;overflow:hidden}
.theme-feature:hover{transform:translateX(2px);border-color:#8d2530}
.theme-feature>a{display:block;overflow:hidden;position:relative}
.theme-feature img{height:auto;width:100%;aspect-ratio:16/9;object-fit:contain;display:block;-webkit-mask-image:linear-gradient(90deg,#000 78%,transparent 100%);mask-image:linear-gradient(90deg,#000 78%,transparent 100%);filter:brightness(.87) contrast(1.12)}
.theme-feature h2{font-family:'Noto Serif CJK KR','Noto Serif KR',serif;font-weight:900}
.blended-theme-detail{grid-template-columns:1.22fr .88fr;gap:0;overflow:hidden;isolation:isolate;position:relative}
.blended-theme-detail>div:first-child{position:relative;z-index:0;margin-right:-5%;align-self:stretch}
.blended-theme-detail>div:first-child .detail-image{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;box-shadow:none;filter:contrast(1.09) brightness(.89);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 79%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 79%,transparent 100%)}
.blended-theme-detail .detail-copy{position:relative;z-index:1;margin-left:-7%}
.blended-theme-detail .detail-quote{font-size:clamp(19px,2vw,29px);padding-right:25px}
/* Torn & creased memo sheets (every former beige memo element) */
.paper-content,.poster-box{position:relative;isolation:isolate;background:linear-gradient(135deg,#fff4d552 0%,transparent 18%,#72503714 31%,transparent 33%,#fef0c35c 50%,#65513b28 59%,transparent 61%,#d4ad8055 100%),linear-gradient(27deg,#85603a26,transparent 28%,#fff8e56b 48%,transparent 67%,#4a2b1721),url('../assets/paper.jpg') center center / cover;color:var(--paper-ink);clip-path:polygon(0 1%,4% .4%,7% 1.2%,12% .2%,17% .9%,24% .2%,31% 1.3%,39% 0%,47% 1.1%,55% .1%,63% 1%,70% .1%,80% .9%,89% .1%,95% .9%,100% .2%,99.2% 9%,100% 18%,99.4% 27%,100% 35%,99.3% 48%,100% 60%,99.2% 73%,99.8% 86%,99% 93%,100% 99.1%,95% 98.6%,91% 99.9%,84% 99.2%,76% 99.8%,66% 98.8%,59% 100%,50% 99%,44% 99.9%,35% 99%,28% 99.8%,19% 99%,10% 100%,3% 99%,.7% 99.8%,.9% 88%,0 78%,.6% 62%,.1% 48%,.8% 31%,0 14%);box-shadow:none;padding:clamp(26px,3vw,46px);border:0;filter:drop-shadow(0 15px 18px #0007)}
.paper-content:before,.poster-box:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(128deg,transparent 11%,#7860441c 12%,#fff8e039 13%,transparent 14%),linear-gradient(38deg,transparent 40%,#5d3b3523 40.5%,#ffefdb62 42%,transparent 44%),linear-gradient(162deg,transparent 65%,#4b312c20 66%,#fff6db39 66.5%,transparent 69%),radial-gradient(ellipse at 96% 2%,#79503c40,transparent 21%),radial-gradient(ellipse at 2% 98%,#73513b45,transparent 15%);mix-blend-mode:multiply;opacity:.92}
.paper-content:after{content:'';position:absolute;right:15px;top:8px;width:50px;height:14px;background:#f6e7ca88;transform:rotate(19deg);box-shadow:1px 2px 5px #3b21173c;pointer-events:none;border-left:1px solid #64432a45}
.paper-content h2,.paper-content h3{font-family:'Noto Serif CJK KR','Noto Serif KR',serif;font-weight:900;line-height:1.35;letter-spacing:-.06em;color:#271712}
.paper-content h2{font-size:clamp(25px,2.6vw,41px)}
.paper-content p,.paper-content li{color:#46342b}
.paper-content .eyebrow{font-size:11px}
.paper-seal{display:block;transform:rotate(-2deg);width:max-content;max-width:100%;margin-bottom:18px;color:#892329;border:1.5px solid #a43b3b;padding:5px 8px;font:800 11px monospace;letter-spacing:.24em}
.info-grid{gap:28px}
.info-grid .paper-content:nth-child(2){transform:rotate(1.15deg)}
.info-grid .paper-content:nth-child(3){transform:rotate(-.8deg)}
.info-grid .paper-content:nth-child(4){transform:rotate(1.4deg)}
.info-grid .paper-content{padding:33px}
.form-row input,.form-row select,.form-row textarea{border-radius:0}
/* Book, admin and location pages inherit ink + paper, do not pretend this is server-synced */
.booking-main-card,.summary-panel,.calendar-panel,.form-card{border-color:#3f2025}
.form-card{background:#120a0d}
.site-footer{border-top-color:#482029}
.site-footer .footer-logo{mix-blend-mode:screen}
.subhero-themed:before{background:linear-gradient(90deg,#080607 0%,#090607a6 47%,#09060742 100%),linear-gradient(0deg,#080607 0%,transparent 70%),var(--sub-bg) center / cover no-repeat}
.subhero-corridor:before{background:linear-gradient(90deg,#090607 0%,#0806079e 55%,#09060714 100%),var(--sub-bg) 90% center/cover no-repeat}
/* Keep photograph and copy blended at common breakpoints */
@media(max-width:1100px){.hero-redesign{min-height:650px}.hero-site-title{font-size:clamp(62px,9vw,110px)}.blend-feature{min-height:420px}.blend-feature>div{flex-basis:50%}.blend-feature>img{width:73%}}
@media(max-width:930px){.hero-redesign{min-height:560px}.hero-media{left:20%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 50%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 50%,#000 100%)}.hero-redesign .hero-main{padding:80px 0 105px}.blend-feature{min-height:420px;display:flex}.blend-feature>div{flex:0 0 63%}.blend-feature>img{width:85%}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:850px}.blended-theme-detail{grid-template-columns:1fr;gap:12px}.blended-theme-detail>div:first-child{margin-right:0}.blended-theme-detail .detail-copy{margin-left:0}.blended-theme-detail>div:first-child .detail-image{mask-image:none;-webkit-mask-image:none}}
@media(max-width:600px){.hero-redesign{min-height:560px}.hero-media{inset:0 0 0 0;opacity:.85;-webkit-mask-image:linear-gradient(0deg,#050405 0%,#000 62%);mask-image:linear-gradient(0deg,#050405 0%,#000 62%)}.hero-media img{object-position:69% center}.hero-redesign:after{background:linear-gradient(90deg,#060506ed 0%,#060506c2 55%,#06050667 100%),linear-gradient(0deg,#070607 0%,transparent 44%)}.hero-redesign .hero-main{width:calc(100% - 36px);padding:75px 0 110px}.hero-site-title{font-size:clamp(48px,13vw,76px);margin-bottom:14px}.hero-site-subtitle{font-size:clamp(22px,5.7vw,32px)}.hero-primary-action{margin-top:20px}.section-type-title{font-size:34px}.blend-feature{min-height:570px;display:flex;align-items:flex-end;justify-content:flex-start!important;padding:35px 10px;background:#080607!important}.blend-feature>img{position:absolute;left:0!important;right:0!important;top:0;width:100%!important;height:62%;object-fit:cover;object-position:80% 50%;-webkit-mask-image:linear-gradient(0deg,transparent 0%,#000 36%,#000 100%);mask-image:linear-gradient(0deg,transparent 0%,#000 36%,#000 100%)}.blend-feature.visual-left>div,.blend-feature.visual-right>div{padding:0 10px;flex:0 0 100%;text-align:left}.blend-feature h2{font-size:38px;margin-bottom:12px}.blend-feature p{font-size:13px;line-height:1.8}.fog-banner{min-height:460px;padding:42px 22px;background:linear-gradient(180deg,#070506f2 0%,#070506d9 41%,#08060736 100%),url('../assets/uploaded-fog.png') 66% center/cover no-repeat;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.fog-banner>div{max-width:none}.fog-banner h3{font-size:clamp(28px,7.1vw,43px)}.theme-grid{grid-template-columns:1fr!important;max-width:440px;gap:12px}.theme-card.uncropped-paper-card{aspect-ratio:1.28}.theme-feature img{-webkit-mask-image:none;mask-image:none}.paper-content{padding:26px}.paper-content h2{font-size:26px}}

/* ========== GHOSTKEY / MATCHING TORN EVIDENCE PAPER / 2026-11-02 ========== */
:root{--memo-black:#2b1411;--memo-red:#851018;--memo-faded:#594235}
.new-case-card{aspect-ratio:4/3!important;overflow:visible}
.new-case-card img{width:100%;height:100%;object-fit:contain;border:0;filter:drop-shadow(0 15px 14px #000c)}
.booking-guide-section{padding-top:24px}
.paper-heading{margin:0;max-width:max-content;position:relative;background:linear-gradient(152deg,#ede0c3 0%,#b8886740 33%,transparent 36%),url('../assets/paper.jpg') center/cover;color:#5b0d10;font:900 clamp(25px,3vw,43px)/1.2 'Noto Serif KR',serif;letter-spacing:-.065em;padding:14px 38px 15px;clip-path:polygon(2% 4%,11% 0,24% 3%,42% .5%,57% 4%,78% 0,99% 5%,98% 36%,100% 67%,98% 97%,76% 98%,59% 94%,45% 100%,26% 97%,9% 100%,0 93%,1% 65%,0 33%);filter:drop-shadow(0 12px 14px #0008)}
.booking-steps-paper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(13px,1.4vw,28px);margin:30px 0 16px}
.memo-sheet{position:relative;isolation:isolate;color:#281610;background:linear-gradient(110deg,#fff7e555,#7b543b12 31%,#fff0cf44 42%,#76503424 59%,transparent 62%),linear-gradient(163deg,transparent 25%,#5031221b 26%,#fffbd82d 27%,transparent 34%),url('../assets/paper.jpg') center center/cover;border:0!important;clip-path:polygon(0 1.2%,4% .3%,9% 1%,15% .1%,24% 1%,32% .1%,43% 1.1%,52% .2%,59% 1.1%,69% .3%,77% 1.2%,85% .2%,94% 1.2%,99.5% .1%,99.4% 10%,100% 23%,99.4% 39%,100% 50%,99.5% 65%,100% 77%,99.4% 89%,100% 99%,93% 98.6%,86% 100%,77% 99%,69% 99.8%,61% 99%,51% 100%,42% 98.9%,35% 99.8%,25% 99.1%,17% 100%,9% 98.8%,.4% 99.6%,.9% 87%,0 72%,.5% 59%,0 43%,.5% 28%);box-shadow:0 24px 35px #0008;filter:drop-shadow(0 13px 16px #0009)}
.memo-sheet::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(136deg,#3b22191f 0,transparent 7%,#fff8e75d 8%,transparent 10%),linear-gradient(34deg,transparent 31%,#41251c1d 33%,#fff7e65e 35%,transparent 38%),linear-gradient(151deg,transparent 58%,#6a473e24 59%,#fffaf244 61%,transparent 64%),radial-gradient(ellipse at 1% 80%,#5b342638,transparent 22%),radial-gradient(ellipse at 98% 9%,#80532d4d,transparent 21%);mix-blend-mode:multiply;opacity:.85}
.memo-sheet::after{content:'';position:absolute;top:10px;right:25px;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 32% 26%,#ff9a79 0,#d12625 23%,#8e020e 65%,#4a0002 100%);box-shadow:2px 6px 3px #1f0a0660;pointer-events:none;z-index:4}
.booking-step-paper{padding:37px 20px 30px;min-height:220px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto auto;align-items:center;column-gap:12px;transition:transform .2s,filter .2s;text-align:center}
.booking-step-paper:hover{transform:translateY(-7px) rotate(-.5deg);filter:drop-shadow(0 22px 18px #000b) brightness(1.03)}
.booking-step-paper .step-no{grid-row:1/4;justify-self:start;font:900 clamp(38px,4.4vw,75px)/1 Georgia,serif;color:#7e0910;text-shadow:1px 2px 1px #7a2b1e52;letter-spacing:-.09em;align-self:center;transform:rotate(-5deg)}
.booking-step-paper .step-icon{grid-column:2;grid-row:1;display:block;font:700 29px/1.2 'Noto Sans KR',sans-serif;color:#5b2424}
.booking-step-paper .step-title{grid-column:2;grid-row:2;font:900 clamp(15px,1.4vw,22px)/1.3 'Noto Serif KR',serif;letter-spacing:-.06em;color:#2b1110;white-space:normal;word-break:keep-all}
.booking-step-paper small{grid-column:2;grid-row:3;color:#745744;font-size:11px;margin-top:9px}
.booking-guide-caption{color:#b8a69f;font-size:12px;line-height:1.8;margin:24px 0 0;padding:10px 0 0;border-top:1px solid #5a2528}
.feature-intro-note{padding:clamp(28px,3vw,48px)!important;margin:16px 0;box-shadow:none}
.feature-intro-note h2,.feature-intro-note p{color:#2f1b17!important;text-shadow:none!important}
.feature-intro-note .stamp{color:#8b1721}
.feature-intro-note p{font-size:14px}
.info-grid .memo-sheet,.location-note{filter:drop-shadow(0 14px 15px #0009)}
.info-grid .memo-sheet::after,.location-note::after{top:10px;right:28px}
.location-note .contact-line{border-color:#b19480}
.location-note .contact-line dt{color:#6b342e}
.location-note .contact-line dd,.location-note .contact-line a{color:#2f1816}
.location-note .stamp{color:#821423}
.calendar-note{padding:35px 23px 31px;background:linear-gradient(143deg,#faf4e780,#714c3020 37%,#f7e9c73d 50%,#5b352c19 75%),url('../assets/paper.jpg') center/cover!important}
.calendar-note .calendar-toolbar h2{color:#3d1718;font:900 27px/1.35 'Noto Serif KR',serif}
.calendar-note .calendar-toolbar .eyebrow{color:#8c1a23}
.calendar-note .calendar-nav{background:#eee1c9;color:#6e131a;border:1px solid #9d7968;transition:.18s}
.calendar-note .calendar-nav:hover{background:#7d121c;color:#fff}
.calendar-note .calendar-weekdays span{color:#6b5147;font-weight:900}
.calendar-note .calendar-weekdays span:first-child{color:#a71529}
.calendar-note .calendar-day{background:#f4e6cecf;color:#2d1816;border:1px solid #c7aa90;min-height:35px;border-radius:1px;aspect-ratio:1/1;transition:.15s}
.calendar-note .calendar-day:hover:not(:disabled){background:#e2c9a1;color:#371014;transform:translateY(-2px)}
.calendar-note .calendar-day.is-today{border:2px solid #aa1b28;color:#97111b;font-weight:900}
.calendar-note .calendar-day.is-selected{background:#8e0c17;color:white;border-color:#68030c;box-shadow:0 3px 8px #6d070744}
.calendar-note .calendar-day.is-selected:hover{color:white;background:#a40d19}
.calendar-note .calendar-day:disabled,.calendar-note .calendar-day.is-muted{opacity:.32;cursor:not-allowed;transform:none}
.booking-form-paper{padding:36px 25px 30px;background:linear-gradient(145deg,#fff3d84d,#6a483019 40%,#fff6e933),url('../assets/paper.jpg') center/cover!important}
.booking-form-paper label{color:#52211c!important}
.booking-form-paper input,.booking-form-paper select{background:#f9f0e1;border:1px solid #9b7767;color:#2b1918;min-height:47px;width:100%}
.booking-form-paper input[readonly]{background:#e5d0ac}
.booking-form-paper input::placeholder{color:#957c70}
.booking-form-paper .blood-button{width:100%;padding:16px 15px}
.time-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.time-presets,.time-custom{min-width:0;display:flex;flex-direction:column;gap:8px}
.booking-form-paper .time-hint{grid-column:1/-1;margin:0;color:#76584e;font-size:11px;line-height:1.55}
.booking-form-paper .pricing-hint{margin:0 0 6px;font-size:11px;color:#755248;line-height:1.6}
.summary-price-row{padding-top:20px!important;margin-top:9px;border-top:1px solid #71323a!important}
.summary-price-row dd{font:900 20px/1.3 'Noto Sans KR',sans-serif;color:#ffd5a6}
.admin-time-settings{padding:32px 40px;margin-bottom:10px}
.admin-time-settings h2{margin:3px 0 5px;color:#321410;font:900 clamp(22px,2.4vw,36px)/1.3 'Noto Serif KR',serif}
.admin-time-settings p{color:#6b4d42;margin:0 0 12px;font-size:13px}
.admin-setting-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin:22px 0 13px}
.admin-setting-controls label{font-size:13px;font-weight:800;color:#52211b;display:flex;flex-direction:column;gap:6px}
.admin-setting-controls input,.admin-setting-controls select{width:100%;height:46px;padding:8px 12px;background:#fff0d9;border:1px solid #b59072;color:#2e1813}
.admin-setting-controls .blood-button{min-width:130px;height:46px;padding:9px 15px}
.admin-time-settings .settings-status{font-size:12px;margin:12px 0 0;color:#685048}
@media(max-width:1050px){.booking-steps-paper{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-setting-controls{grid-template-columns:1fr 1fr}.booking-step-paper{min-height:180px}.booking-step-paper .step-no{font-size:62px}}
@media(max-width:650px){.booking-guide-section{padding-top:25px}.booking-steps-paper{grid-template-columns:1fr 1fr;gap:9px}.booking-step-paper{padding:33px 10px 19px;column-gap:7px;min-height:157px}.booking-step-paper .step-no{font-size:40px}.booking-step-paper .step-icon{font-size:21px}.booking-step-paper .step-title{font-size:14px}.booking-step-paper small{font-size:10px}.paper-heading{font-size:27px;padding:12px 27px}.calendar-note{padding:31px 13px 21px}.calendar-note .calendar-day{min-height:32px;font-size:12px}.calendar-weekdays,.calendar-grid{gap:5px}.booking-form-paper{padding:34px 16px 22px}.time-controls{grid-template-columns:1fr;gap:8px}.admin-setting-controls{grid-template-columns:1fr}.admin-time-settings{padding:34px 23px}.feature-intro-note{margin:0}.summary-price-row dd{font-size:17px}}
/* The exact generated reservation-method artwork appears at desktop sizes;
   individually editable paper tickets take over on mobile. */
.booking-method-art{display:block;width:100%;height:auto;object-fit:contain;margin:0 auto;filter:drop-shadow(0 12px 18px #0009)}
@media(min-width:901px){.booking-guide-section{padding:16px 0 35px}.booking-guide-section>.section-header,.booking-guide-section>.booking-steps-paper,.booking-guide-section>.booking-guide-caption{display:none!important}}
@media(max-width:900px){.booking-method-art{display:none!important}}
.calendar-note{align-self:start}


/* ========== GHOSTKEY / ALL MEMO SHEETS UNIFIED / 2026-11-02 2 ========== */
.booking-main-card.memo-sheet.booking-board{padding:28px 24px 30px;background:linear-gradient(145deg,#fbf1de59,#7a54371a 39%,#fff5df45 63%),url('../assets/paper.jpg') center/cover!important;color:#2e1a16;border:0!important}
.booking-board .section-header.inner{margin-bottom:24px;padding-bottom:14px;border-bottom:1px solid #b79a88}
.booking-board .section-type-title{color:#28130f;font:900 clamp(32px,4vw,54px)/1.1 'Noto Serif KR',serif;letter-spacing:-.06em;text-shadow:none}
.booking-board .section-kicker{color:#6f5149}
.booking-summary-panel.memo-sheet{padding:30px 24px;background:linear-gradient(145deg,#fcf1dd6e,#6b4d3518 39%,#fff6e744 63%),url('../assets/paper.jpg') center/cover!important;top:96px}
.booking-summary-panel.memo-sheet .eyebrow{color:#8f1822!important}
.booking-summary-panel.memo-sheet h3{color:#2a1410;font:900 clamp(24px,2.7vw,38px)/1.2 'Noto Serif KR',serif;margin:6px 0 18px}
.booking-summary-panel.memo-sheet .summary-list div{border-bottom:1px dashed #b79a88;color:#523c35}
.booking-summary-panel.memo-sheet dt{color:#7d2f34;font-weight:900}
.booking-summary-panel.memo-sheet dd{color:#24120f}
.booking-summary-panel.memo-sheet .summary-price-row{border-top:1px solid #bb9e8a!important;border-bottom:1px dashed #b79a88!important}
.booking-summary-panel.memo-sheet .summary-price-row dd{color:#8a1019}
.booking-summary-panel.memo-sheet .muted{color:#68514a}
.map-frame.memo-sheet.map-note{height:350px;padding:34px 24px;background:linear-gradient(145deg,#fbf1dd68,#7c543917 37%,#fff7e83c 61%),url('../assets/paper.jpg') center/cover!important;border:0!important;overflow:hidden}
.map-frame.memo-sheet.map-note:before{content:"";position:absolute;inset:0;opacity:.35;background:repeating-linear-gradient(0deg,transparent 0 29px,#a46f6a 29px 30px),repeating-linear-gradient(90deg,transparent 0 29px,#a46f6a 29px 30px)}
.map-frame.memo-sheet.map-note h2{color:#2a1310;font:900 clamp(28px,3.2vw,42px)/1.15 'Noto Serif KR',serif;letter-spacing:-.05em;margin:0 0 12px}
.map-frame.memo-sheet.map-note p{color:#503a35;max-width:290px;font-size:13px;line-height:1.8}
.map-frame.memo-sheet.map-note .map-pin{color:#bc1123;text-shadow:0 0 0 transparent}
.map-frame.memo-sheet.map-note .text-link{color:#6d101a;font-weight:900;border-bottom-color:#8f1d27}
.pricing-panel{padding:24px 22px 30px;background:linear-gradient(145deg,#fbf1de50,#7a543711 39%,#fff5df28 63%),url('../assets/paper.jpg') center/cover!important}
.pricing-panel .section-header{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #b79a88}
.pricing-panel .section-kicker{color:#684f48}
.pricing-panel .pricing-table-wrap{border:1px solid #78534a;box-shadow:0 20px 35px #0008}
.pricing-panel .pricing-table thead th{background:#a41221}
.pricing-panel .pricing-table tbody td{background:#191113}
.pricing-panel .pricing-table tbody tr:nth-child(even) td{background:#120d0e}
@media(max-width:930px){.booking-main-card.memo-sheet.booking-board{padding:22px 18px 22px}.booking-summary-panel.memo-sheet{position:static;margin-top:20px}.map-frame.memo-sheet.map-note{height:auto;min-height:280px;padding:28px 20px}.pricing-panel{padding:18px 14px 24px}}

/* ===== THE REAL EVIDENCE-PARCHMENT DESIGN: every memo card (2026-11-02) ===== */
:is(.memo-sheet,.paper-content,.poster-box){
  --case-paper:url('../assets/memo-grunge-landscape.png');
  position:relative!important;isolation:isolate!important;
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;clip-path:none!important;filter:none!important;
  overflow:visible!important;color:#291713!important;
  padding:clamp(37px,3.5vw,57px)!important;
}
:is(.memo-sheet,.paper-content,.poster-box)::before,
.map-frame.memo-sheet.map-note::before,
.booking-main-card.memo-sheet.booking-board::before{
  content:''!important;display:block!important;position:absolute!important;inset:-9px!important;
  background-image:var(--case-paper)!important;background-position:center!important;
  background-repeat:no-repeat!important;background-size:100% 100%!important;
  border:0!important;clip-path:none!important;opacity:1!important;
  filter:drop-shadow(0 14px 13px rgba(0,0,0,.78))!important;
  mix-blend-mode:normal!important;transform:none!important;
  z-index:-1!important;pointer-events:none!important;
}
:is(.memo-sheet,.paper-content,.poster-box)::after{display:none!important;content:none!important}
:is(.memo-sheet,.paper-content,.poster-box) h2,
:is(.memo-sheet,.paper-content,.poster-box) h3{color:#261513!important;font-family:'Noto Serif KR','Noto Serif CJK KR',Georgia,serif!important;letter-spacing:-.06em!important;text-shadow:none!important;font-weight:900!important}
:is(.memo-sheet,.paper-content,.poster-box) p,
:is(.memo-sheet,.paper-content,.poster-box) li{color:#3f2b25!important;text-shadow:none!important}
:is(.memo-sheet,.paper-content,.poster-box) :is(.stamp,.paper-seal,.eyebrow){
 color:#f3debd!important;font-family:monospace!important;font-size:11px!important;
 background:#231417!important;border:0!important;
 padding:7px 13px!important;letter-spacing:.15em!important;
 transform:rotate(-1.5deg);box-shadow:2px 4px 0 #522e251f;
 clip-path:polygon(0 16%,9% 0,19% 6%,32% 0,61% 4%,83% 0,100% 14%,98% 89%,87% 99%,62% 95%,27% 100%,0 89%)
}
:is(.memo-sheet,.paper-content,.poster-box) :is(.stamp,.paper-seal,.eyebrow) + h2{margin-top:17px!important}
:is(.memo-sheet,.paper-content,.poster-box) .blood-button{background:linear-gradient(120deg,#b41024,#7d0916)!important;color:#fff!important;box-shadow:4px 6px 0 #3c151024!important}
:is(.memo-sheet,.paper-content,.poster-box) .text-link{color:#77121c!important;border-bottom:2px solid #a31824!important}
:is(.memo-sheet,.paper-content,.poster-box) .muted{color:#5e453b!important}

/* Intro story, chapter notes, and all four detailed theme reports */
.feature-intro-note{--case-paper:url('../assets/memo-grunge-landscape.png');padding:clamp(45px,4.4vw,72px)!important}
.info-grid .paper-content{--case-paper:url('../assets/memo-grunge-wide.png');min-height:220px;padding:39px 40px!important;transform:none!important}
.info-grid .paper-content:nth-child(even){transform:rotate(.35deg)!important}
.detail-copy .paper-content{--case-paper:url('../assets/memo-grunge-landscape.png');padding:clamp(32px,3.2vw,52px)!important;margin-bottom:25px!important}
.detail-copy .paper-content h2{font-size:clamp(29px,3vw,46px)}
.detail-copy .paper-content .theme-meta{margin:20px 0 24px}
.detail-copy .paper-content .theme-meta span{background:#231416;color:#f8e4d5;border:1px solid #70402f}
.detail-copy .paper-content p{font-size:14px;line-height:2}

/* Two location records, including the former square grid map block */
.location-note{--case-paper:url('../assets/memo-grunge-portrait.png');padding:47px 50px!important}
.location-note .contact-line{border-bottom:1px solid #98745d!important}
.location-note .contact-line dt{color:#74212a!important}
.location-note .contact-line dd,.location-note .contact-line a{color:#321e16!important}
.map-frame.memo-sheet.map-note{--case-paper:url('../assets/memo-grunge-landscape.png');padding:42px 35px!important;min-height:340px;height:auto!important;background:none!important;border:0!important}
.map-frame.memo-sheet.map-note::before{background-image:var(--case-paper)!important;background-size:100% 100%!important;opacity:1!important}
.map-frame.memo-sheet.map-note h2{color:#291715!important;font-size:clamp(24px,2.6vw,35px)!important}
.map-frame.memo-sheet.map-note p{color:#53362d!important;font-size:13px!important}
.map-frame.memo-sheet.map-note .map-pin{font-size:36px;color:#931322!important}

/* Booking is three separate handwritten evidence sheets, not one beige rectangle */
.booking-main-card.memo-sheet.booking-board{
  position:relative!important;background:linear-gradient(135deg,#12090cf8,#090607) !important;
  padding:27px 24px 33px!important;border:1px solid #4c2026!important;overflow:visible!important;
}
.booking-main-card.memo-sheet.booking-board::before{display:none!important;content:none!important}
.booking-main-card.memo-sheet.booking-board>.section-header{border-bottom-color:#51272a!important}
.booking-main-card.memo-sheet.booking-board .section-type-title{color:#f0e3d6!important;font-size:clamp(28px,3vw,45px)}
.booking-main-card.memo-sheet.booking-board .section-kicker{color:#bca6a0!important}
.calendar-panel.memo-sheet.calendar-note{--case-paper:url('../assets/memo-grunge-portrait.png');padding:42px 25px 40px!important;background:none!important}
.calendar-panel.memo-sheet.calendar-note .calendar-toolbar{gap:9px}
.calendar-panel.memo-sheet.calendar-note .calendar-toolbar h2{color:#2e1b15!important}
.calendar-panel.memo-sheet.calendar-note .calendar-nav{background:#eee0c5!important;border:1px solid #9f7865!important;color:#6d1320!important}
.calendar-panel.memo-sheet.calendar-note .calendar-day{background:#ead5b7d9!important;color:#271613!important;border:1px solid #b68d6c!important}
.calendar-panel.memo-sheet.calendar-note .calendar-day.is-selected{background:#961421!important;color:#fff!important;border-color:#6c0914!important}
.calendar-panel.memo-sheet.calendar-note .calendar-day.is-muted{opacity:.35}
.form-card.memo-sheet.booking-form-paper{--case-paper:url('../assets/memo-grunge-long.png');padding:46px 28px 46px!important;background:none!important}
.form-card.memo-sheet.booking-form-paper label{color:#5b201c!important}
.form-card.memo-sheet.booking-form-paper :is(input,select){background:#f2dfc6e9!important;color:#291c14!important;border:1px solid #a67b64!important;box-shadow:inset 0 2px 3px #7c543520}
.form-card.memo-sheet.booking-form-paper input::placeholder{color:#8d6f5e!important}
.form-card.memo-sheet.booking-form-paper .time-hint,
.form-card.memo-sheet.booking-form-paper .pricing-hint{color:#664b40!important}
.booking-summary-panel.memo-sheet{--case-paper:url('../assets/memo-grunge-portrait.png');padding:44px 39px 43px!important;background:none!important}
.booking-summary-panel.memo-sheet h3{font-size:clamp(25px,2.4vw,34px)!important}
.booking-summary-panel.memo-sheet .summary-list div{border-bottom:1px dashed #a98169!important}
.booking-summary-panel.memo-sheet .summary-list dt{color:#7a1721!important}
.booking-summary-panel.memo-sheet .summary-list dd{color:#2b1a15!important}
.booking-summary-panel.memo-sheet .summary-price-row dd{color:#8f0c17!important;font-size:24px!important}
.booking-summary-panel.memo-sheet .eyebrow{display:inline-block}
.booking-summary-panel.memo-sheet .muted{color:#66483e!important}
.pricing-panel.memo-sheet{--case-paper:url('../assets/memo-grunge-landscape.png');padding:45px 37px!important;background:none!important}
.pricing-panel.memo-sheet .section-header{border-bottom:1px solid #b69578!important}
.pricing-panel.memo-sheet .section-kicker{color:#5c3930!important}
.pricing-panel.memo-sheet .paper-heading{color:#eee0cd!important;background:#211417!important;clip-path:polygon(1% 15%,21% 1%,41% 8%,62% 0,82% 8%,100% 0,99% 94%,81% 100%,57% 96%,30% 100%,0 90%)!important;padding:8px 22px!important;font-size:32px}

/* Main reservation steps and dashboard's time settings are also torn paper */
.booking-step-paper.memo-sheet{--case-paper:url('../assets/memo-grunge-wide.png');padding:31px 17px!important;min-height:193px!important}
.booking-step-paper.memo-sheet .step-title{color:#251711!important}
.booking-step-paper.memo-sheet .step-icon{color:#6c121c!important}
.booking-step-paper.memo-sheet small{color:#614439!important}
.admin-time-settings.memo-sheet{--case-paper:url('../assets/memo-grunge-wide.png');padding:45px 43px!important}
.admin-time-settings.memo-sheet h2{color:#2d1c16!important}
.admin-time-settings.memo-sheet label{color:#4b2c23!important}
.admin-time-settings.memo-sheet p{color:#5f4036!important}

/* responsive: preserve legibility and torn edges at every size */
@media(max-width:1050px){
  .calendar-panel.memo-sheet.calendar-note{padding:41px 20px 33px!important}
  .form-card.memo-sheet.booking-form-paper{padding:41px 23px!important}
  .booking-summary-panel.memo-sheet{padding:42px 30px!important}
}
@media(max-width:650px){
  .feature-intro-note,.location-note{padding:38px 31px!important}
  .info-grid .paper-content{padding:33px 29px!important}
  .booking-main-card.memo-sheet.booking-board{padding:17px 11px 20px!important}
  .calendar-panel.memo-sheet.calendar-note{padding:36px 15px 34px!important}
  .form-card.memo-sheet.booking-form-paper{padding:35px 19px!important}
  .booking-summary-panel.memo-sheet{padding:38px 26px!important}
  .map-frame.memo-sheet.map-note{padding:35px 25px!important}
  .pricing-panel.memo-sheet{padding:37px 18px!important}
  .booking-step-paper.memo-sheet{padding:32px 10px 23px!important}
  .detail-copy .paper-content{padding:37px 24px!important}
}

@media(max-width:650px){
  .booking-form-paper .booking-form-full{grid-template-columns:1fr!important}
  .booking-form-paper .form-row{min-width:0}
  .booking-form-paper .form-row.full{grid-column:1/-1}
  .booking-form-paper .time-controls{grid-template-columns:1fr!important}
  .booking-form-paper .form-row :is(input,select){min-width:0}
}


/* =====================================================================
   GHOSTKEY / CASE FILE V4 : FULL SITE TORN-PARCHMENT IDENTITY
   CSS-rendered, editable: not a static image of the form or theme copy.
   ===================================================================== */
:root{--case-ink:#241410;--case-blood:#a30e1b;--case-muted:#654438}
:is(.memo-sheet,.paper-content,.poster-box){
  --case-paper:url('../assets/evidence-paper-landscape.png');
  color:var(--case-ink)!important;
}
:is(.memo-sheet,.paper-content,.poster-box)::before,
.map-frame.memo-sheet.map-note::before{
  background-image:var(--case-paper)!important;
  filter:drop-shadow(0 20px 15px #000b)!important;
  inset:-9px!important;
}
/* Stronger than generic tags: all evidence headings use a ripped black-ink strip */
.case-black-label{
  display:inline-block!important;width:max-content;max-width:100%;
  margin:0 0 18px!important;padding:8px 15px!important;
  color:#f4e2cc!important;background:#221512!important;
  font:900 clamp(11px,.9vw,14px)/1.3 'Noto Sans KR',monospace!important;
  letter-spacing:.12em!important;text-transform:uppercase;
  transform:rotate(-1.2deg);
  clip-path:polygon(0 15%,7% 2%,21% 6%,33% 0,45% 7%,60% 2%,77% 7%,91% 0,100% 12%,98% 88%,82% 94%,71% 100%,51% 96%,31% 100%,13% 94%,0 88%);
  border:0!important;
  text-shadow:none!important;
}
.case-black-label::first-letter{color:#de2e35}
/* Real paper takes precedence even when an older page background was assigned. */
.feature-intro-note,.detail-copy .paper-content,.case-report{--case-paper:url('../assets/evidence-paper-landscape.png')!important}
.info-grid .paper-content,.booking-step-paper.memo-sheet,.admin-time-settings.memo-sheet{--case-paper:url('../assets/evidence-paper-wide.png')!important}
.location-note{--case-paper:url('../assets/evidence-paper-portrait.png')!important}
.map-frame.memo-sheet.map-note{--case-paper:url('../assets/evidence-paper-landscape.png')!important}
.calendar-panel.memo-sheet.calendar-note{--case-paper:url('../assets/evidence-paper-portrait.png')!important}
.form-card.memo-sheet.booking-form-paper{--case-paper:url('../assets/evidence-paper-long.png')!important}
.booking-summary-panel.memo-sheet{--case-paper:url('../assets/evidence-paper-portrait.png')!important}
.pricing-panel.memo-sheet{--case-paper:url('../assets/evidence-paper-landscape.png')!important}
/* Case file story and informational panels. */
.case-intro{padding:clamp(42px,4vw,64px)!important}
.case-intro h2,.case-location-report h2,.case-detail-report h2{
  font-family:'Black Han Sans','Noto Sans KR',sans-serif!important;
  font-weight:900!important;letter-spacing:-.065em!important;
  color:#1e1110!important;line-height:1.15!important;
  border-bottom:4px solid #9a1e25; padding-bottom:13px;
}
.case-intro p{font-size:clamp(13px,1.1vw,15px)!important;line-height:1.9!important}
.case-step h2{font-family:'Black Han Sans','Noto Sans KR',sans-serif!important;font-size:clamp(26px,2.5vw,41px)!important;letter-spacing:-.04em!important}
.case-step p{font-size:clamp(12px,.98vw,14px)!important;line-height:1.8!important}
.case-detail-report h2{font-size:clamp(30px,3.5vw,54px)!important}
.case-detail-report .theme-meta{margin:16px 0 25px!important}
.case-detail-report .theme-meta span{padding:9px 13px!important}
.case-detail-report>p{font-size:clamp(13px,1.1vw,16px)!important;line-height:1.9!important}
.case-location-report .case-black-label{margin-bottom:24px!important}
/* Theme archive: four detailed interactive paper case files, matching supplied mockups. */
.theme-list{display:grid!important;gap:clamp(46px,6vw,94px)!important}
.theme-feature.case-file{
  display:grid!important;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr)!important;
  align-items:center!important;column-gap:0!important;row-gap:0!important;
  padding:0 8px!important;margin:0!important;background:transparent!important;
  border:0!important;transform:none!important;overflow:visible!important;
}
.theme-feature.case-file:nth-child(even) .case-photo{grid-column:2;grid-row:1;margin-left:-25px;margin-right:0}
.theme-feature.case-file:nth-child(even) .case-report{grid-column:1;grid-row:1;margin-left:0;margin-right:-28px}
.theme-feature.case-file .case-photo{
  display:block;position:relative;z-index:1;
  width:100%;aspect-ratio:1.32;overflow:visible;
  background:url('../assets/evidence-paper-landscape.png') center/100% 100% no-repeat;
  padding:21px 25px!important;
  filter:drop-shadow(0 17px 15px #000b);
  transition:transform .2s ease;
}
.theme-feature.case-file .case-photo:hover{transform:rotate(-1.3deg) scale(1.008)!important}
.theme-feature.case-file .case-photo img{
  display:block!important;height:100%!important;width:100%!important;
  object-fit:cover!important;box-shadow:none!important;
  filter:contrast(1.13) saturate(.83)!important;
  mask-image:linear-gradient(90deg,#000 0%,#000 91%,#000a 100%);
}
.theme-feature.case-file .case-report{
  position:relative;z-index:2;min-width:0;
  margin-left:-26px!important;
  padding:clamp(40px,4vw,65px) clamp(36px,4vw,67px)!important;
}
.theme-feature.case-file .case-report h2{
  color:#1d1110!important;font-family:'Black Han Sans','Noto Sans KR',sans-serif!important;
  font-size:clamp(27px,3.1vw,52px)!important;letter-spacing:-.075em!important;
  line-height:1.18!important;margin:0 0 18px!important;
  padding-bottom:13px!important;border-bottom:4px solid #b11c25;
}
.theme-feature.case-file .case-report p{
  font-size:clamp(12px,1.02vw,15px)!important;color:#3a241d!important;
  line-height:1.85!important;margin:17px 0!important;
}
.case-tags{display:flex;flex-wrap:wrap;gap:7px 9px;margin:17px 0 22px}
.case-tag{display:inline-block;padding:6px 11px;border:0!important;
  background:#28191a!important;color:#f7e4d2!important;
  font:800 clamp(11px,.9vw,13px)/1.4 'Noto Sans KR',sans-serif!important;white-space:normal;}
.case-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.case-actions a{font:900 clamp(12px,1vw,15px)/1.4 'Noto Sans KR',sans-serif!important;padding:15px 19px;color:#fff!important;
  transition:filter .2s,transform .2s;text-align:center;
  clip-path:polygon(2% 9%,11% 0%,25% 4%,40% 0%,60% 3%,77% 0%,99% 11%,97% 94%,86% 100%,68% 96%,49% 100%,29% 96%,11% 100%,0 93%);}
.case-actions a:hover{filter:brightness(1.17);transform:translateY(-2px)}
.case-red-action{background:#a20d1b!important}
.case-dark-action{background:#24191a!important}
.theme-feature.case-file .case-quote{
  grid-column:1/-1;margin:7px 0 0;padding:17px 16px 5px;
  color:#f2dbc5;font:900 clamp(18px,2.15vw,31px)/1.6 'Noto Serif KR',serif;
  border-bottom:2px solid #8a151c;
}
.case-quote::before{content:'❝';color:#d2192b;font-size:1.75em;margin-right:13px;vertical-align:-.14em}
/* Front page booking guide as real interactive memo sheets on desktop too. */
.booking-method-art{display:none!important}
.booking-guide-section>.section-header{display:flex!important}
.booking-guide-section>.booking-steps-paper{display:grid!important}
.booking-guide-section>.booking-guide-caption{display:block!important}
.booking-steps-paper{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important}
.booking-step-paper.case-step{min-height:200px!important;padding:34px 25px!important}
.booking-step-paper.case-step .step-no{color:#9c101e;font:900 clamp(38px,4vw,67px)/1 'Black Han Sans',sans-serif}
.booking-step-paper.case-step .step-title{color:#2d1715!important;font-size:clamp(16px,1.4vw,22px)!important}
/* Interactive booking stays real input / selected calendar / calculated amount. */
.calendar-panel.memo-sheet.calendar-note .calendar-toolbar h2{font-family:'Black Han Sans','Noto Sans KR',sans-serif!important}
.booking-summary-panel.memo-sheet h3{font-family:'Black Han Sans','Noto Sans KR',sans-serif!important}
.booking-board .calendar-booking-layout{overflow:visible!important}
.booking-summary-panel .summary-price-row dd{font-weight:900!important}
.booking-form-paper input:focus,.booking-form-paper select:focus,.calendar-nav:focus-visible,.calendar-day:focus-visible{
  outline:3px solid #aa2635!important;outline-offset:2px!important;
}
.pricing-panel .pricing-table-wrap{border:2px solid #4c2925!important}
/* Responsive paper cards: preserve whole papers, don't crop any titles. */
@media(max-width:1050px){
  .theme-feature.case-file .case-report{padding:42px 33px!important}
  .booking-steps-paper{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .theme-feature.case-file .case-report h2{font-size:clamp(25px,3vw,40px)!important}
}
@media(max-width:760px){
  .theme-feature.case-file{grid-template-columns:1fr!important;gap:0!important;}
  .theme-feature.case-file .case-photo,.theme-feature.case-file:nth-child(even) .case-photo{grid-column:1!important;grid-row:1!important;margin:0!important;aspect-ratio:1.5;}
  .theme-feature.case-file .case-report,.theme-feature.case-file:nth-child(even) .case-report{grid-column:1!important;grid-row:2!important;margin:-25px 0 0!important;padding:38px 30px!important;}
  .theme-feature.case-file .case-quote{grid-column:1!important;margin-top:8px;font-size:19px!important}
  .theme-feature.case-file .case-photo img{height:100%!important}
  .case-actions{gap:8px}
}
@media(max-width:600px){
  .booking-steps-paper{grid-template-columns:1fr 1fr!important;gap:12px!important}
  .booking-step-paper.case-step{min-height:168px!important;padding:30px 15px!important}
  .case-actions a{flex:1;padding:12px 9px!important}
  .case-detail-report h2{font-size:32px!important}
  .theme-feature.case-file .case-report{padding:36px 26px!important}
  .case-tags{gap:7px}
  .case-tag{font-size:11px!important}
}
/* Final polish: no rectangular black frame surrounding the torn booking sheets. */
.booking-main-card.memo-sheet.booking-board{
  background:transparent!important;border:0!important;
  padding:0 0 12px!important;
  box-shadow:none!important;
}
.booking-main-card.memo-sheet.booking-board::before{content:none!important;display:none!important}
.booking-board>.section-header.inner{padding:0 5px 18px!important}
@media(max-width:650px){
  .booking-main-card.memo-sheet.booking-board{padding:0 0 10px!important}
}


/* GHOSTKEY V7: faithful layered red-ink, ripped-paper interactive theme */
:root{--v7-ink:#241410;--v7-red:#a10c1d;--v7-paper:#e5c2a1}
body{background-color:#070505!important}
:is(.memo-sheet,.paper-content,.poster-box){color:var(--v7-ink)!important;isolation:isolate;position:relative!important;filter:drop-shadow(0 14px 10px #000a)!important;clip-path:none!important;border:0!important;box-shadow:none!important;transform:none!important;background:transparent!important}
:is(.memo-sheet,.paper-content,.poster-box)::before,
.map-frame.memo-sheet.map-note::before{content:""!important;display:block!important;position:absolute!important;z-index:-1!important;inset:-3px!important;opacity:1!important;pointer-events:none!important;filter:drop-shadow(0 9px 7px #0007)!important;background-image:url('../assets/casefile-layered-landscape.png')!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:center!important}
:is(.memo-sheet,.paper-content,.poster-box)::after{pointer-events:none!important}
/* Physical sheets with individual aspect-specific paper artwork. */
:is(.feature-intro-note,.info-grid .paper-content,.booking-step-paper.memo-sheet,.map-frame.memo-sheet.map-note,.theme-feature.case-file .case-report,.detail-copy .paper-content,.admin-time-settings.memo-sheet,.pricing-panel.memo-sheet)::before{background-image:url('../assets/casefile-layered-landscape.png')!important}
:is(.location-note,.calendar-panel.memo-sheet.calendar-note,.booking-summary-panel.memo-sheet)::before{background-image:url('../assets/casefile-layered-portrait.png')!important}
:is(.form-card.memo-sheet.booking-form-paper)::before{background-image:url('../assets/casefile-layered-long.png')!important}
:is(.booking-step-paper.memo-sheet,.info-grid .paper-content)::before{background-image:url('../assets/casefile-layered-square.png')!important}
/* reset the old dark rectangular booking wrapper and lay out three independent sheets */
.booking-page-grid{display:grid!important;grid-template-columns:minmax(0,.98fr) minmax(0,1.07fr) minmax(0,.97fr)!important;gap:12px!important;align-items:start!important;overflow:visible!important}
.booking-main-card.memo-sheet.booking-board{display:contents!important;filter:none!important;background:transparent!important;box-shadow:none!important;border:0!important}
.booking-main-card.memo-sheet.booking-board::before,.booking-main-card.memo-sheet.booking-board::after{content:none!important;display:none!important}
.booking-board>.section-header.inner{grid-column:1 / -1!important;grid-row:1!important;margin-bottom:3px!important;padding:0 0 18px!important;border-bottom:1px solid #6a2727!important}
.booking-board>.section-header .section-type-title{color:#f4e8d5!important;font-size:clamp(30px,3.2vw,48px)!important}
.booking-board>.section-header .section-kicker{color:#ceb7aa!important}
.calendar-booking-layout{display:contents!important}
.calendar-panel.memo-sheet.calendar-note{grid-column:1!important;grid-row:2!important;min-width:0!important;min-height:600px!important;padding:54px 27px 65px!important;position:relative!important;background:transparent!important}
.form-card.memo-sheet.booking-form-paper{grid-column:2!important;grid-row:2!important;min-width:0!important;min-height:680px!important;padding:47px 31px 62px!important;background:transparent!important}
.booking-summary-panel.memo-sheet{grid-column:3!important;grid-row:2!important;min-width:0!important;position:relative!important;top:0!important;padding:58px 32px 69px!important;background:transparent!important}
/* Brushstroke case file labels - not rectangular badges. */
.case-black-label,.calendar-ink-title,.form-card .form-row>label,.form-card .time-presets>label,.form-card .time-custom>label,
.booking-summary-panel.memo-sheet>h3{background:#231614!important;color:#f8e9d8!important;box-shadow:1px 3px 0 #0002!important;display:inline-block!important;position:relative!important;padding:8px 13px!important;transform:rotate(-1.15deg)!important;line-height:1.3!important;font-family:'Black Han Sans','Noto Sans KR',sans-serif!important;font-size:clamp(12px,1.15vw,17px)!important;font-weight:900!important;clip-path:polygon(0% 8%,7% 1%,20% 5%,37% 0%,58% 4%,82% 0%,100% 12%,98% 85%,88% 99%,68% 93%,44% 100%,21% 94%,0% 100%)!important;text-shadow:none!important;letter-spacing:.02em!important}
.booking-summary-panel.memo-sheet>h3{display:block!important;width:max-content;max-width:100%;font-size:clamp(22px,2vw,29px)!important;padding:11px 15px!important;margin-bottom:23px!important}
.booking-summary-panel.memo-sheet>h3 em,.calendar-ink-title em{color:#ed3b43!important;font-style:normal!important}
.form-card .form-row>label,.form-card .time-presets>label,.form-card .time-custom>label{margin:1px 0 7px!important;padding:5px 11px!important;font-size:12px!important;line-height:1.35!important;align-self:flex-start}
.form-ink-heading{margin-bottom:23px!important;display:inline-block!important}
.calendar-ink-title{font-size:clamp(15px,1.65vw,24px)!important;white-space:nowrap!important;letter-spacing:.12em!important;margin:0 0 12px!important}
/* Red painted underline accents */
.calendar-panel .calendar-toolbar h2,.case-report h2,.case-detail-report h2,.case-intro h2,.case-location-report h2,.map-note h2{border-bottom:3px solid #ae1222!important;color:#24100e!important;padding-bottom:8px!important;text-shadow:none!important}
.calendar-panel .calendar-toolbar h2{font-size:clamp(22px,2.3vw,38px)!important;white-space:nowrap!important;margin:0 0 5px!important}
.calendar-panel .calendar-toolbar{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:3px!important;margin-bottom:22px!important}
.calendar-panel .calendar-toolbar>div{min-width:0;display:grid;justify-items:center;flex:1!important}
.calendar-panel .calendar-nav{flex:none!important;cursor:pointer!important;background:#e8cba8!important;color:#311916!important;border:1px solid #936850!important;box-shadow:2px 3px 0 #6f413720!important;border-radius:1px!important;width:36px!important;height:39px!important;font-size:23px!important}
.calendar-panel .calendar-weekdays{gap:4px!important;margin-bottom:11px!important}
.calendar-panel .calendar-weekdays span{color:#281a16!important;font-size:14px!important;font-weight:900!important}
.calendar-panel .calendar-weekdays span:first-child{color:#b4101a!important}
.calendar-panel .calendar-grid{gap:4px!important}
.calendar-panel .calendar-day{min-width:0!important;min-height:37px!important;border:1px solid #b48c6a!important;background:#f1dbc0e0!important;box-shadow:1px 2px 2px #432c281c!important;color:#20110e!important;font-size:clamp(12px,1.1vw,18px)!important;font-weight:900!important;cursor:pointer!important}
.calendar-panel .calendar-day.is-selected{background:#9b0d1c!important;color:#fff!important;border-color:#881223!important;box-shadow:1px 3px 0 #5217206b!important}
.calendar-panel .calendar-day.is-today:not(.is-selected){outline:2px solid #9e131b!important;outline-offset:-2px}
.calendar-panel .calendar-day.is-muted{opacity:.35!important}
/* Aged individual parchment form fields retain focus / native picker. */
.form-card .booking-form-full{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px 9px!important}
.form-card .booking-form-full .form-row{gap:1px!important;min-width:0!important}
.form-card .booking-form-full .form-row.full{grid-column:1 / -1!important}
.form-card .form-row input,.form-card .form-row select,.form-card .time-controls input,.form-card .time-controls select{background:linear-gradient(145deg,#f8e4c9e8,#e8c5a6e8)!important;border:1px solid #986e59!important;box-shadow:inset 0 1px 3px #4220161d,2px 2px 1px #4425142b!important;padding:11px 9px!important;color:#25120f!important;min-width:0!important;width:100%!important;max-width:100%!important;min-height:40px!important;font-size:13px!important}
.form-card .form-row input::placeholder{color:#6c5448!important}
.form-card .time-controls{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
.form-card .time-controls .time-hint{grid-column:1/-1!important;line-height:1.5!important;font-size:10px!important}
.form-card .pricing-hint{font-size:10px!important;line-height:1.45!important;margin:0!important}
.form-card .form-row .blood-button{background:#ad1021!important;border:0!important;color:white!important;min-height:46px!important;cursor:pointer!important;clip-path:polygon(2% 8%,11% 0%,29% 5%,52% 1%,74% 5%,100% 2%,98% 91%,84% 100%,56% 96%,24% 100%,0 94%)!important;box-shadow:none!important;font-weight:900!important}
.booking-summary-panel.memo-sheet .summary-list div{padding:13px 0!important;gap:14px!important;border-bottom:1px solid #a98269!important;display:flex!important;align-items:baseline!important}
.booking-summary-panel.memo-sheet .summary-list dt{font-size:13px!important;color:#85101e!important;font-weight:900!important}
.booking-summary-panel.memo-sheet .summary-list dd{font-size:13px!important;color:#251410!important;word-break:keep-all!important;text-align:right!important}
.booking-summary-panel.memo-sheet .summary-list .summary-price-row{margin:9px 0!important;padding:16px 0!important}
.booking-summary-panel.memo-sheet .summary-price-row dd{font-size:clamp(20px,2.1vw,32px)!important;color:#920d1b!important;text-decoration:underline;text-decoration-color:#af0c18;text-underline-offset:5px}
.booking-summary-panel.memo-sheet>p.muted{margin-top:21px!important;color:#5e4234!important;font-size:11px!important}
/* Main home '4 steps' as four large pinned case files with FILE number. */
.booking-steps-paper{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
.booking-steps-paper>.case-step{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;min-width:0!important;min-height:310px!important;padding:38px 24px 44px!important;text-align:left!important}
.booking-steps-paper .step-file-mark{font-size:12px!important;margin-bottom:11px!important;color:#fbe5ce!important}
.booking-steps-paper .step-no{display:block!important;font:900 clamp(23px,2.4vw,39px)/1.14 'Black Han Sans',sans-serif!important;color:#1f1411!important;letter-spacing:-.055em!important;border-bottom:3px solid #a80d1e!important;padding-bottom:8px!important;margin:0 0 14px!important;white-space:normal}
.booking-steps-paper .step-title{font-size:17px!important;font-weight:900!important;color:#7e0915!important;margin:2px 0 5px!important;line-height:1.5!important}
.booking-steps-paper small{display:block!important;font-size:12px!important;color:#50382f!important;line-height:1.55!important}
.booking-steps-paper .step-pin{display:none!important}
/* All stories and location notebooks unify with same aged layers and black brush markers. */
.info-grid .paper-content{padding:37px 38px!important;min-height:240px!important}
.case-report.memo-sheet{padding:54px 59px!important}
.case-report .case-black-label{font-size:13px!important}
.theme-feature.case-file .case-report h2{font-weight:900!important;font-size:clamp(25px,2.8vw,42px)!important}
.theme-feature.case-file .case-report .case-tag{background:#261718!important;color:#f6e8d5!important}
.feature-intro-note .case-black-label,.location-note .case-black-label,.map-note .case-black-label{background:#231614!important;color:#f7e8d1!important}
.location-note{padding:53px 56px!important}
.map-frame.memo-sheet.map-note{padding:46px 35px!important;min-height:340px!important}
.detail-copy .paper-content{padding:52px 48px!important}
/* Price board only booking page, aged as a single case file. */
.pricing-panel.memo-sheet{padding:52px 48px 60px!important}
.pricing-panel .section-header{margin-bottom:14px!important}
.pricing-panel .paper-heading{color:#f6eadb!important;background:#221516!important;padding:8px 23px!important}
/* High legibility while native booking functionality stays usable. */
input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #b51322!important;outline-offset:2px!important}
@media(max-width:1220px){
 .booking-page-grid{grid-template-columns:1fr 1.08fr!important;gap:8px!important}
 .booking-summary-panel.memo-sheet{grid-column:1/-1!important;grid-row:3!important;min-height:330px!important;margin-top:12px!important;padding:50px 47px!important}
 .calendar-panel.memo-sheet.calendar-note{grid-column:1!important;grid-row:2!important}
 .form-card.memo-sheet.booking-form-paper{grid-column:2!important;grid-row:2!important}
 .booking-steps-paper{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
 .booking-page-grid{grid-template-columns:1fr!important;gap:0!important}
 .booking-board>.section-header.inner{grid-column:1!important;grid-row:1!important}
 .calendar-panel.memo-sheet.calendar-note{grid-column:1!important;grid-row:2!important;min-height:490px!important;padding:42px 32px 52px!important}
 .form-card.memo-sheet.booking-form-paper{grid-column:1!important;grid-row:3!important;min-height:670px!important;padding:45px 30px 59px!important;margin-top:8px!important}
 .booking-summary-panel.memo-sheet{grid-column:1!important;grid-row:4!important;min-height:440px!important;padding:46px 33px 57px!important;margin-top:9px!important}
 .booking-steps-paper{grid-template-columns:1fr 1fr!important;gap:5px!important}
 .booking-steps-paper>.case-step{min-height:238px!important;padding:32px 21px 36px!important}
 .booking-steps-paper .step-no{font-size:23px!important}
 .booking-steps-paper .step-title{font-size:14px!important}
 .info-grid .paper-content{padding:30px 29px!important}
 .case-report.memo-sheet{padding:44px 35px!important}
 .pricing-panel.memo-sheet{padding:42px 20px!important}
 .location-note{padding:40px 31px!important}
 .detail-copy .paper-content{padding:39px 32px!important}
}
@media(max-width:390px){
 .calendar-panel.memo-sheet.calendar-note{padding:40px 26px 49px!important}
 .form-card.memo-sheet.booking-form-paper{padding:43px 27px 55px!important}
 .calendar-panel .calendar-day{min-height:34px!important}
 .booking-steps-paper .step-title{font-size:13px!important}
 .booking-steps-paper>.case-step{padding:30px 17px 30px!important}
}


/* GHOSTKEY correction / exact existing art kept, true 4-card grid and real links */
.restored-four-themes{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;column-gap:clamp(8px,1.1vw,20px)!important;row-gap:20px!important;width:100%!important;max-width:100%!important;align-items:start!important}
.restored-theme-tile{min-width:0!important;background:transparent!important;border:0!important;box-shadow:none!important;position:relative;overflow:visible!important;filter:none!important}
.restored-theme-tile::before,.restored-theme-tile::after{display:none!important;content:none!important}
.restored-theme-poster{display:block;width:100%;aspect-ratio:4/3!important;min-width:0;overflow:visible;transition:transform .22s,filter .22s}
.restored-theme-poster img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;aspect-ratio:4/3!important;border:0!important;border-radius:0!important;background:transparent!important;clip-path:none!important;filter:drop-shadow(0 12px 8px #0009)!important;mask-image:none!important;-webkit-mask-image:none!important;box-shadow:none!important}
.restored-theme-poster:hover{transform:translateY(-5px);filter:brightness(1.08)}
.restored-theme-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:9px 6px 0}
.restored-theme-actions a{display:flex;min-height:40px;align-items:center;justify-content:center;gap:2px;padding:8px 3px;text-align:center;color:#fff;font-size:clamp(11px,.88vw,13px);font-weight:900;line-height:1.3;transition:filter .2s,transform .2s;position:relative;z-index:10}
.restored-theme-actions a:hover{filter:brightness(1.25);transform:translateY(-2px)}
.restored-theme-detail{background:#211315;border:1px solid #80515a}
.restored-theme-book{background:#9e0f20;border:1px solid #cf2b36}
.restored-booking-steps{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(9px,1.2vw,18px)!important;align-items:start!important;margin:24px 0 12px!important;width:100%!important}
.restored-booking-step{display:flex;flex-direction:column;align-items:stretch;min-width:0;text-align:center;background:transparent!important;border:0!important;box-shadow:none!important;transition:transform .2s}
.restored-booking-step img{display:block;width:100%!important;height:auto!important;aspect-ratio:351/149;object-fit:contain;mix-blend-mode:normal!important;filter:none!important;border:0!important;clip-path:none!important}
.restored-booking-step .step-description{font:800 12px/1.5 'Noto Sans KR',sans-serif;color:#cfb9ad;padding:3px 0 1px;white-space:normal}
.restored-booking-step:hover{transform:translateY(-4px)}
.restored-booking-step:hover .step-description{color:#fff}
/* Avoid an extra torn-paper frame around PRICE TABLE while keeping its red-black table. */
#pricing>.price-board-clean{position:relative;background:none!important;background-image:none!important;border:none!important;clip-path:none!important;mask:none!important;filter:none!important;box-shadow:none!important;padding:0!important;margin:0!important;transform:none!important}
#pricing>.price-board-clean::before,#pricing>.price-board-clean::after{display:none!important;content:none!important;background:none!important}
#pricing .price-board-clean .section-header{border-bottom:1px solid #82232b!important;padding:0 0 14px!important;margin-bottom:20px!important}
#pricing .price-board-clean .paper-heading{background:none!important;clip-path:none!important;filter:none!important;border:0!important;padding:0 0 0 18px!important;color:#f4ebe2!important;font-size:clamp(27px,2.7vw,38px)!important}
#pricing .price-board-clean .paper-heading::before{position:absolute;left:0;top:12%;width:4px;height:72%;background:#ae1526;content:""}
#pricing .price-board-clean .section-kicker{color:#c8a6a5!important}
#pricing .price-board-clean .pricing-table-wrap{width:100%;overflow-x:auto;filter:none!important;clip-path:none!important;border:1px solid #5a2329!important;background:#110a0c!important;box-shadow:0 15px 32px #0009!important}
#pricing .price-board-clean .pricing-table{min-width:850px}
#pricing .price-board-clean .pricing-table thead th{background:#a30e1d!important;color:#fff}
#pricing .price-board-clean .pricing-table tbody td{background:#1b1115!important;color:#eee4e2!important}
#pricing .price-board-clean .pricing-table tbody tr:nth-child(even) td{background:#120c0e!important}
#pricing .price-board-clean .pricing-table tbody td .price-lines strong{color:#fff}
/* Actual photos should not inherit textured memo-frame artwork. The textual reports stay paper. */
.original-photo-no-paper,.split-preview>img.original-photo-no-paper,.theme-detail .detail-image.original-photo-no-paper{max-width:100%!important;width:100%!important;object-fit:cover!important;object-position:center!important;aspect-ratio:16/9;border:0!important;background:transparent!important;box-shadow:none!important;clip-path:none!important;-webkit-mask-image:none!important;mask-image:none!important;filter:none!important}
/* Fix old CSS which hid the booking guide on large screens */
@media(min-width:901px){.booking-guide-section>.section-header,.booking-guide-section>.restored-booking-steps,.booking-guide-section>.booking-guide-caption{display:flex!important}.booking-guide-section>.section-header{display:flex!important}.booking-guide-section>.restored-booking-steps{display:grid!important}}
@media(max-width:930px){.restored-four-themes{grid-template-columns:repeat(2,minmax(0,1fr))!important}.restored-booking-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:480px){.shell{width:min(calc(100% - 26px),var(--max))}.restored-four-themes{column-gap:5px!important;row-gap:12px!important}.restored-theme-actions{gap:4px;margin:6px 0 0}.restored-theme-actions a{font-size:11px;min-height:36px;padding:6px 1px}.restored-booking-steps{column-gap:6px!important;row-gap:12px!important}.restored-booking-step .step-description{font-size:11px}}

/* Exact provided-image layout: originals are displayed unchanged. */
.screen-reader-only,.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#home-themes .restored-theme-actions{display:none!important}
#home-themes .restored-four-themes{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.original-book-guide{margin:8px auto 0;max-width:100%}
.original-book-guide img{width:100%;height:auto;display:block;object-fit:contain}
.exact-showcase{position:relative;max-width:100%;width:100%;margin:0 auto}
.exact-showcase>img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.image-hitbox{position:absolute;display:block;left:var(--hit-x);top:var(--hit-y);width:var(--hit-w);height:var(--hit-h);z-index:2;cursor:pointer;border-radius:8px;transition:background .15s}
.image-hitbox:hover{background:rgba(207,24,34,.10)}
.image-hitbox:focus-visible{outline:3px solid #ffdfb6;outline-offset:-2px;background:rgba(255,255,255,.12)}
.original-stories{display:flex;flex-direction:column;gap:36px;margin-top:16px}
.large-theme-story{width:100%;max-width:1400px;margin-inline:auto}
.about-showcase,.location-showcase,.detail-showcase{max-width:1450px}
.page-layout.shell:has(>.exact-showcase){padding-top:20px}
.full-original-booking{width:min(calc(100% - 28px),1650px)!important;max-width:1650px!important;padding-top:14px!important}
.booking-interactive{position:relative;width:100%;max-width:100%;isolation:isolate;overflow:hidden}
.original-booking-img{width:100%;height:auto;display:block;object-fit:contain}
.booking-calendar-controls,.booking-hot-form,.booking-live-summary{position:absolute;inset:0;pointer-events:none}
.booking-calendar-controls>*:not(.visually-hidden),.booking-hot-form>*:not(.visually-hidden),.booking-live-summary>*{pointer-events:auto}
.hot-prev,.hot-next,.hot-submit{position:absolute;cursor:pointer;opacity:0;background:transparent;border:0;border-radius:4px}
.hot-prev{left:4.1%;top:14.8%;width:3.8%;height:5.7%}
.hot-next{left:27.1%;top:14.8%;width:3.9%;height:5.7%}
.hot-submit{left:34.6%;top:78.7%;width:28.3%;height:8.6%}
.hot-prev:focus-visible,.hot-next:focus-visible,.hot-submit:focus-visible{opacity:1;outline:3px solid #fff4dc;outline-offset:-2px;background:#b5152533}
.live-calendar-title{position:absolute;left:7.6%;top:21.2%;width:20.5%;height:7.2%;margin:0!important;display:flex;align-items:center;justify-content:center;background:#e9c7a7!important;color:#291512!important;font-weight:900!important;font-size:clamp(15px,2.4vw,37px)!important;letter-spacing:-.04em;box-shadow:none!important;border-bottom:3px solid #8f1921!important}
.live-grid{position:absolute!important;left:3.3%;top:38.7%;width:27.2%;height:34.4%;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important;gap:1.2%!important;background:#d4b190!important;padding:0!important;border:none!important}
.live-grid .calendar-day{min-width:0!important;min-height:0!important;width:100%!important;height:100%!important;font-weight:900!important;font-size:clamp(9px,1.08vw,17px)!important;color:#261b14!important;background:#f0d8b9!important;border:1px solid #bc9b78!important;border-radius:2px!important;cursor:pointer!important;box-shadow:inset 0 1px 2px #65311d25!important}
.live-grid .calendar-day.is-selected{background:#ae1221!important;color:white!important}
.live-grid .calendar-day.is-muted{opacity:.40!important;cursor:default!important}
.hot-input{position:absolute;background:#f5dec2!important;color:#2a1916!important;border:1px solid #ac795f!important;border-radius:2px!important;box-shadow:1px 2px 3px #4a26113a!important;font-size:clamp(10px,1.1vw,18px)!important;min-width:0!important;padding:0 .9%!important;max-width:none!important;line-height:1.2!important;appearance:auto!important}
.hot-input:focus-visible{outline:2px solid #b50c23!important;outline-offset:1px}
.hot-input::placeholder{color:#745b50!important;opacity:1}
.hot-theme{left:35.7%;top:11.6%;width:27.5%;height:5.7%}
.hot-date{left:35.7%;top:23.6%;width:27.5%;height:5.5%}
.hot-quick-time{left:35.6%;top:39.1%;width:14.4%;height:5.5%}
.hot-time{left:50.7%;top:39.1%;width:12.4%;height:5.5%}
.hot-party{left:35.5%;top:52.0%;width:14%;height:5.3%}
.hot-category{left:50.1%;top:52.0%;width:13%;height:5.3%}
.hot-name{left:35.6%;top:62.5%;width:13.5%;height:5.1%}
.hot-phone{left:50.2%;top:62.5%;width:12.9%;height:5.1%}
.hot-note{left:35.5%;top:72.9%;width:27.8%;height:5.3%}
.summary-overlay{position:absolute!important;right:5.2%;width:17.8%;height:4.2%;text-align:right;display:flex;align-items:center;justify-content:flex-end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#e9c3a3;color:#1d100e!important;font-size:clamp(10px,1.16vw,18px)!important;font-weight:800;z-index:2;padding-right:.2%;border-radius:1px}
.sum-theme{top:22.9%}.sum-date{top:29.3%}.sum-time{top:36.1%}.sum-party{top:42.0%}.sum-category{top:48.2%}.sum-price{top:56.7%;height:6.2%;font-size:clamp(14px,2.0vw,32px)!important;color:#960e1a!important}.sum-name{top:67.9%}.sum-phone{top:74.6%}
.booking-result{max-width:1100px;margin:8px auto 16px!important}
.booking-local-notice{color:#cbb9b0;text-align:center;font-size:13px;margin:18px 0 35px}
.admin-local-warning{background:#31181c;border-left:3px solid #c02a37;color:#fff1e5;padding:16px 20px;line-height:1.6;margin:0 0 22px}
.admin-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important}
.footer-admin-corner,.footer-admin{color:#d9c5bc!important;text-decoration:underline;text-underline-offset:4px}
/* On narrow screens the reference artwork remains intact, but working controls reflow for tapping. */
@media(max-width:850px){
 #home-themes .restored-four-themes{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .original-stories{gap:16px}.full-original-booking{width:min(calc(100% - 22px),650px)!important}
 .original-booking-img{width:100%;height:auto;position:relative;opacity:.65;filter:brightness(.5)}
 .booking-interactive{background:#120b0c;border:1px solid #6d2932;padding:18px 15px;overflow:visible;display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
 .original-booking-img{display:none}
 .booking-calendar-controls,.booking-hot-form,.booking-live-summary{position:relative;inset:auto;pointer-events:auto;width:100%;border:18px solid transparent;border-image-source:url('../assets/casefile-layered-portrait.png');border-image-slice:80 fill;border-image-width:22px;border-image-repeat:stretch;background:#dbc09e;color:#201413;padding:17px 12px;box-shadow:0 12px 18px #0007;display:block}
 .booking-calendar-controls{min-height:362px;padding-top:64px}
 .hot-prev,.hot-next{opacity:1;position:absolute;top:17px;width:38px;height:36px;background:#9e1827;border:1px solid #5d1420;color:white}
 .hot-prev{left:16px}.hot-next{right:16px;left:auto}
 .hot-prev::after{content:'‹';font-size:26px}.hot-next::after{content:'›';font-size:26px}
 .live-calendar-title{position:absolute;left:60px;right:60px;top:16px;width:auto;height:36px;font-size:20px!important;box-shadow:none;background:transparent!important;border-bottom:none!important}
 .live-grid{position:relative!important;left:auto;top:auto;width:100%;height:auto;grid-auto-rows:minmax(41px,1fr)!important;gap:4px!important;background:transparent!important}
 .live-grid .calendar-day{font-size:15px!important;min-height:41px!important}
 .booking-hot-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:26px}
 .booking-hot-form .hot-input{position:relative;left:auto;top:auto;width:100%;height:44px;font-size:14px!important;padding:0 10px!important}
 .booking-hot-form .hot-theme,.booking-hot-form .hot-date,.booking-hot-form .hot-note{grid-column:1/-1}
 .booking-hot-form .hot-submit{position:relative;opacity:1;left:auto;top:auto;width:100%;height:50px;grid-column:1/-1;background:#a30f22;color:#fff;font-size:17px;font-weight:900;border-radius:4px;outline:none}
 .booking-hot-form .hot-submit::after{content:'예약 신청하기 ↗'}
 .booking-live-summary{min-height:315px;padding:30px 23px}
 .booking-live-summary::before{content:'선택하신 예약 정보';font-size:23px;font-weight:900;color:#221312;display:block;margin-bottom:12px;border-bottom:2px solid #841320;padding-bottom:12px}
 .summary-overlay{position:relative!important;top:auto;right:auto;width:100%;height:auto;min-height:30px;display:flex;margin:0 0 6px;background:transparent;padding:5px 0;justify-content:space-between;font-size:14px!important;border-bottom:1px dashed #b38f74}
 .summary-overlay::before{font-weight:800;color:#8e1825;flex-shrink:0;padding-right:14px}
 .sum-theme::before{content:'테마'}.sum-date::before{content:'날짜'}.sum-time::before{content:'시간'}.sum-party::before{content:'인원'}.sum-category::before{content:'요금 구분'}.sum-price::before{content:'예상 이용요금'}.sum-name::before{content:'예약자'}.sum-phone::before{content:'연락처'}
 .sum-price{font-size:20px!important}
}
@media(max-width:480px){.booking-hot-form{grid-template-columns:1fr}.booking-hot-form>*{grid-column:1/-1!important}.image-hitbox:focus-visible{outline-width:2px}}

/* Align live values over static example text, without altering the supplied art file. */
@media(min-width:851px){
 .live-calendar-title{top:19.0%!important;height:12%!important;left:7.6%!important;width:20.5%!important;background:#e8c8a9!important;border-bottom:3px solid #9e1020!important}
 .booking-live-summary::before{content:"";position:absolute;right:4.7%;top:21.5%;height:58.7%;width:17.0%;background:linear-gradient(155deg,#ebc8a8,#ebc9ac 45%,#e0b796);opacity:1;z-index:1;border-left:1px solid #e0b99d;pointer-events:none}
 .summary-overlay{right:5.0%!important;width:16.3%!important;height:5.3%!important;border-radius:0!important;background:transparent!important;z-index:2!important;padding-right:.3%!important}
 .sum-theme{top:24.6%!important}.sum-date{top:31.4%!important}.sum-time{top:38.1%!important}.sum-party{top:44.9%!important}.sum-category{top:51.4%!important}.sum-price{top:57.6%!important;height:7%!important}.sum-name{top:65.7%!important}.sum-phone{top:72.2%!important}
}
@media(min-width:851px){
  .booking-live-summary::before{display:none!important}
  .summary-overlay{background:#e9c5a7!important;width:15.7%!important;right:4.8%!important;box-shadow:none!important}
}

@media(min-width:851px){.summary-overlay{right:3.2%!important;width:12.5%!important}.sum-price{right:3.4%!important;width:14.0%!important;background:#e9c5a7!important;border-bottom:2px solid #ad1220!important}}
