*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f5f2e9;color:#303c33;font-family:Arial,'Malgun Gothic',sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dcded2}.brand{font-family:serif;font-size:37px;font-weight:600;letter-spacing:3px;display:flex;align-items:center;gap:17px}.brand span{font:10px Arial;letter-spacing:2px}nav{display:flex;align-items:center;gap:30px;font-size:13px}.nav-book{border:1px solid #586951;border-radius:25px;padding:13px 23px}.wrap{max-width:1180px;margin:auto;padding:100px 40px}.hero{display:grid;grid-template-columns:47% 53%;min-height:760px}.hero-copy{padding:92px 10% 50px}.eyebrow{font-size:11px;letter-spacing:2px;display:block;margin-bottom:25px;font-weight:600}h1,h2{font-family:Georgia,'Batang',serif;font-weight:400;letter-spacing:-2px;line-height:1.35}h1{font-size:clamp(45px,4.8vw,73px);margin:0 0 30px}h1 em{font-style:normal;color:#64744b}p{font-size:15px;line-height:2;color:#62695f}.hero-image{position:relative;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;max-height:820px}.hero-image>span{position:absolute;bottom:28px;right:30px;color:white;font-size:13px;text-shadow:0 1px 8px #000}.text-link{display:inline-block;border-bottom:1px solid #899079;padding:12px 0;font-size:13px}.text-link span{margin-left:40px}.hero-note{font-size:9px;letter-spacing:2px;margin-top:65px}.intro{text-align:center;padding-top:120px;padding-bottom:120px}h2{font-size:clamp(31px,3.2vw,45px);margin:0 0 25px}.intro-facts{display:flex;justify-content:center;gap:35px;margin-top:35px;font-size:12px;letter-spacing:1px}.section-top{display:flex;justify-content:space-between;align-items:end}.section-top p{font-size:12px}.spaces{border-top:1px solid #d8dbcf}.space-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 26px;margin-top:25px}figure{margin:0}.wide{grid-row:span 2}.zoom{padding:0;border:0;display:block;width:100%;background:none;cursor:zoom-in;text-align:left}.space-grid img{width:100%;height:300px;object-fit:cover;display:block}.wide img{height:729px}figcaption{padding-top:18px;display:grid;gap:9px}figcaption b{font-size:14px;font-weight:500}figcaption span{font-size:12px;line-height:1.7;color:#6c7269}.guide{background:#e8ebdf}.guide-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}dl{margin:0}dl>div{display:grid;grid-template-columns:105px 1fr;padding:23px 0;border-bottom:1px solid #cdd3c2;font-size:13px;line-height:1.9}dl>div:first-child{padding-top:0}dt{font-weight:bold}dd{margin:0;color:#62695f}dd a{display:inline-block;margin-top:8px;border-bottom:1px solid}.neighborhood{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.neighborhood .small{font-size:13px}.map{position:relative;max-width:450px}.map img{width:100%;display:block;border:1px solid #e0ddce}.map span{display:block;padding:15px;background:#e8ebdf;text-align:center;font-size:12px}.fine{font-size:11px;line-height:1.8}.button{display:inline-block;background:#3a4c3e;color:#fff;padding:18px 25px;border:1px solid #3a4c3e;font-size:13px;border-radius:3px;transition:background .2s}.button:hover{background:#53664a;color:white}.outline{background:transparent;color:#3a4c3e}.booking{text-align:center;background:#e9e4d6;padding:100px 25px}.booking h2{font-size:49px}.booking .text-link{margin-top:20px}.actions{display:flex;justify-content:center;gap:12px;margin-top:27px}footer{padding:55px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:11px}.mobile-book{display:none}.skip{position:absolute;left:-999px}.skip:focus{left:20px;top:10px;background:white;padding:15px;z-index:10}dialog{border:0;background:#f5f2e9;padding:45px 12px 12px;max-width:95vw;max-height:95dvh}dialog::backdrop{background:#142319dc}dialog img{display:block;max-width:88vw;max-height:80dvh;object-fit:contain}#close{position:absolute;right:12px;top:10px;border:0;background:none;cursor:pointer;padding:6px;color:#303c33}a:focus-visible,button:focus-visible{outline:3px solid #a97a2c;outline-offset:5px}@media(max-width:700px){header{height:77px;padding:0 22px}.brand{font-size:30px;gap:9px}.brand span{font-size:8px}nav{gap:18px;font-size:12px}nav>a:nth-child(2),.nav-book{display:none}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:54px 27px 35px}.hero h1{font-size:49px;line-height:1.3}.hero h1 br:nth-child(2){display:none}.hero p{font-size:13px}.hero-note{margin-top:33px}.hero-image{height:480px;margin:0 20px}.hero-image img{object-position:center 50%}.wrap{padding:70px 25px}.intro{padding-top:85px;padding-bottom:85px}.intro p{font-size:13px}.intro-facts{gap:25px}.section-top{display:block}.space-grid{gap:30px;display:block}.space-grid figure{margin-bottom:35px}.space-grid img,.wide img{height:auto;max-height:520px;object-fit:cover}.guide-inner,.neighborhood{display:block}.guide-inner>div:first-child{margin-bottom:35px}dl>div{grid-template-columns:90px 1fr;font-size:12px}.neighborhood>.map{margin-top:35px;max-width:none}.neighborhood p{font-size:13px}.booking{padding:70px 23px}.booking h2{font-size:39px}.booking p{font-size:13px}.actions{flex-direction:column}.booking .button{width:100%}footer{padding:40px 25px 105px;display:block}footer .brand{margin-bottom:20px}footer p{line-height:2}.mobile-book{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:5;background:#f5f2e9;padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:8px;border-top:1px solid #d6daca}.mobile-book a{font-size:12px;padding:15px 13px;border:1px solid #3a4c3e;border-radius:3px;text-align:center}.mobile-book a:last-child{flex:1;background:#3a4c3e;color:white}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.logo-brand{gap:17px}.brand .logo-art{display:block;width:76px;height:82px;background:#000 url("assets/sook-logo.jpg") 50% 47% / 210% auto no-repeat;border-radius:2px;flex-shrink:0}.brand .brand-caption{font:11px/1.9 Arial,"Malgun Gothic",sans-serif;letter-spacing:1px}.keepsake{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:0}.keepsake>img{width:100%;max-height:540px;object-fit:cover}footer .logo-art{width:105px;height:113px}@media(max-width:700px){.brand .logo-art{width:57px;height:62px}.brand .brand-caption{font-size:9px}.keepsake{display:flex;flex-direction:column;gap:28px;padding-top:0;align-items:stretch}.keepsake p{font-size:13px}.keepsake>img{max-height:420px}footer .logo-art{width:90px;height:97px}}

/* Blend the supplied white-on-black logo into the warm page background. */
.brand .logo-art{filter:invert(1);mix-blend-mode:multiply;border-radius:0}

.travel{border-bottom:1px solid #d8dbcf}.travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:35px}.travel-grid article{border-top:1px solid #a9b19c;padding-top:27px}.travel-mode{font-size:11px;letter-spacing:1px;color:#657650}.travel h3{font-family:Georgia,'Batang',serif;font-size:27px;font-weight:400;margin:18px 0}.travel .small{font-size:12px}.travel-route{background:#e8ebdf;padding:25px;margin-top:40px}.travel-route b{font-size:14px}.travel-route p{font-size:13px}.travel-route span{font-size:11px;line-height:1.8;display:block;color:#62695f}.travel .fine a{text-decoration:underline}@media(max-width:700px){.travel-grid{grid-template-columns:1fr;gap:35px}.travel-grid p{font-size:13px}.travel-route{padding:20px}}

.parking{border-bottom:1px solid #d8dbcf}.parking-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:32px 0}.parking-grid img{width:100%;height:460px;object-fit:cover}.parking-notes{background:#e8ebdf;padding:30px}.parking-notes h3{font-size:17px;font-weight:500;margin:25px 0 10px}.parking-notes h3:first-child{margin-top:0}@media(max-width:700px){.parking-grid{grid-template-columns:1fr;gap:30px}.parking-grid img{height:auto;max-height:560px;object-fit:contain}.parking p{font-size:13px}.parking-notes{padding:22px}}

/* SO:OK — an inhabited house, told as a day rather than a room catalogue. */
:root{--paper:#f7f3e9;--ink:#443c30;--leaf:#58684a;--line:#d9d0bf}body{background:var(--paper);color:var(--ink)}header{height:106px;border-color:var(--line)}.wrap{max-width:1240px}.eyebrow{color:#6f7259;font-size:11px;letter-spacing:1.7px}.story-hero{grid-template-columns:36% 64%;min-height:690px;position:relative}.story-hero .hero-copy{padding:95px 9% 55px 14%;align-self:center}.story-hero h1{font-size:clamp(43px,4.5vw,68px);line-height:1.5;letter-spacing:-3px}.story-hero .hero-image{margin:25px 35px 0 0;height:660px;align-self:center}.story-hero .hero-image img{object-position:center}.story-hero .hero-note{margin-top:45px}.story-hero .hero-image>span{left:25px;right:auto;background:#51473599;padding:10px 15px;letter-spacing:.5px}.intro{padding-top:115px;padding-bottom:120px}.intro h2{line-height:1.6}.intro p{font-size:15px;line-height:2.3}.intro-facts{color:#6e715e}.day-story{background:#eeebdf;padding-bottom:65px}.day-story>.section-top{padding-bottom:15px}.day-story .section-top p{max-width:210px;line-height:1.9}.day-scene{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center;padding-top:65px;padding-bottom:65px}.day-scene.reverse{grid-template-columns:1fr 1.1fr}.day-scene.reverse .scene-photo{order:2}.scene-photo{position:relative;padding-bottom:33px}.scene-photo img{display:block;width:100%;height:560px;object-fit:cover}.day-scene:first-of-type .scene-photo img{height:430px}.photo-note{font:14px/1.7 'Batang',serif;display:block;position:absolute;bottom:0;right:0;transform:rotate(-3deg);color:#66694f}.chapter{font-size:12px;color:#7d805e;letter-spacing:1px}.scene-copy h3,.morning h3{font:400 clamp(29px,3vw,40px)/1.65 'Batang',serif;letter-spacing:-1.5px;margin:20px 0 28px}.scene-copy p{font-size:14px;line-height:2.2;margin-bottom:23px}.quiet-note{display:block;border-left:2px solid #b7b69a;padding-left:15px;font-size:11px;line-height:1.9;color:#777869;margin-top:30px}.morning{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px;align-items:center;padding-top:85px;padding-bottom:80px}.morning p{font-size:13px}.morning figure:nth-child(2){transform:rotate(-3deg)}.morning figure:nth-child(3){transform:rotate(3deg);margin-top:80px}.morning img{width:100%;height:310px;object-fit:cover;border:10px solid #f7f3e9}.morning figcaption{font-size:11px;line-height:1.7;text-align:center;color:#787566;padding-top:12px}.objects{display:grid;grid-template-columns:1.2fr 1fr .85fr;gap:55px;align-items:center;padding-top:120px;padding-bottom:110px}.objects h2{font-size:34px;line-height:1.7}.objects p{font-size:13px}.objects img{width:100%;display:block;max-height:440px;object-fit:cover}.objects .little-photo{align-self:end;margin-bottom:30px;transform:rotate(3deg)}.objects figcaption{font-size:11px;line-height:1.9;color:#797363}.host-letter{max-width:800px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding-top:85px;padding-bottom:85px}.host-letter h2{font-size:36px;line-height:1.7}.host-letter p{font-size:14px;line-height:2.4}.signature{display:block;margin-top:30px;font:15px 'Batang',serif;color:#7a715e}.room-index{padding-top:110px}.room-index h2{font-size:34px}.room-index p{font-size:13px}.room-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.room-strip img{width:100%;height:320px;display:block;object-fit:cover}.room-strip span{display:block;padding:15px 0;font-size:12px;color:#6b6d5c}.honest-guide{max-width:950px}.honest-guide h2{margin-bottom:40px}.honest-guide details{border-top:1px solid var(--line);padding:24px 0}.honest-guide details:last-child{border-bottom:1px solid var(--line)}.honest-guide summary{cursor:pointer;font-size:15px;line-height:1.7}.honest-guide details p{font-size:13px;padding:5px 20px;max-width:720px}.booking{background:#e6e6d7}.booking h2{line-height:1.6}.guide{background:#e9e8dd}.travel-route,.parking-notes{background:#edeee2}.map span{background:#edeee2}
@media(min-width:1500px){.story-hero{max-width:1600px;margin:auto}.story-hero .hero-copy{padding-left:70px}}
@media(max-width:900px) and (min-width:701px){.story-hero{grid-template-columns:42% 58%}.story-hero .hero-copy{padding-left:30px}.day-scene{gap:40px}.morning{grid-template-columns:1.3fr 1fr}.morning figure:last-child{grid-column:2}.objects{gap:25px}.scene-photo img{height:450px}}
@media(max-width:700px){header{height:84px}.story-hero{display:flex;min-height:0}.story-hero .hero-copy{padding:44px 26px 32px;align-self:stretch}.story-hero h1{font-size:45px;line-height:1.5;letter-spacing:-2px;margin-bottom:18px}.story-hero h1 br{display:block}.story-hero .hero-note{margin-top:28px}.story-hero .hero-image{margin:0 18px;height:360px;align-self:stretch}.story-hero .hero-image>span{font-size:11px;bottom:14px;left:12px;padding:8px 10px}.intro{padding:75px 24px 80px}.intro h2{font-size:29px;letter-spacing:-1.5px}.intro p{font-size:12px;line-height:2.2}.intro-facts{gap:18px;font-size:10px}.day-story{padding-bottom:20px}.day-story>.section-top{padding-top:60px}.day-story .section-top p{max-width:none;font-size:12px}.day-story .section-top h2{font-size:31px}.day-scene,.day-scene.reverse{display:flex;flex-direction:column;gap:25px;padding-top:30px;padding-bottom:50px;align-items:stretch}.day-scene.reverse .scene-photo{order:0}.scene-photo img{height:auto;max-height:490px}.day-scene:first-of-type .scene-photo img{height:290px;object-fit:cover}.photo-note{font-size:12px}.scene-copy{padding:0 4px}.scene-copy h3,.morning h3{font-size:29px;line-height:1.6;margin:16px 0 20px}.scene-copy p{font-size:13px;line-height:2.1}.chapter{font-size:11px}.quiet-note{margin-top:20px}.morning{grid-template-columns:1fr 1fr;gap:12px;padding-top:25px;padding-bottom:40px}.morning>div{grid-column:span 2;margin-bottom:22px}.morning img{height:220px;border-width:7px}.morning figure:nth-child(3){margin-top:45px}.morning figcaption{font-size:10px}.objects{grid-template-columns:1fr 1fr;gap:18px;padding:65px 25px}.objects-heading{grid-column:span 2;margin-bottom:20px}.objects h2{font-size:29px}.objects .little-photo{margin-bottom:0}.objects img{max-height:310px}.objects figcaption{font-size:10px}.host-letter{padding:60px 22px;margin:0 24px}.host-letter h2{font-size:28px}.host-letter p{font-size:12px;line-height:2.3}.room-index{padding-top:65px;padding-bottom:55px}.room-index h2{font-size:28px}.room-index p{font-size:12px}.room-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:15px;padding-bottom:15px}.room-strip>button{flex:0 0 78%;scroll-snap-align:start}.room-strip img{height:310px}.honest-guide{padding-top:65px}.honest-guide h2{font-size:29px}.honest-guide summary{font-size:13px}.honest-guide details p{padding-left:0;font-size:12px}}

.home-details{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-top:0;padding-bottom:70px}.home-details figure{margin:0}.home-details img{width:100%;height:330px;object-fit:cover}.home-details figcaption{font-size:12px;color:#6f7259;margin-top:13px;line-height:1.8}@media(max-width:700px){.home-details{gap:12px;grid-template-columns:1fr 1fr;padding-bottom:45px}.home-details figure:last-child{grid-column:span 2;width:68%;margin:12px auto 0}.home-details img{height:220px}.home-details figcaption{font-size:11px}}

/* Show the complete courtyard photo at every screen width. */
.day-scene:first-of-type .scene-photo img{height:auto;max-height:none;aspect-ratio:4/3;object-fit:contain}

.travel-photo{margin:22px 0 25px}.travel-photo img{display:block;width:100%;height:240px;object-fit:cover;object-position:center 84%}.travel-photo figcaption{font-size:12px;line-height:1.8;padding-top:10px}.travel-photo small{display:block;font-size:10px;color:#77786b}.travel-photo small a{text-decoration:underline}@media(max-width:700px){.intro-facts{flex-wrap:wrap;gap:12px 18px}.travel-photo img{height:auto;aspect-ratio:16/10;object-fit:cover}}

.taesamyo-photo img{height:auto;aspect-ratio:auto;object-fit:contain}.photo-credits{padding:0 5% 35px;color:#77786b;font-size:10px;line-height:1.8}.photo-credits>span{font-weight:600}.photo-credits p{font-size:10px;line-height:1.9;margin:6px 0}.photo-credits a{text-decoration:underline}@media(max-width:700px){footer{padding-bottom:25px}.photo-credits{padding:0 25px 110px}.taesamyo-photo img{height:auto;aspect-ratio:auto}}

/* Equal photo frames, with complete scenery preserved. */
.travel-photo .zoom{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:#eae7dd}.travel-photo img,.taesamyo-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center}.travel-photo figcaption{min-height:34px}

/* Match visible image edges without letterboxing. */
.travel-photo .zoom{aspect-ratio:909/700;background:none}.travel-photo img{object-fit:cover;object-position:center}.taesamyo-photo img{object-fit:contain}

/* Language switch: a separate, readable row at every width. */
header{height:auto;min-height:106px;display:grid;grid-template-columns:auto 1fr;column-gap:24px;padding-top:12px;padding-bottom:12px}
header>nav:not(.language-switch){justify-self:end}
.language-switch{grid-column:1/-1;justify-self:end;display:flex;gap:5px;margin-top:8px;font-size:11px;line-height:1.4}
.language-switch a{padding:7px 9px;border-radius:3px;white-space:nowrap;letter-spacing:0}
.language-switch a[aria-current=page]{background:#e4e6d8;color:#34452f;font-weight:700}
.language-switch a:hover{background:#eae8dd}
html:not([lang=ko]) body{word-break:normal;overflow-wrap:break-word}
html[lang=en] .story-hero h1{font-size:clamp(40px,4.1vw,64px);letter-spacing:-1.8px;line-height:1.25}
html[lang=en] h2,html[lang=en] h3{letter-spacing:-.8px}
html[lang=ja] body{font-family:'Yu Gothic','Meiryo',sans-serif;line-break:strict}
html[lang=zh-Hans] body{font-family:'Microsoft YaHei','PingFang SC',sans-serif;line-break:strict}
html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:-.5px}
html[lang=zh-Hans] h1,html[lang=zh-Hans] h2,html[lang=zh-Hans] h3{font-family:'Songti SC','SimSun',serif;letter-spacing:0}
html:not([lang=ko]) .intro p{max-width:760px;margin-left:auto;margin-right:auto}
html:not([lang=ko]) .brand-caption{max-width:160px;letter-spacing:.3px}
html:not([lang=ko]) .scene-photo>figure{margin:0}
html:not([lang=ko]) .guide-inner{gap:45px}
html:not([lang=ko]) dl>div{grid-template-columns:110px 1fr;gap:12px}
html:not([lang=ko]) .photo-note{position:static;text-align:right;margin-top:12px;transform:none}
html:not([lang=ko]) .scene-photo{padding-bottom:0}
@media(max-width:900px){header{column-gap:12px}header>nav:not(.language-switch){gap:16px;font-size:12px}.brand .brand-caption{font-size:9px}}
@media(max-width:700px){header{padding:12px 22px 10px;min-height:118px;grid-template-columns:1fr auto;row-gap:2px}header>nav:not(.language-switch){display:none}.language-switch{grid-column:1/-1;justify-self:end;margin-top:0;font-size:11px;gap:6px}.language-switch a{display:block!important;padding:8px}.brand .logo-art{width:48px;height:52px}.brand .brand-caption{font-size:10px}html{scroll-padding-top:130px}html[lang=en] .story-hero h1{font-size:43px}html:not([lang=ko]) .story-hero h1{overflow-wrap:normal}html:not([lang=ko]) .intro p{font-size:14px}html:not([lang=ko]) .scene-copy p,html:not([lang=ko]) .host-letter p{font-size:14px}html:not([lang=ko]) dl>div{grid-template-columns:1fr;gap:7px;font-size:13px}html:not([lang=ko]) .intro-facts{gap:12px}html:not([lang=ko]) .mobile-book a{font-size:11px;padding:13px 9px}html:not([lang=ko]) .mobile-book a:first-child{max-width:43%}html:not([lang=ko]) .hero-image>span{right:12px}html:not([lang=ko]) .booking h2{font-size:34px}}

@media(max-width:700px){html[lang=ja] .story-hero h1,html[lang=zh-Hans] .story-hero h1{font-size:32px;line-height:1.65}}
